渗透测试,是专业安全人员为找出系统中的漏洞而进行的操作。当然,是在恶意黑客找到这些漏洞之前。而这些业内安全专家各自钟爱的工具各种各样,一些工具是公开免费的,另一些则需要支付费用,但这篇文章向你保证,值得一看。
1. Nmap
2017年9月1日是Nmap的20岁生日。从诞生之初,Nmap就一直是网络发现和攻击界面测绘的首选工具。从主机发现和端口扫描,到操作系统检测和IDS规避/欺骗,Nmap是大大小小黑客行动的基本工具。
2. Aircrack-ng
与Nmap类似,Aircrack-ng是那种,渗透测试员不仅知道,且只要评估无线网络,就会经常用到的工具。Aircrack-ng是无线评估工具套装,覆盖数据包捕捉和攻击(包含破解WAP和WEP)。
3. Wifiphisher
Wifiphisher是个伪造恶意接入点的工具,可针对WiFi网络发起自动化网络钓鱼攻击。基于任务范围,Wifiphisher可致凭证获取或实际的感染。其网站上的文档部分可查阅完整概述。
4. Burp Suite
与Web浏览器配合使用,可发现给定App的功能和安全问题,是发起定制攻击的基础。
目前,免费版本功能很有限,但付费版本(每用户349美元)提供全面的网络爬取和扫描功能(支持超过100个漏洞——囊括OWASP十大);多攻击点;基于范围的配置。关于此工具最常见的评价是,它可用于自动化重复功能,提供App与服务器互动的良好视图。
5. OWASP ZAP
OWASP Zed 攻击代理 (ZAP)是与 Burp Suite 相提并论的一款应用测试工具。普遍观点是,ZAP适合应用安全新手,而 Burp Suite 是首选核心评估工具。资金紧张的人倾向于ZAP,因为这是一款开源工具。OWASP推荐ZAP用作应用测试,并发布了一系列教程,指导使用者在长期安全项目中有效利用该工具。
https://www.owasp.org/index.php/OWASP_Zed_Attack_Proxy_Project
6. SQLmap
如其网站所言,SQLmap是一款“自动化SQL注入和数据库接管工具”。这一描述充分解释了该工具的核心本质。SQLmap支持所有常见数据库平台——MySQL、MSSQL、Access、DB2、PostgreSQL、Sybase、SQLite,还有6中不同攻击方法。
7. CME(CrackMapExec)
CME是一款后漏洞利用工具,可帮助自动化大型活动目录(AD)网络安全评估任务。其缔造者——昵称“byt3bl33d3r”的黑客,称该工具的生存概念是,“利用AD内置功能/协议达成其功能,并规避大多数终端防护/IDS/IPS解决方案。”
测试红队的CME用例很明朗,但蓝队同样可以使用该工具来评估账户权限,模拟攻击,查找配置错误。CME还使用PowerSploit工具包和Impacket库。
https://github.com/byt3bl33d3r/CrackMapExec
8. Impacket
为CEM所用的Impacket,是一个Python类库,用于对SMB1-3或 IPv4 / IPv6 上的TCP、UDP、ICMP、IGMP和ARP之类的协议进行低级编程访问。可以从零开始构造数据包,或者从原始数据中解析包。
https://github.com/CoreSecurity/impacket
9. PowerSploit
PowerSploit是在评估过程中使用的一系列模块的集合。正如名字揭示的,这些模块本身用于Windows上的PowerShell。其功能包括:驻留、杀软规避、渗漏、代码执行、脚本修改、侦察等等。
https://github.com/PowerShellMafia/PowerSploit
10. Luckystrike
出自“curi0usJack”之手的Luckystrike,是一款恶意Excel(.xls)和Word(.doc)文档生成工具。Luckystrike可与标准命令行、PowerShell脚本和可执行程序(EXE)配合使用。
https://github.com/curi0usJack/luckystrike
11. BeEF(浏览器漏洞利用框架)
BeEF是利用客户端攻击方法,评估目标环境切实安全状态的趁手工具。鉴于该工具提供的众多功能和选项,很多安全专家都提到了BeEF,并评价称特别好用。
12. THC-Hydra
THC-Hydra是一款网络登录破解器,支持多个服务。实际上,它支持的服务数量超过48个,包括思科auth、思科enable、IMAP、IRC、LDAP、MS-SQL、MYSQL、Rlogin、Rsh、RTSP和SSH(v1和v2)。该工具不甚复杂,详细的说明文档覆盖了很多细节,方便新手启用。
https://github.com/vanhauser-thc/thc-hydra
13. Immunity Debugger
Immunity Debugger 是帮助安全人员编写漏洞利用程序、分析恶意软件和逆向工程二进制文件的工具。里面功能繁多,但有两份文档很好地阐述了其中大多数功能,一份是伊戈尔·诺夫科维奇写的概览,一份是SANS阅览区关于基础逆向工程的论文。如果逆向或漏洞利用程序编写已经在你的技能集里面,那你可能已经十分熟悉该工具了;如果还没有,值得一看。
https://www.immunityinc.com/products/debugger/
14. 社会工程工具箱(SET)
如名称所示,SET是面向社会工程的渗透测试框架。这是个很流行的工具,甚至在电视上都看到过它的身影。美剧《机器人先生》中SET被频繁使用的场景,让黑客们会心一笑。
源自TrustedSec的另两款工具也值得一提:Unicorn,用于PowerShell降级攻击和内存代码直接注入(与SET绝配),还有nps_payload,生成入侵检测规避载荷。
https://github.com/trustedsec/social-engineer-toolkit
15. Metasploit
Metasploit框架太常用了,跟默认必备工具似的,除了 Kali Linux,就数它被安全专家们提到最多。Kali是Linux发行版之一,此处提到的工具大多被预装到了Kali中。
多年来,Metasploit一直是众多渗透测试员的主要工具。即便在被Rapid7收购之后,也依然像开源项目一样受到全面支持,整个漏洞利用程序开发者社区都在不断发展该工具。如果漏洞或漏洞利用程序出现在新闻报道中,Metasploit必然会将其纳入。需要评估某网络已知漏洞情况?Metasploit能帮你搞定。
https://github.com/rapid7/metasploit-framework
16. 渗透测试工具速查表
HighOn.Coffee博客的渗透测试工具速查表,提供多种常用命令的高级参考,从网络配置到端口扫描和网络服务攻击,应有尽有。
https://highon.coffee/blog/penetration-testing-tools-cheat-sheet/
17. SecLists
SecLists,看名字就知道,这是一份列表集,托管在GitHub上,列表类型包括用户名、口令、常见数据模式、模糊测试载荷、shell等等,可帮助渗透测试员快速完成手头任务。