- SQL injection adalah sebuah aksi hacking yang dilakukan di aplikasi
client dengan cara memodifikasi perintah SQL yang ada di memori aplikasi
client.
- SQL Injection merupakan teknik mengeksploitasi web aplikasi yang didalamnya menggunakan database untuk penyimpanan data.
Bahaya dari penggunaan SQL Injection :
- Teknik ini memungkinkan seseorang dapat login kedalam sistem tanpa harus memiliki account.
-
Selain itu SQL injection juga memungkinkan seseorang merubah,
menghapus, maupun menambahkan data–data yang berada didalam database.
- Bahkan yang lebih berbahaya lagi yaitu mematikan database itu sendiri, sehingga tidak bisa memberi layanan kepada web server.
Contoh Syntak SQL Injection :
- $SQL = “select * from login where username =’$username’ and password = ‘$password’”; , {dari GET atau POST variable }
- isikan password dengan string ’ or ’’ = ’
-
hasilnya maka SQL akan seperti ini = “select * from login where
username = ’$username’ and password=’pass’ or ‘=′”; , { dengan SQL ini
hasil selection akan selalu TRUE }
- maka kita bisa inject sintax SQL (dalam hal ini OR) kedalam SQL
Cara pencegahan SQL Injection :
- Batasi panjang input box (jika memungkinkan), dengan
cara
membatasinya di kode program, jadi si cracker pemula akan bingung
sejenak melihat input box nya gak bisa diinject dengan perintah yang
panjang.
- Filter input yang dimasukkan oleh user, terutama penggunaan tanda kutip tunggal (Input Validation).
- Matikan atau sembunyikan pesan-pesan error yang keluar dari SQL Server yang berjalan.
- Matikan fasilitas-fasilitas standar seperti Stored Procedures, Extended Stored Procedures jika memungkinkan.
- Ubah "Startup and run SQL Server" menggunakan low privilege user di SQL Server Security tab.
Sunday, 28 October 2012
Konsep Dasar SQL Injection
Subscribe to:
Post Comments (Atom)
0 komentar:
Post a Comment