Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Injeksi SQL di ADOdb dan keamanan situs web umum

Serangan injeksi SQL terjadi ketika masukan pengguna dikodekan dengan tidak benar. Biasanya, input pengguna adalah beberapa data yang dikirim pengguna dengan kuerinya, yaitu nilai dalam $_GET , $_POST , $_COOKIE , $_REQUEST , atau $_SERVER array. Namun, masukan pengguna juga dapat berasal dari berbagai sumber lain, seperti soket, situs web jarak jauh, file, dll. Oleh karena itu, Anda harus benar-benar memperlakukan semuanya kecuali konstanta (seperti 'foobar' ) sebagai masukan pengguna .

Dalam kode yang Anda posting, mysql_real_escape_string digunakan untuk mengkodekan (=melarikan diri) input pengguna. Oleh karena itu, kode tersebut benar, yaitu tidak mengizinkan serangan injeksi SQL apa pun.

Perhatikan bahwa sangat mudah untuk melupakan panggilan ke mysql_real_escape_string - dan satu kali sudah cukup untuk penyerang yang terampil! Oleh karena itu, Anda mungkin ingin menggunakan PDO modern dengan pernyataan yang disiapkan alih-alih adodb.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Di Apache Spark 2.0.0, apakah mungkin mengambil kueri dari database eksternal (daripada mengambil seluruh tabel)?

  2. TANGGAL() Contoh – MySQL

  3. MySQL DI MANA DI ()

  4. Menggunakan Penasihat Pencadangan Basis Data untuk Mengotomatiskan Tugas Pemeliharaan

  5. ROW_NUMBER di SQL – Pilih Contoh Teratas di SQL dan SQL Server