【发布时间】:2015-12-10 15:01:54
【问题描述】:
我有一个小型应用程序,有一个字段可以写一个数字并提交,页面请求发送到服务器,我得到响应或没有响应(根据参数)
现在我检查了 sql 注入字段,发现它是可注入的,这对我来说很好,因为我处于测试模式。
这是结果,现在我如何验证这些字段实际上是可注入的,我尝试复制该字段中的有效负载并提交它,但它没有工作。
带参数的查询是这样的
$q = " select * from users where id = $_REQUEST['cnic']";
// REST OF CODE FOR ITERATING QUERY
【问题讨论】:
-
您确实需要发布此漏洞已发现的弱代码。由于您没有提供足够的内容,因此无法知道如何重现此内容。
-
是的,那是 危险 错误代码,archetypical injection bug,所以扫描仪找到它是件好事。在测试注入错误时,您必须正确地对参数进行 URI 编码。在这种情况下,
page.php?id=PAYLOAD其中PAYLOAD是正确编码的注入负载。 -
自从sql注入被社区知道至少15年了。 stackoverflow.com/questions/5721786/… 你会在这里找到一个很好的解释。您还可以在此处找到非常详细的演示页面codebashing.com/sql_demo。
-
第二个应该在您的页面上输出不同的内容。
-
我怀疑这是实际代码。您会在注入的数据中收到单个
'的语法错误,该错误缺少对应的数据。
标签: php mysql security penetration-testing sqlmap