Thursday, December 15, 2016

Bypass SQLi menggunakan Base64 dan Null Comments

Yos Kali ini saya ingin berbagi pengalaman saya pas pada saat melakukan SQLi yg di bypass dengan Base64.

Alat = Hack Bar Mod atau bisa download di sini

Pada awalnya saya merasa kebingungan pada salah satu website di url dia memiliki id=MTc= knapa berbentuk seperti itu ? knapa tidak angka? setlah berfikir sejenak saya berfikir kalo itu seperti encode Base64 dan benar saja setlah saya encodinng id=MTc= menjadi id=17.

Seblumnya saya ingin menjelaskan sedikit tentang apa itu Base64. Base64 adalah kode yang disusun oleh 64 karakter, dimana karakternya ( berdasarkan : RFC 1421 ) terdiri dari ( A-Z, a-z, 0-9, +, /)  atau “ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/”. Tapi ada satu karater tambahan yaitu “=”, yang fungsinya untuk menggenapkan atau istilahnya sebagai pengisi pad.

Oke langsung saja ke pokok permsalhan yang pernah saya hadapi.
Di sini saya mempunyai sebuah target yaitu:
http://www.kecbojongkabpekalongan.com/media.php?module=detail_kuliner&id=MTc=



Di situ kita bisa lihat urlnya seperti yg tadi saya jelaskan di atas.
Lalu bagaimana cara mengetahui kalo web tersebut vuln ?
dan bagai mana cara meng - encodingnya hanya bermodal HackbarMod saja ?

Di sini saya akan menjawabnya.

Hal pertama yang saya lakukan yaitu meng - encode Base64 nya terdahulu sehingga menjadi seperti ini :

Seblom di Encode


Sesudah di Encode maka muncul lah nilai sebnarnya

Selanjutnya saya memberi injek point kepada angka 17 tersebut dan begini hasilnya.

  Injek Point seblom di ubah menjadi Base64

  Injek point setelah di ubah menjadi Base64
Dari situ kita bisa lihat perbedaanya dimna pada saat web yg stringya blom di ubah menjadi Base64 dan sesudah di ubah menjadi Base64.
Pada saat blom di ubah menjadi Base64 web seketika gambar dan tulisanya menghilang begitu saja.
Sedangkan sesudah di ubah menjadi Base64 web tersebut menampilkan pesan error yaitu :
"Fatal error: Call to a member function fetch() on a non-object in /home/u835814083/public_html/modul/wisata_kuliner/wisata_konten.php on line 3".Dari situ kita bisa mengetahui bahawa web tersebut hanya menerima string yang sudah di Encrypt menjadi Base64 saja.

Selanjutanya kita mencoba memberi byte +--+ , --+ , --, --+- , %20 , %60, ; dan lain - lain.
kita lihat hasilnya :

Hasil dari pemberian cooments --+
Ketika saya memberi comments --+ , +--+ , --+- , %20 , %60 masih tetap menampilkan sebuah pesan error yang sama.

Sekrang saya ingin mencoba membri Byte ;00 yg seblomnya sudah saya bahas, tentunya Byte yg sudah di Encrypt menjadi Base64.


Kita bisa lihat webnya gambar dan tulisan beritanya kembali seperti semula.
selanjutnya kita beri order by dan jangn lupa order by harus di ubah juga menjadi Base64 .

id=17'order by 1; menjadi id=MTcnb3JkZXIgYnkgMTslMDA= ( Tidak muncul error )
id=17'order by 2; menjadi id=MTcnb3JkZXIgYnkgMjslMDA= ( Tidak muncul error )
dan seterusnya, di sini saya menemukan error di bagian column 8

Jika sudah mengetahui Column yg error berada di nomer berapanya kita tinggal ke tahap selanjutnya yaitu pemberian union all select .
id=-17' UNION ALL SELECT+1,2,3,4,5,6,7; menjadi LTE3JyBVTklPTiBBTEwgU0VMRUNUKzEsMiwzLDQsNSw2LDc7JTAw .
 
Dan taadaaa Muncul Lah angka togelnya :D

selanjutanya kita Tinggal melakukan DIOS saja
di sini saya pilih angka 2 untuk di lakukan DIOS dan ini hasilnya



Sekian tutorial dari saya tentang bagaimana Bypass SQLi menggunakan Base64 dan Null Comments

No comments:

Post a Comment

 
Cool Blue Outer Glow Pointer