SQL Injection adalah salah satu kerentanan keamanan yang paling umum di web. Di sini saya akan mencoba menjelaskan secara rinci jenis kerentanan dengan contoh-contoh bugs pada PHP dan kemungkinan solusi.
Jika Anda tidak begitu yakin dengan bahasa pemrograman dan teknologi web Anda mungkin bertanya-tanya apa SQL tinggal untuk. Nah, ini merupakan singkatan dari Structured Query Language (diucapkan "sekuel"). Ini "de facto" bahasa standar untuk mengakses dan memanipulasi data dalam database.
Saat ini situs yang paling bergantung pada sebuah database (biasanya MySQL) untuk menyimpan dan mengakses data.
Contoh kami akan bentuk login yang umum terjadi. Peselancar internet melihat bentuk-bentuk Login setiap hari, Anda menempatkan username dan password dan kemudian server memeriksa kepercayaan yang Anda berikan. Ok, itu sederhana, tetapi apa yang terjadi persis di server ketika dia memeriksa mandat Anda?
Klien (atau pengguna) mengirim ke server dua string, username dan password.
Biasanya server akan memiliki database dengan tabel dimana data pengguna disimpan. Tabel ini memiliki setidaknya dua kolom, satu untuk menyimpan username dan satu untuk password. Ketika server menerima string username dan password dia akan query database untuk melihat apakah mandat yang diberikan ada yang valid. Dia akan menggunakan pernyataan SQL untuk itu yang mungkin terlihat seperti ini:
SELECT * FROM pengguna WHERE username = 'SUPPLIED_USER' DAN password = 'SUPPLIED_PASS'
Bagi Anda yang tidak akrab dengan bahasa SQL, di SQL karakter 'digunakan sebagai pembatas untuk variabel string. Di sini kita menggunakannya untuk membatasi string username dan password yang diberikan oleh pengguna.
Dalam contoh ini kita melihat bahwa username dan password yang diberikan ada yang dimasukkan ke dalam permintaan antara 'dan seluruh permintaan kemudian dieksekusi oleh mesin database. Jika permintaan mengembalikan setiap baris, maka mandat yang diberikan ada yang berlaku (pengguna yang ada dalam database dan memiliki password yang disediakan).
bersambung kehalanan selanjutnya : http://www.akmilibnu.com/2011/12/keamanan-website-part-2.html
Tidak ada komentar:
Posting Komentar