Nmap是一款非常流行的自动化安全测试工具。它可以在各种主流操作系统上运行,并快速扫描大型网络。它通常会检测以下信息:网络上有哪些主机可用,主机在运行什么服务,主机在运行哪些操作系统版本,使用哪种类型的数据包过滤器和防火墙,以及发动攻击之前需要的其他有用情报。此外,Nmap的说明文档也很全面,还有针对命令行和GUI(图形化操作界面)版本的众多教程,很容易上手。
主要特点
快速查询开放端口,基于可用的TCP和UDP服务分析协议、应用程序和操作系统。
拥有庞大的活跃用户群,也被大多数网络和网络安全认证计划所接受。
对使用者友好,使用命令行控件自动执行漏洞扫描或将结果导出到票证系统或安全工具中。
包含一个不断增长的检测脚本库,可用于增强网络发现和漏洞评估的功能。
可基于协议请求的端口响应进行扫描,适用于所有具有开放端口的计算机、物联网设备、网站、云系统和网络设备。
不足
没有正式的客户支持选项
使用时需要一定的经验或编程能力
并非所有选项在GUI版本中都可用
2、OpenVAS
OpenVAS是一个较全面的开源渗透测试软件。在世界各地的渗透测试专家的帮助下,它得到了不断的支持和更新,从而使其保持最新状态。OpenVAS的其他特性还包括提供未经身份验证的测试、目标扫描和web漏洞扫描。需要说明的是,OpenVAS工具的漏洞扫描能力最初是从Nessus产品派生而来,后者现在是Tenable公司的非开源商业化产品。
几乎每天都会更新威胁信息源,并定期提供产品更新和功能更新。免费版本的功能就非常全面,并在企业版本中提供更多功能和特性,同时提供客户支持。能够对终端、服务器和云等多种系统进行常见漏洞和曝光(CVE)的扫描。产品得到主流网络安全社区的支持,能够在许多不同的认证课程中教授。可以为每个漏洞提供额外的上下文信息,用于漏洞修复或攻击路径解释。
对于初学者来说专业门槛较高在同时进行多个扫描任务时,可能会导致程序崩溃一些高级扫描功能需要使用付费版本
3、ZAP
ZedAttackProxy(ZAP)是一款用户友好的渗透测试工具,能找出网络应用中的漏洞。它不仅提供自动化扫描器,也为想要手动查找漏洞的用户提供了一套工具。ZAP通常预装在KaliLinux上,它能够将自身置于测试人员的浏览器和Web应用程序之间,拦截请求以充当"代理"。通过修改内容、转发数据包和模拟其他用户行为,ZAP也可以对应用程序进行漏洞扫描测试。
可执行常见的动态应用程序安全测试(DAST),特别是针对跨站点脚本(XSS)漏洞,还能够执行一些新型的测试工作,例如模糊测试;
可提供API和docker集成以实现快速部署,并与DevSecOp工具集成,实现对开发团队的自动化工单管理;通过CrashOverride开源奖学金的支持,ZAP拥有多名全职开发人员,不再与OWASP有关联;经常被渗透测试人员使用,可以很好地了解黑客可能发现的漏洞。
某些扫描功能需要额外的插件
需要一些专业知识才能使用
相比其他工具,误报率较高
4、OSV-Scanner
能够定期扩展支持的编程语言列表,包括C/C++、Dart、Elixir、Go、Java、JavaScript、PHP、Python、R、Ruby和Rust。可以从大量信息源中获取漏洞,包括Debian、Linux、Maven、npm、NuGet、OSS-Fuzz、Packagist、PyPl和RubyGems。允许API、可脚本化和与GitHub集成的调用,以实现漏洞扫描自动化。使用JSON存储有关受影响版本的信息,以便与开发人员工具包进行集成。检查目录、软件清单(SBOM)、锁定文件、基于Debian的Docker镜像或在Docker容器中运行的软件。
只检查开源库中有的漏洞产品较新,尚未被纳入到主流的认证教育中
5、CloudSploit
CloudSploit是一款开源的云基础设施扫描引擎,目前被Aqua公司收购并继续对其进行维护,以使用户能够下载、修改并享受这个专业工具的好处。CloudSploit可以根据用户需求进行扫描,也可以配置为持续运行,并向安全和DevOps团队发送漏洞警报。该工具不仅检查已知的云和容器部署漏洞,还能够检查常见的配置错误问题。
可持续扫描AWS、Azure、GoogleCloud、OracleCloud等环境,以便对云基础设施的更改进行警报。
通过安全人员常用的工具(如Slack、Splunk、OpsGenie、AmazonSNS等)发送实时警报和结果。
可从命令行、脚本或构建系统(Jenkins、CircleCL、AWSCodeBuild等)调用API。
提供了广泛的云支持,包括针对主要公共云平台(阿里云、AWS、Azure、GoogleCloud等)的插件严重程度。
某些功能需要付费使用必须与其他安全工具一起使用专注于公有云基础设施安全性
6、sqlmap
可通过DBMS凭据、IP地址、端口和数据库名称直接连接到数据库进行漏洞扫描测试。
支持可调用的(代码或GitHub)集成,可执行任意命令,检索标准输出并生成报告。
自动识别和使用密码哈希进行具有许可访问权限的测试,还可以进行密码破解。
支持超过30个数据库管理系统。
没有图形用户界面,需要通过命令行只针对数据库中的漏洞需要一定的数据库专业知识才能有效使用