您是否一直在寻找最能满足自己Web应用和网络安全要求的渗透测试工具?您是否想通过比较和分析不同渗透测试工具之间的差别,以确定哪一款最适合本企业?或者您只是想知道在新技术的背景下,有哪些渗透测试类工具具有独到的功能?在此,我将和您讨论11种非常适合检测漏洞,并能准确模拟网络攻击的渗透测试工具。我们将从它们各自的功能、优势、适用性、以及兼容的平台等方面进行介绍。
1. Burp Suite Pro
Burp Suite Pro是目前最受欢迎、且功能最为强大的高级渗透测试工具之一。它能够协助测试者确定被测系统中的安全盲点,并对漏洞进行利用和修复。凭借着各种高级工具套件,它非常适合于Web应用的渗透测试场景。
目前,Burp Suite Pro拥有两个版本:
社区版 - 提供各种必要的基本功能,例如:拦截浏览器的流量,管理侦察数据,以及手动测试所需的各项带外(out-of-band,OOB)功能。
专业版 - 提供了一些高级功能,例如:扫描Web应用中的代码级漏洞等。
主要功能 -
Burp Suite具有功能强大的代理组件,可以通过模拟中间人(man-in-the-middle)攻击,修改浏览器的HTTP(S)通信,进而拦截或篡改数据的传输。
它可以在手动测试期间,协助发现那些在传统HTTP请求响应中,无法检测到的漏洞(或称带外漏洞)。
它能通过自动发现功能,来发掘隐藏的目标与功能。
该工具提供了更快的暴力破解和模糊测试功能,以方便渗透测试人员部署包含了自定义有效负载集的HTTP请求序列。据此,他们可以大幅减少在不同任务上花费的时间。
Burpsuite Pro可以轻松地为给定请求,构造基于跨站点请求伪造(CSRF)的概念验证(Proof of Concept,POC)类攻击。
为了便于开展更加深入的手动测试,该工具还提供了能够反映已存储输入的视图。
App Store里提供了各种由Burp用户编写、并已通过测试的数百个社区插件。
适用性 - 最适合那些专业人士和渗透测试人员。他们往往希望利用功能强大的自动化工具、以及高级手动测试工具,来发现关键应用的程序级缺陷。
所有方 — PortSwigger。
支持平台 – macOS、Linux和Windows。
2. SQLmap
SQLmap是一个开源,且功能强大的渗透测试工具。它带有强大的检测引擎,可以通过单个命令,来检索特定的数据。专业渗透测试人员往往用它来识别和利用,那些影响不同数据库的SQL注入漏洞。
主要功能:
通过使用基于字典的攻击,SQLmap能够自动识别密码的哈希格式,并支持对其破解。
它可以有效地搜索整个数据库中的特定数据库名称、表和列。由于应用程序往往会将用户凭据存放在诸如name和pass之类的字符串中,因此SQLmap可以有效地识别到此类数据表。
SQLmap支持在数据库服务器和攻击者主机之间建立带外的TCP连接,从而为用户提供交互式的命令提示符、或仪表计量器式的会话(meterpreter session)。
该工具支持从与之兼容的数据库中,下载/上传任何文件。
适用性 - 最适用于检测和利用SQL注入漏洞,并接管数据库服务器。
所有方 – 由GNU(通用公共许可证)提供的开源工具。
支持平台 - MySQL、Oracle、PostgreSQL、Microsoft SQL Server、SQLite、Firebird、SAP MaxDB。
3.Aircrack-ng
Aircrack-ng是一种网络安全类渗透测试工具。它可以通过自带的一系列实用程序,来监视、测试、攻击、破解、以及评估Wi-Fi网络中是否存在漏洞。
该工具允许测试人员通过将捕获的数据包导出为文本文件,以供其他第三方工具予以进一步处理。Aircrack-ng不但具有执行重播攻击、关闭身份验证攻击、以及通过数据包注入创建虚假访问点等功能,还能够协助检查Wi-Fi网卡、驱动程序、以及被用于破解WEP和WPA WPA(1和2)。
主要功能:
该工具擅长在无需任何客户端进行身份验证的情况下,破解WEP和WPA-PSK。它主要使用统计方法来破解WEP,并通过蛮力攻击来破解WPA-PSK。
作为一个完整的套件,Aircrack-ng包含检测器、数据包嗅探器、分析工具、以及WEP和WPA/WPA2-PSK的破解程序。
具体而言,Aircrack-ng套件由airodump-ng、aireplay-ng、aircrack-ng、以及airdecap-ng之类的工具组成。其中,
Airodump-ng可被用于捕获原始的802.11数据包。
Airplay-ng可用于将帧注入无线流量中。
一旦捕获到足够的数据包,Aircrack-ng将破解WEP和WPA-PSK密钥。
Airdecap-ng既可用于解密捕获到的文件,又可以用于剥离无线标头。
适用性 – 非常适用于渗透测试人员通过自定义和命令行的方式,入侵Wi-Fi网络。
所有方 - 由GNU(通用公共许可证)提供的开源工具。
支持平台 - Linux、OS X Solaris和Windows。
4. Wireshark
作为一种必备的网络协议分析器,Wireshark能够被广泛地用于捕获实时网络流量,并针对延迟问题、数据丢包、以及网络中的恶意活动等问题进行排查。同时,它允许测试人员截取和分析通过网络传递的数据,并将其转换为可读的格式。
主要功能:
Wireshark可以对多种协议进行深度检查。
它自带有标准的三格式(three-pane)数据包浏览器和强大的显示过滤器。
Wireshark允许用户通过GUI、或通过TTY模式的TShark工具,来浏览数据。
它可以读、写不同格式的文件,其中包括:tcpdump(libpcap)、Pcap NG、Catapult DCT2000、Cisco Secure IDS iplog、Microsoft Network Monitor、Network GeneralSniffer®(已压缩和未压缩)等。
该工具为包括IPsec、ISAKMP、Kerberos、SNMPv3、SSL/TLS、WEP和WPA/WPA2等不同协议,提供了解密支持。
该工具还允许用户检查VOIP类型的流量。
适用性 - 最适用于网络排障人员通过渗透测试,来分析网络中敏感数据的安全态势。
所有方 - 由GNU(通用公共许可证)提供的开源工具。
支持平台 – macOS、Linux、Solaris和Windows。
5. Nmap
作为一种开源的渗透测试工具,Nmap不但可以协助识别网络中的开放端口和漏洞,而且可以确定网络上正在运行的活跃设备(或主机)。
主要功能:
NMAP既能够使用端口扫描功能,来枚举开放的端口;又可以通过版本检测引擎,以确定在被标识端口上运行的服务名称和应用版本号。
它包含有2900多种OS的“指纹”,可用于确定目标主机的操作系统。
虽然主要是命令行工具,但是NMAP也提供了一种被称为Zenmap GUI的GUI版本。
Nmap的脚本引擎带有170多种NSE脚本和20个软件库,其中包括:firewall-bypass、super ipmi-conf、oracle-brute-stealth和ssl-heartbleed。
通过对IPv6提供更好的支持,它能够在无类域间路由样式(CIDR-style)的地址范围、空闲资源扫描、并行反向DNS、以及更多的NSE(Nmap scripting Engine)脚本覆盖范围内,提供全面的网络扫描。
NMAP提供了旁路的防火墙或WAF之类高级扫描功能,可以协助渗透测试人员绕过网络中已配备好的安全设备。
适用性 – 它被渗透测试人员认为是识别网络级漏洞的最佳工具。
所有方 - 由GNU(通用公共许可证)提供的开源工具。
支持平台 - Linux、Microsoft Windows、FreeBSD、OpenBSD、Solaris、HP-UX、NetBSD、Sun OS和Amiga。
6. Metasploit
作为一款渗透测试框架,Metasploit在网络攻击者和道德黑客中被广泛使用。目前,Metasploit项目拥有两个版本:开源子项目Metasploit Framework和带有许可版本的Metasploit Pro。 其中,Metasploit Framework可以针对远程目标计算机,开发出可执行的代码与有效负载。而除了使用默认的命令行界面,测试人员也通过购买Metasploit Pro,来获取各项高级功能、以及基于GUI的操作体验。
主要功能:
Metasploit包括了超过1600个针对25种平台的漏洞攻击程序。
该工具带有约500多个有效负载,其中包括:
命令shell可通过有效负载,来运行针对主机的各种脚本。
动态有效负载能够被单独生成,以避开防病毒软件。
Meterpreter的有效负载能够控制设备的显示器、会话、以及文件的上传与下载。
静态有效负载可被用于端口的转发,以及网络之间的通信。
Metasploit提供后利用(post-exploitation)模块,可用于深层的渗透测试。这些模块允许渗透测试人员收集有关被利用系统的更多信息,例如:哈希转存、或服务的枚举。
适用性 – 适合同时测试多个应用程序或系统。
所有方 - Rapid7。
支持平台 - 已被预安装在Kali Linux OS中,Windows和macOS也支持它。
7.Hashcat
Hashcat是一款在黑客和道德黑客社区被广为使用的开源工具。众所周知,哈希算法能够将可读的数据转换为混乱的代码,使其难以直接解读。而Hashcat能够猜出目标系统的密码,对其进行哈希处理,然后将生成的哈希值与尝试破解的哈希值进行比较。如果哈希值相匹配,则视为已成功破解。此处的哈希值包括:WHIRLPOOL、RiceMD、NTMLv1、NTLMv2 MD5、SHA等。
主要功能:
快速、高效、全面。
Hashcat既可以同时破解多个哈希值,又可以基于最低优先级,来配置和执行线程数。
它通过由键空间排序的马尔可夫链,来支持自动化性能调优。
该工具带有内置的基准测试系统,以及集成的热感监控(thermal watchdog)。
允许用户实现300多个hashcat。
支持十六进制字符集(hex-charset)和十六进制加盐(hex-salt)。
支持分布式网络破解,以及200多种不同的哈希格式。
适用性 - 最适合系统恢复专家和渗透测试人员用来破解加密的密码。
所有方 – 由MIT许可证提供的开源工具。
支持平台 – Linux、OS X和Windows。
8. WPScan
作为一款开源的WordPress安全扫描程序,WPScan可以扫描WordPress在核心、插件和主题中的已知漏洞。WPScan是采用Ruby应用程序构建的。它保留了WordPress平台漏洞的最新数据库,既可以扫描目标环境中的漏洞,又可以执行诸如“wpscan –url http://example.com”之类的简单命令。
主要功能:
它可以枚举在WordPress网站上的活跃用户。
能够识别和检测公开可用的wp-config.php备份文件,以及从其他数据库导出的文件。
可以通过WPScan密码字典或通过强行传送,来协助检测和破解各种弱密码。
WPScan既可以枚举WordPress网站上运行的主题和插件的版本信息,又能够提供与已识别版本相关的漏洞信息。
提供暴露的错误日志、媒体文件枚举、易受攻击的Timthumb文件、上载目录列表、以及公开的完整路径等功能。
适用性 - 可以在WordPress网站上或使用Docker映像快速安装和运行其插件。
所有方 - 开源工具,可以在GitHub存储库上被使用。
支持平台 – ArchLinux、Ubuntu、Fedora和Debian。
9. Nessus
作为功能强大且广受欢迎的网络漏洞扫描程序,Nessus拥有大量的漏洞签名库。通过运行在目标主机上,Nessus不但可以识别正在运行的服务,检测相关漏洞,还能够提供被利用的信息、以及如何修复的方案。
Nessus扫描器不但可以改善目标系统的安全状况,还能够确保在虚拟和云端环境中具备更好的合规性。通常,Nessus Essentials允许用户免费扫描16个IP地址以内的目标环境,以可以满足企业对于速度和准确性的要求。
主要功能:
与其他漏洞评估工具相比,Nessus支持更多的技术,更全面的测试。
它能够迅速发现目标资产,支持配置审核,检测目标配置文件和恶意软件。
通过针对凭据的扫描,它可以检测出目标系统缺少的凭据和补丁之类的漏洞。
该工具还支持敏感数据的发现,并能协助开展漏洞分析。
Nessus附带有最大、且能够被持续更新的漏洞库。
该工具可以将扫描结果、修复建议,以灵活且自定义的报告形式,向用户发送电子邮件。
适用性 – 其适用场景包括:扫描正在运行的网络设备、虚拟机管理程序、数据库、平板电脑、Web服务器、电话机、以及其他关键基础架构。
所有方 - Tenable
支持平台 - 可以在Debian、MacOS、Ubuntu、FreeBSD、Windows、Oracle和Linux上运行。
10. MobSF
MobSF(移动安全框架)是一个全面性的多合一框架,可用于渗透测试,恶意软件分析,以及针对不同平台上的移动应用进行安全性评估。它既可以被用作静态分析,也可以用于动态分析。目前,MobSF能够支持移动应用类的二进制文件包括:APK、XAPK、IPA和APPX。同时它也带有内置的API,可提供对外集成。
主要功能:
作为一种开源工具,MobSF能够与CI/CD或DevSecOps管道无缝集成。
由于支持移动应用的自动化静态分析,因此它可以通过分析源代码或二进制文件,以发现关键性漏洞。
由于支持在真实设备或模拟器上进行动态分析,因此它能够通过扫描应用程序,分析敏感数据的访问,以发现各种硬编码信息,以及不安全的请求。
它能够协助识别诸如:XXE、SSRF、路径遍历和IDOR等,与移动应用程序相关的漏洞。
适用性 – 作为一种最佳的自动化框架,MobSF可用于扫描各种移动应用。
所有方 – 属于开源工具,可免费下载。
支持平台 - Android、iOS和Windows。
11.John the Ripper Password Cracker
顾名思义,John the Ripper(JTR)是一个密码破解和恢复工具,能够协助发现、甚至公布系统上的弱密码。它最初被设计为通过字典攻击,来测试密码的强度,以及暴力破解各种加密/散列的密码。目前,JTR是渗透测试人员社区中最受欢迎的工具之一。它可以使用多种模式,来加快密码破解的过程。
主要功能:
该工具可以基于诸如:crypt密码哈希类型,Kerberos Andrew File System(Kerberos AFS)哈希,依赖MD-4的密码哈希,Windows NT/2000/XP/2003 LM类型的哈希,来破解不同的密码。
JTR可以将攻击分为:字典攻击、暴力攻击和Rainbow表,三个主要类别。
它不但能够提供单一破解、单词表和增量三种模式,而且允许用户自定义配置文件,这种外部模式。
适用性 - JTR是最适合初学者和技术专家的优秀密码安全审核与恢复工具。
所有方 – 由GNU(通用公共许可证)提供的开源工具,其专业版则是专有的。
支持平台 - 虽然该工具最初是为Unix开发的,但是目前可以在15个不同的平台上运行。
小结
综上所述,本文介绍的11种渗透测试工具,分别在网络、Web和移动应用等方面,各有千秋。您可以根据实际需求和目标架构,按需选择不同类型的工具,以更加轻松的方式,更加高效地识别漏洞,并提高目标系统的安全态势。