2012-03-13 76 views
22

我已经搜索并找到了一个good discussion here on SO,但它已经有几年了。如何使用脚本或程序自动测试我的网站是否存在SQL注入攻击?

有什么程序,还是有一个简单的脚本,我可以运行,以找到我的整个网站的URL中的SQL注入漏洞?

我希望运行脚本(PHP)或程序来抓取我的站点,从链接跳转到链接,尝试查找漏洞,并在发现时存储该URL,以便获得URL列表I需要修复。

这是存在吗?

+0

只要您使用一个好的库或引用所有内容,SQL注入是您最担心的问题。我会更关心XSS攻击和网络安全。 – iLLin 2012-03-13 14:38:08

+0

@iLLin我同意,但问题是,该网站已有10年历史,并且相当大 - 前几年存在很多SQL注入漏洞,我正在寻找一种轻松找到它们的方法。 – 2012-03-13 14:41:15

回答

16

是和否。首先,我将通过说我不只是发布链接,而是专业地使用所有这些工具进行安全审计,而不是作为项目开发人员而是外部资源进行安排审计。请注意,通常sqlserver注入与mysql不同。

免费工具,例如帕罗代理[爬](前面提到的),

burpsuite(前面提到的[爬行],但主动攻击需要亲):http://portswigger.net/burp/

sqlninja(SQLSERVER只)http://sqlninja.sourceforge.net/

谷歌大鼠代理:[抓取] http://code.google.com/p/ratproxy/

websecurify:[抓取] http://www.websecurify.com/

马鹿: - http://wapiti.sourceforge.net/

日高[爬,但需要的设置工作,可以专门蜘蛛用于SQLI]:[爬网,但不是SQLI ...]

是伟大的!他们可以帮助您识别问题,但由于大量的误报,需要进行大量的人员分析。商业工具可用,如:([!爬网]最好的之一)

NTOSpider:http://www.ntobjectives.com/software/ntospider

是非常昂贵的,但说话的代表将让你一段时间的免费副本(我有与他们一起完成)。他们通过在报告中提供验证链接来更快速地对结果进行排序,但是您仍然需要训练有素的眼睛和分析,因为我发现了误报。

最终,此问题的正确答案是: 您可以使用工具来帮助您确定是否存在安全漏洞(sqli)漏洞,但只有经过训练的人员才能使用这些工具验证它们。此外,只有正确的代码审查和分析才能确定应用程序(甚至是非常好的应用程序)可能会漏掉的漏洞。

工具可以帮助,但您需要人工时间和分析才能正确执行此操作。代理和请求修剪器是通过注入来触发应用程序的真正工具,并且完全是由经过培训的测试人员或具有好奇心的人的谨慎意图完成的。

0

我在我的网站测试的内容:

如果您已经登录表格例如尝试进入:

用户名字段:anytext或1 = 1'

密码字段:anypassword

如果你没有在你的代码中包含sql注入,你可以通过它登录。

感谢

+2

谢谢,但不是我在找什么。我知道如何识别单个页面上的SQL注入 - 我正在寻找一个脚本来抓取我的页面。 – 2012-03-13 15:03:51

3

Burp Scanner作品非常好寻找SQL注入以及其他各种东西。你必须为扫描仪支付300美元,但在市场上查看其他扫描仪时,这是相当便宜的。

详细说明,您要查找的是Web应用程序漏洞扫描程序。这些将抓取您的网站并将攻击媒介发送到各种参数。在我使用过的所有扫描仪中,Burp给了我最好的结果,并且表现出色。如果你正在寻找一个免费的替代品,你可以尝试Grendel Scan它有一段时间没有更新,但仍然工作得很好。尤其是免费的工具。

以下是其他一些漏洞扫描器的list。我相信你会找到满足你需求的东西。

+0

Burp是相当不错的,它不仅限于SQL注入,你可以找出你可能没有猜到的其他漏洞。有点昂贵,但完成工作。 – Aleks 2012-03-20 09:19:14

8

我有两个最喜欢的工具(均为免费):

  1. sqlmap - 你给它一个URL,它会自动扫描漏洞。如果它进入,它会给你一个SQL提示符。
  2. Paros Proxy - 这个需要一些时间来设置。您必须将浏览器配置为使用代理,然后使用您的站点(登录,导航到其他页面等)。一旦你完成了,它将分析你所做的所有请求的缓存,并显示它找到的潜在漏洞的报告。
+0

我有sqlmap,但我正在寻找的东西扫描没有我给它一个直接的URL。 Paros Proxy听起来可能是个不错的选择,尽管我仍然需要手动抓取,但至少最好是手动输入网址。 – 2012-03-25 16:18:46