Slamat Datang di Blog Saya....!!!

Sabtu, 29 Mei 2010

SQL Injection dan cara mencegahnya


SQL Injection adalah sebuah teknik yang menyalahgunakan sebuah celah keamanan yang terjadi dalam lapisan basis data sebuah aplikasi. Celah ini terjadi ketika masukan pengguna tidak disaring secara benar dari karakter-karakter pelolos bentukan string yang diimbuhkan dalam pernyataan SQL atau masukan pengguna tidak bertipe kuat dan karenanya dijalankan tidak sesuai harapan. Ini sebenarnya adalah sebuah contoh dari sebuah kategori celah keamanan yang lebih umum yang dapat terjadi setiap kali sebuah bahasa pemrograman atau skrip diimbuhkan di dalam bahasa yang lain.
Pengertian SQL Injection
1)      SQL injection adalah sebuah aksi hacking yang dilakukan di aplikasi client dengan cara memodifikasi perintah SQL yang ada di memori aplikasi client.
2)      SQL Injection merupakan teknik mengeksploitasi web aplikasi yang didalamnya menggunakan database untuk penyimpanan data.
                        Sebab terjadinya SQL Injection
1)      Tidak adanya penanganan terhadap karakter – karakter tanda petik satu ’ dan juga karakter double minus -- yang menyebabkan suatu aplikasi dapat disisipi dengan perintah SQL.
2)      Sehingga seorang Hacker menyisipkan perintah SQL kedalam suatu parameter maupun suatu form.

                        Bug SQL Injection berbahaya ?
1)      Teknik ini memungkinkan seseorang dapat login kedalam sistem tanpa harus memiliki account.
2)      Selain itu SQL injection juga memungkinkan seseorang merubah, menghapus, maupun menambahkan data–data yang berada didalam database.
3)      Bahkan yang lebih berbahaya lagi yaitu mematikan database itu sendiri, sehingga tidak bisa memberi layanan kepada web server. 

            Cara pencegahan SQL INJECTION 
1)      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. 
2)      Filter input yang dimasukkan oleh user, terutama penggunaan tanda kutip tunggal (Input Validation).
3)      Matikan atau sembunyikan pesan-pesan error yang keluar dari SQL Server yang berjalan. 
4)      Matikan fasilitas-fasilitas standar seperti Stored Procedures, Extended Stored Procedures jika memungkinkan.
 5)      Ubah "Startup and run SQL Server" menggunakan low privilege user di SQL Server Security tab. 

 

Tidak ada komentar:

Posting Komentar