是否在PHP中内置了URL级SQL注入保护?

时间:2017-02-24 16:24:25

标签: php mysql ajax

我正在使用AJAX并尝试发送一个多命令SQL查询,并且我正在停止,尽可能接近,在非常低的水平。

我有一个简单的PHP文件:

<?
header('Content-Type: text/xml');
print("<?xml version=\"1.0\" encoding=\"UTF-8\"?><root></root>");
?>

使用此设置,尽可能接近,发送包含以下内容的请求

  • 分号,然后是
  • 单词INSERT,后跟
  • 两个或更多字符

...将导致403 Forbidden响应。 任何的偏差都没有任何问题。所以这个:

http://my.server.com/myfile.php?x=%3BINSERTXX

...返回403错误。但所有这些:

http://my.server.com/myfile.php?x=%3CINSERTXX
http://my.server.com/myfile.php?x=%3BINSERTX
http://my.server.com/myfile.php?x=%3BINSERQXX

...通过就好了。

这是一个特定的事情(并且我整个上午都采取了缩小范围),它似乎明显面向防止SQL注入。那很好,我很感激Bobby Tables' mom的保护。*但是假设我在代码中采取了适当的预防措施,我如何通过AJAX发送多部分SQL命令?是否有一些PHP设置我需要在服务器上更改以允许这个,或者其他一些方法我可以在一个AJAX事务中发送多个INSERT命令?

谢谢!

编辑:这就是我所说的。我已将上面的确切PHP文件放在我的服务器上。请尝试以下网址:

*值得一提的是,将“INSERT”替换为“DROP”不会返回403 ...

0 个答案:

没有答案