gpt4 book ai didi

php - 使用 PHP multi_query 到 DROP TABLE 的 SQL 注入(inject)

转载 作者:行者123 更新时间:2023-11-29 05:59:15 25 4
gpt4 key购买 nike

我正在尝试通过 PHP 使用 SQL 注入(inject)在数据库中删除一个表。

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

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

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

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

这会关闭之前的 sql 语句,然后我用 'sql .=' 开始另一个语句,然后用 -- - 注释掉其余的语句

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

所以我不确定哪里出了问题,我是不是错误地使用了 multi_query?还是我的注入(inject)不正确?

谢谢

编辑 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

关于php - 使用 PHP multi_query 到 DROP TABLE 的 SQL 注入(inject),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46399656/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com