By-pass Login Admin

Setelah sebelumnya saya bercerita tentang Cara Paling Gampang Nge-Hack: Pesan Error, sekarang saatnya pembuktian. Mari kita coba di sebuah aplikasi web berikut:

Tampilan Halaman Awal Aplikasi Web

Kemudian saya mencoba login dengan meng-klik link login di kanan atas..
Setelah itu mencoba memasukkan pada field username: isengajah dengan password ') HAVING 1='1

Memanfaatkan Form Login Untuk Mendapat Pesan Error

Setelah ngasal memasukkan username dan password, ada pesan error dari aplikasi web seperti yang terlihat pada gambar di bawah ini:

Pesan Error dari Aplikasi Web

Binggo! Didapatkan informasi bahwa aplikasi web memiliki table bernama ‘ANGGOTA’ dengan field-fieldnya (AGT_USERNAME, AGT_NAMA, AGT_HAKAKSES)

Dari pesan error, kalo kita pikir baik-baik sebenarnya ada informasi berharga lainnya yaitu bahwa query yang dilakukan aplikasi web untuk login adalah seperti ini:

SELECT `AGT_USERNAME`, `AGT_NAMA`, `AGT_HAKAKSES` FROM (`ANGGOTA`) WHERE `AGT_USERNAME` = ‘DISINI_INPUT_USERNAME‘ AND AGT_PASSWD =PASSWORD(‘DISINI_INPUT_PASSWORD‘)

Bagaimana kalo kita inputkan username=isengajah dengan password=') OR ('1'='1' AND AGT_HAKAKSES = 'admin

Sehingga dihasilkan query seperti dibawah ini:

SELECT `AGT_USERNAME`, `AGT_NAMA`, `AGT_HAKAKSES` FROM (`ANGGOTA`) WHERE `AGT_USERNAME` = ‘isengajah’ AND AGT_PASSWD =PASSWORD(”) OR (‘1’=’1’ AND AGT_HAKAKSES = ‘admin’)

Logika query diatas adalah mencari user yang namanya isengajah dengan password kosong ATAU 1=1 dan AGT_HAKAKSES=’admin’

Dari dua logika tersebut:
namanya isengajah dengan password kosong = FALSE //tidak ada user yang namanya isengajah…
1=1 dan AGT_HAKAKSES=’admin’ = TRUE //ya ea la 1=1

Sehingga logika query diatas adalah FALSE ATAU TRUE = TRUE //dalam komputer, false OR true = true; dan… beginilah hasilnya…

By-pass Login Admin

Kesimpulan:

  • Teknik ini namanya yah.. ya.. itu.. itu loh.. SQL Injection…
  • Bisa begitu berbahayanya pesan error yang dikeluarkan aplikasi web… "Mulut ember" kalo istilah anak G4ul-nya… Haha..
  • Ini hanya contoh.. sebagai orang yang beretika blablabla (*ah.. masa saya harus ceramah…)
  • Jika anda berhasil melakukan hal-hal yang serupa dengan ini, jangan lupa didokumentasikan dan informasikan ke administrator webnya. Bukannya malah diacak-acak pake pesan 4L4Y…

5 thoughts on “By-pass Login Admin

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.