Mình có câu query:
Code:
$sql = "select * from customers where id =".$_GET['id'];
Mình chạy link sau tới trang test
http://localhost:8080/test/test1.php?id=134
Rõ ràng là có lỗi Sql Injection ở đây, mình sửa lại link trên thành:
http://localhost:8080/test/test1.php?id=134; delete from customers where id=134--
Lỗi:
Can't use foo : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '; delete from customers where id = 134--' at line 1
Xuất câu truy vấn ra:
select * from customers where id =134; delete from customers where id = 134--
Copy vào phpMyadmin thì chạy được!
Mình tìm hiểu thì biết MySQL nó chống SQL Injection nên không cho thực thi câu query kép như trên. Vấn đề của mình là thế, vậy Injection với MySQL như thế nào đây?