如今,从小型餐厅到大型商超,从小型企业到大型联邦机构,网络攻击者总在无时不刻地寻找着窥探以及获取目标用户个人身份信息(PII)的隐蔽机会。无论是Facebook还是Erimax(译者注:一家提供合同承包解决方案的公司)的安全系统,任何一个微小的漏洞、或是细微的系统缺陷,都会让他们在财务和声誉上蒙受损失。
可见,安全事件随时都可能在企业系统中发生,我们应当对于网络安全存有敬畏之心。毫不夸张地说:我们需要具有“筑起万里长堤抵御百年一遇海啸”的态度。因此,我们需要通过Web安全测试工具,主动检测应用程序的漏洞、并在网站服务免受恶意攻击方面发挥有效的作用。
通常,在评估网站的安全态势方面,我们会用到两种有效的方法,它们分别是漏洞评估和渗透测试。下面,我们来看看安全测试人员常用的十种优秀的开源工具:
1. NetSparker
作为一款一站式的工具,NetSparker能够满足绝大多数网络的安全需求。它既可以被用在宿主机上,又可以被作为自托管解决方案的一部分。该平台能够非常容易地完全集成到,现有的任何一种测试环境或开发环境中。通过使用专利技术,即:基于证据的扫描(Proof-Based-Scanning),NetSparker能够自动化地识别各种漏洞,并通过验证假阳性(false positive),来削减安全人员花费在二次审验上的大量时间。
2. ImmuniWeb
作为一款“下一代安全平台”,ImmuniWeb采用了人工智能来实现各项安全测试。安全测试团队、开发人员、首席信息安全官(CISOs)、甚至是首席信息官(CIO)们都可以利用它所提供的AI技术,来开展各种平台级别的渗透测试。同时,用户只需单击其虚拟的补丁系统,便可实现对于目标平台的合规性持续监测。另外,ImmuniWeb拥有专有的多层应用安全测试(Multilayer Application Security Testing)技术,它可以对网站的合规性、服务器安全的加固程度、以及隐私保护态势等方面提供检查。
3. Vega
它是一款采用Java编写而成的免费、开源的漏洞扫描与测试工具。Vega带有针对OS X、Linux和Windows平台的GUI。作为一款自动化的扫描工具,它能够通过网站爬虫,来进行快速的扫描测试。Vega的拦截代理功能能够通过观察与监控客户端与服务器之间的通信,来辅助安全人员进行战术上的检查。Vega能够检测的Web应用漏洞包括:盲SQL注入、Shell注入、反射与存储跨站点的脚本等。由于它的各种检测模块都是由JavaScript编写而成,因此在各种API需要之时,用户可以自行创建不同新的攻击模块。
4. Wapiti
Wapiti是一种命令行式的应用程序,它通过采用爬取网页的方式,来检测是否存在被注入的数据脚本或表单。Wapiti可以通过执行黑盒扫描、以及在检测到的脚本中注入有效载荷,来发现目标系统的漏洞。通过支持HTTP的GET和POST攻击方法,该工具能够生成各种格式的脆弱性报告,并提供不同级别的定制内容。Wapiti能够检测出诸如:文件泄露、数据库注入、文件包含、跨站点脚本(XSS)、.htaccess配置错误等漏洞。同时,它能够区分永久性和反射性的XSS漏洞,并会在发现了异常后及时触发警报。
5. Google Nogotofail
Nogotofail是针对网络流量的安全性测试工具。它能够检查已知的TLS/SSL漏洞、以及那些被错误配置的应用程序。Nogotofail提供了一套灵活、可扩展的扫描、识别、以及修复SSL/TLS弱连接的方法,可以被用于检查目标网站是否容易受到各种中间人(MiTM)的攻击。此外,它可以被设置为路由器、VPN服务器、以及代理服务器,被用在Android、IOS、Linux、Windows、Chrome、OS、OSX、以及连接到互联网的任何其他设备上。
6. Acunetix
Acunetix及其漏洞扫描器,是优秀的自动化Web应用安全测试工具。Acunetix漏洞扫描仪分别通过AcuSensor和DeepScan实现了创新性的黑盒扫描和单页面应用(SPA)的爬取。具有多线程的DeepScan,能够在WordPress安装过程中不间断地爬取、并深度地扫描上千种漏洞。其登录序列记录器(Login Sequence Recorder)能够扫描各种密码保护字段,而内置的漏洞管理系统则有助于生成相关的技术与合规报告。
7. W3af
W3af是一个Web应用审计和攻击框架,它能够有效地抵御超过200种漏洞。通过识别诸如SQL注入、跨站点脚本、可猜测的证书、未处理的应用程序错误、以及PHP配置错误等漏洞,它能够有效地减少网站对于各种恶意攻击因素的暴露面。W3af自带有以图形和控制台为基础的接口,能够有效地保证用户在不到五次点击之内,审核Web应用程序的安全性。用户常用它来发送单个HTTP请求、以及多个集群的HTTP响应。此外,它也可以采用身份验证模块,对受保护的网站进行扫描,进而将输出结果记录到相应的控制台、文件、甚至是通过电子邮件予以发送。
8. SQLMap
作为一种渗透测试工具,SQLMap通过其检测引擎,来自动识别和“利用”与SQL注入相关的缺陷。由于自带有广泛的数据库管理系统、以及SQL注入技术,SQLMap能够自动识别基于哈希的密码,并能够通过安全编排应对基于字典的攻击。由于支持七个级别的冗长SQL语句,它为每一种查询都提供了ETA支持,并且为用户的切换带来了细粒度的灵活性。它的数据库指纹识别和枚举特征,能够有效地简化渗透测试的运行过程。
9. ZED Attack Proxy (ZAP)
由全球数位志愿者小伙伴,针对开放式Web应用安全项目(OWASP)开发和维护的ZAP,是一款免费且开源的渗透测试工具。ZAP可在Windows、UNIX、Linux、以及Macintosh平台上,开展自动化和手动类型的安全测试。作为测试人员在浏览器与Web应用之间的“中间人代理”,它可以被用来拦截或调整相互发送的消息。除了传统的测试功能之外,它还具有Ajax蜘蛛、Fuzzer、Web套接字支持、以及基于REST的API等特性。
10. BeEF (Browser Exploitation Framework)
BeEF是浏览器开发框架的缩写,它能够通过浏览器的固有漏洞,来检测Web应用的自身弱点。它使用客户端的攻击向量,来验证应用程序的安全性。它能够发送诸如重定向、更改URL、生成对话框等浏览器命令。BeEF对常规的网络边界和客户端系统进行了扩展,能够分析目标系统中Web浏览器所处的安全态势。
原文标题:10 Open-Source Security Testing Tools For Your Website,作者:Hiren Tanna