Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Làm cách nào để kiểm tra ví dụ chèn MySQL PHP của tôi?

Một trong những ví dụ phổ biến nhất là truy vấn này:

' or '1'='1

Nếu bạn nhập cái này làm tên người dùng và mật khẩu vào một số đầu vào đăng nhập không được bảo vệ, truy vấn sẽ thay đổi như vậy:

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

Điều này làm cho mỗi thứ mà nó tìm kiếm là đúng, vì 1 sẽ luôn bằng 1. Vấn đề với phương pháp này là nó không cho phép lựa chọn một người dùng cụ thể. Làm như vậy, bạn cần phải làm cho nó bỏ qua câu lệnh AND bằng cách bình luận nó như đã thấy trong các ví dụ khác.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để lưu trữ kết quả truy vấn MySQL trong Bảng khác?

  2. Truy vấn MySQL IN chậm khủng khiếp với truy vấn con nhưng nhanh với các giá trị rõ ràng

  3. Không thể kết nối với AWS RDS thông qua PDO

  4. Sự kiện lặp lại vào ngày trong tuần thứ n của mỗi tháng

  5. Cách xóa các ký tự hàng đầu không mong muốn khỏi chuỗi trong MySQL