5:11 pm - Friday July 19, 2019

SQL Injection – 1

sqlinjection

Senterplus – Injeksi SQL atau yang lebih sering di kenal dengan sebutan SQL Injection adalah sebuah teknik yang menyalahgunakan sebuah celah keamanan yang terjadi pada lapisan sebuah basis data dari sebuah aplikasi, biasanya berbasis web. Celah ini terjadi ketika seorang pengguna melakukan input yang tidak di saring dengan benar, yakni berupa string yang di sertakan di dalam sebuah query SQL. Dapat di katakan ini adalah sebuah contoh dari celah keamanan yang umum dapat terjadi setiap kali sebuah skrip di sisipkan kedalam bahasa pemograman yang lain.

SQL Injection adalah merupakan salah satu jenis hacking yang di lakukan atau di tujukan pada keamanan komputer, dimana seorang penyerang memiliki akses yang penuh ke dalam basis data sebuah sistem.

Contoh Sintaks SQL Injection

1) $SQL = “select * from login where username =’$username’ and password = ‘$password’”; , {dari GET atau POST variable }
2) Kemudian isikan password dengan string ’ or ’’ = ’
3) Jika berhasil, maka SQL akan memhasilkan seperti ini = “select * from login where username = ’$username’ and password=’pass’ or ‘=′”; , { dengan melakukan perintah SQL query ini, maka hasil selection akan selalu TRUE }
4) Oleh karena itu, dari hasil diatas kita bisa melakukan inject sintax SQL (dalam hal ini OR) kedalam SQL

Implementasi SQL Injection

1) Masuk ke google atau browse yg lain
2) Masukkan salah satu keyword berikut
“inurl admin.php”
“inurl admin/login.php”
“/admin.asp”
“/login.asp”
“/logon.asp”
“/adminlogin.asp”
“/adminlogon.asp”
“/admin_login.asp”
“/admin_logon.asp”
“/admin/admin.asp”
“/admin/login.asp”
“/admin/logon.asp”
{anda bisa menambahi sendiri sesuai keinginan anda}

3) Bukalah salah satu link yang ditemukan oleh google, kemungkinan Anda akan menjumpai sebuah halaman login (user name danpassword).
4) Masukkan kode berikut :
User name : or a’=’a
Password : or a’=’a (termasuk tanda petiknya)
5) Jika berhasil, kemungkinan Anda akan masuk ke admin panel, di mana Anda bisa menambahkan berita, mengedit user yang lain, merubah about,
dan lain-lain. Jika beruntung Anda bisa mendapatkan daftar kredit card yang banyak.
6) Jika tidak berhasil, cobalah mencari link yang lain yang ditemukan oleh google.
7) Banyak variasi kode yang mungkin, antara lain :
User name : admin
Password : or a’=’a
atau bisa dimasukkan ke dua–duanya misal :
‘ or 0=0 — ; “ or 0=0 — ; or 0=0 — ; ‘ or 0=0 # ;
“ or 0=0 # ; ‘ or’x’=’x ; “ or “x”=”x ; ‘) or (‘x’=’x
8) Cobalah sampai berhasil hingga anda bisa masuk ke admin panel. Terkadang memerlukan usaha yang lebih giat untuk anda dapat melakukan SQL Injection untuk pertama kalinya.

Cara pencegahan SQL Injection

1) Lakukan pengecekan dan perubahan pada skrip php anda jika di dapati rentan untuk di masuki.
2) Diusahakan selalu menggunakan MySQL_escape_string pada perintah SQL Query
3) Anda dapat membatasi panjang input box (jika memungkinkan), dengan
cara membatasinya di kode program, sehingga membuat para penyerang/cracker pemula akan bingung sejenak melihat input box yang tidak bisa diinject dengan perintah yang panjang.
4) Lakukan filter pada karakter input yang dimasukkan oleh user, terutama penggunaan tanda kutip tunggal (Input Validation ‘ ).
5) Non=Aktifkan atau sembunyikan pesan error yang dikeluarkan dari perintah SQL Server yang berjalan.
6) Jika memungkinkan, usahakan menggunakan skrip enkripsi pada saat membuat pasword untuk user atau pengguna situs web anda, dalam hal ini anda dapat menggunakan enkripsi MD5.
7) Pergunakan framework untuk meminimalisir tindakan pembacaan skrip anda oleh pihak luar.

Filed in: Kuliah

No comments yet.

Leave a Reply