Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 检测SQL注入的漏洞_Php_Sql_Sql Injection - Fatal编程技术网

Php 检测SQL注入的漏洞

Php 检测SQL注入的漏洞,php,sql,sql-injection,Php,Sql,Sql Injection,我读到了有关SQL注入和执行SQL注入的经典方法的文章。我也遇到过一些工具,比如Burp suite。然而,这种材料似乎已经过时了。你能给我一些关于SQL注入的好材料的建议吗?请注意,这纯粹是出于教育目的,是黑客竞赛的一部分 谢谢。您需要考虑以下两个部分: 尽可能多地查找信息。关于剧本 实际上是在利用它。 Jihnesh在谈论第一部分。在Jignesh给出的示例中,您发现脚本使用的是MySQL、关于服务器/文件的信息,并且他没有将category参数检查为int,因为他会做一些事情来处理这种情况

我读到了有关SQL注入和执行SQL注入的经典方法的文章。我也遇到过一些工具,比如Burp suite。然而,这种材料似乎已经过时了。你能给我一些关于SQL注入的好材料的建议吗?请注意,这纯粹是出于教育目的,是黑客竞赛的一部分


谢谢。

您需要考虑以下两个部分:

尽可能多地查找信息。关于剧本 实际上是在利用它。 Jihnesh在谈论第一部分。在Jignesh给出的示例中,您发现脚本使用的是MySQL、关于服务器/文件的信息,并且他没有将category参数检查为int,因为他会做一些事情来处理这种情况,而是运行了查询,预期的结果是数组-可能是空的

第一部分有很多方法,但我建议你检查一下——这是一个非常棒的程序,我用来检查我的网站

继续讨论实际的黑客行为——最基本的例子是用户:

URL: login.php | POST info: user = "admin' OR 1 -- "
$query = "SELECT * FROM users WHERE user = '{$_POST[user]}' AND password = {$_POST[pass]}";
SQL: SELECT * FROM users WHERE user = 'admin' OR 1 -- ' AND password = ''
Result: Selects all the users in the users table

您还可以查看本教程

人们很可能不会帮助您学习SQL注入,更多的人会帮助您学习如何预防它。即使是出于教育目的。始终在mysqli或PDO中使用prepared语句,那么您几乎是安全的。在跳转到PDO或其他东西之前,先学习基础知识。如果基本操作出错,PDO/mysqli无法保护您免受SQL注入的影响。