SQL 注入使用 PHP multi_query 到 DROP TABLE

SQL Injection using PHP multi_query to DROP TABLE

我正在尝试通过 PHP 使用 SQL 注入在数据库中删除 table。

PHP 代码使用以下命令向数据库提交表单和 multi_query($sql):

$sql = "INSERT INTO Student (StdNumber, FName, LName, DOB, PhoneNumber) 
VALUES ('$input1', '$input2', '$input3', '$input4', '$input5')";

所以我想,我可以 SQL 注入 input5。所以我使用:

');"; $sql .= "DROP TABLE IF EXISTS Student;";-- -

这会关闭前面的 sql 语句,然后我用 'sql .=' 开始另一个语句,然后用 -- -

注释掉其余的语句

但是 table 并没有下降。我没有在数据库的 input5 (PhoneNumber) 中看到我的注入命令,所以它成功地关闭了我相信的前一个语句。

所以我不确定哪里出了问题,我是不是用错了multi_query?还是我的注射不正确?

谢谢

编辑 1: 此外,当我提交表单时,它会接受它并在数据库中输入另一个条目。

您正在尝试操纵 php 生成的 sql,而不是 php 本身。

所以你不应该将 php 添加到你的第 5 个输入:

');"; $sql .= "DROP TABLE IF EXISTS Student;";-- -

应该是这样的:

1234567890'); DROP TABLE IF EXISTS Student; -- the rest here will be comments in sql