在2000和2003年非常成功的推出了安全工具调查后,Insecure.Org 非常高兴为大家带来2006年度的安全工具调查。我-Fyodor对nmap-hackers 邮件列表中的用户进行了调查,让大家来分享他们最喜欢用的工具,结果有3243名用户提供了反馈信息。我从反馈信息中选取了大家最喜欢的前100种工具,并将它们进行了分类。建议安全界人士仔细阅读这份列表,并对不熟悉或未听说过的工具进行研究,相信会有很大帮助。我自己就从中发现了很多以前没有使用过但非常好用的工具。当很多菜鸟问我“我不知道当一个黑客该从何开始”时,我就让他们来读读这篇文章。
受访者被要求列出各种平台上的开源和商业工具。商业工具会在列表中进行标注。Nmap Security Scanner 没有参与投票,因为调查是在Nmap的邮件列表中进行的。因为受访者多为黑客的原因,所以此列表中攻击型的工具偏多一些,防守型的则少一些。
列表中每个工具都含有以下一种或几种属性:2003年调查列表中未出现的工具;相对于2003年调查列表排名升或降;需要花钱购买。但可以免费获得限制、演示、试用版本软件;可以工作于Linux平台之上;可以工作于OpenBSD、FreeBSD、Solaris 或其它UNIX平台之上;可以工作于苹果Mac OS X平台之上;可以工作于微软Windows平台之上;提供命令行操作方式;提供图形化用户界面;在互联网上可以找到源代码。
如果您发现列表中的工具有更新或者有其它建议--或者有更好的工具图标 可以发送邮件给我。如果您的工具入选此列表了,或者您认为您网站的访客也许会对此列表感兴趣,欢迎您通过link banners把本文链接到您网站上。以下开始为正式列表,按受欢迎程度降序排列:
#1 Nessus:最好的UNIX漏洞扫描工具
Nessus 是最好的免费网络漏洞扫描器,它可以运行于几乎所有的UNIX平台之上。它不止永久升级,还免费提供多达11000种插件(但需要注册并接受EULA-acceptance--终端用户授权协议)。它的主要功能是远程或本地(已授权的)安全检查,客户端/服务器架构,GTK(Linux下的一种图形界面)图形界面,内置脚本语言编译器,可以用其编写自定义插件,或用来阅读别人写的插件。Nessus 3 已经开发完成(now closed source),其现阶段仍然免费,除非您想获得最新的插件。
--------------------------------------------------------------------------------
#2 Wireshark:网络嗅探工具
Wireshark (2006年夏天之前叫做 Ethereal)是一款非常棒的Unix和Windows上的开源网络协议分析器。它可以实时检测网络通讯数据,也可以检测其抓取的网络通讯数据快照文件。可以通过图形界面浏览这些数据,可以查看网络通讯数据包中每一层的详细内容。Wireshark拥有许多强大的特性:包含有强显示过滤器语言(rich display filter language)和查看TCP会话重构流的能力;它更支持上百种协议和媒体类型; 拥有一个类似tcpdump(一个Linux下的网络协议分析工具)的名为tethereal的的命令行版本。不得不说一句,Ethereal已经饱受许多可远程利用的漏洞折磨,所以请经常对其进行升级,并在不安全网络或敌方网络(例如安全会议的网络)中谨慎使用之。
--------------------------------------------------------------------------------
#3 Snort:一款广受欢迎的开源IDS(Intrusion Detection System)(入侵检测系统)工具
这款小型的入侵检测和预防系统擅长于通讯分析和IP数据包登录(packet logging)。Snort除了能够进行协议分析、内容搜索和包含其它许多预处理程序,还可以检测上千种蠕虫病毒、漏洞、端口扫描以及其它可疑行为检测。Snort使用一种简单的基于规则的语言来描述网络通讯,以及判断对于网络数据是放行还是拦截,其检测引擎是模块化的。 用于分析Snort警报的网页形式的引擎 Basic Analysis and Security Engine (BASE)可免费获得。
开源的Snort为个人、小企业、集团用户提供良好的服务。其母公司SourceFire提供丰富的企业级特性和定期升级以丰富其产品线。提供(必须注册)5天免费的规则试用,您也可以在Bleeding Edge Snort找到很多免费规则。
--------------------------------------------------------------------------------
#4 Netcat:网络瑞士军刀
这个简单的小工具可以读和写经过TCP或UDP网络连接的数据。它被设计成一个可靠的可以被其它程序或脚本直接和简单使用的后台工具。同时,它也是一个功能多样的网络调试和检查工具,因为它可以生成几乎所有您想要的网络连接,包括通过端口绑定来接受输入连接。Netcat最早由Hobbit在1995年发布,但在其广为流传的情况下并没有得到很好的维护。现在nc110.tgz已经很难找了。这个简单易用的工具促使了很多人写出了很多其它Netcat应用,其中有很多功能都是原版本没有的。其中最有趣的是Socat,它将Netcat扩展成可以支持多种其它socket类型,SSL加密,SOCKS代理,以及其它扩展的更强大的工具。它也在本列表中得到了自己的位置(第71位)。还有Chris Gibson's Ncat,能够提供更多对便携设备的支持。其它基于Netcat的工具还有OpenBSD's nc,Cryptcat,Netcat6,PNetcat,SBD,又叫做GNU Netcat。
--------------------------------------------------------------------------------
#5 Metasploit Framework:黑掉整个星球
2004年Metasploit的发布在安全界引发了强烈的**。没有一款新工具能够一发布就挤进此列表的15强(也就是说2000年和2003年的调查没有这种情况),更何况此工具更在5强之列,超过了很多广为流传的诞生了几十年的老牌工具。它是一个强大的开源平台,供开发、测试和使用恶意代码。这种可扩展的模型将负载控制、编码器、无操作生成器和漏洞整合在一起,使得Metasploit Framework成为一种研究高危漏洞的途径。它自带上百种漏洞,还可以在online exploit building demo(在线漏洞生成演示)看到如何生成漏洞。这使得您自己编写漏洞变得更简单,它势必将提升非法shellcode代码的水平,扩大网络阴暗面。与其相似的专业漏洞工具,例如Core Impact和Canvas已经被许多专业领域用户使用。Metasploit降低了这种能力的门槛,将其推广给大众。
--------------------------------------------------------------------------------
#6 Hping2:一种网络探测工具,是ping的超级变种
这个小工具可以发送自定义的ICMP,UDP和TCP数据包,并接收所有反馈信息。它的灵感来源于ping命令,但其功能远远超过ping。它还包含一个小型的路由跟踪模块,并支持IP分段。此工具可以在常用工具无法对有防火墙保护的主机进行路由跟踪/ping/探测时大显身手。它经常可以帮助您找出防火墙的规则集,当然还可以通过它来学习TCP/IP协议,并作一些IP协议的实验。
--------------------------------------------------------------------------------
#7 Kismet:一款超强的无线嗅探器
Kismet是一款基于命令行(ncurses)的802.11 layer2无线网络探测器、嗅探器、和入侵检测系统。它对网络进行被动嗅探(相对于许多主动工具,例如NetStumbler),可以发现隐形网络(非信标)。它可以通过嗅探TCP、UDP、ARP和DHCP数据包来自动检测网络IP段,以Wireshark/TCPDump兼容格式记录通讯日志,更加可以将被检测到的网络分块并按照下载的分布图进行范围估计。如您所想,这款工具一般被wardriving所使用。嗯!还有warwalking、warflying和warskating……
--------------------------------------------------------------------------------
#8 Tcpdump:最经典的网络监控和数据捕获嗅探器
在Ethereal(Wireshark)出现之前大家都用Tcpdump,而且很多人现在还在一直使用。它也许没有Wireshark那么多花里胡哨的东西(比如漂亮的图形界面,亦或数以百计的应用协议逻辑分析),但它能出色的完成很多任务,并且漏洞非常少,消耗系统资源也非常少。它很少添加新特性了,但经常修复一些bug和维持较小的体积。它能很好的跟踪网络问题来源,并能监控网络活动。其Windows下的版本叫做WinDump。Libpcap/WinPcap的包捕获库就是基于TCPDump,它也用在Nmap等其它工具中。
--------------------------------------------------------------------------------
#9 Cain and Abel:Windows平台上最好的密码恢复工具
UNIX用户经常声称正是因为Unix平台下有很多非常好的免费安全工具,所以Unix才会成为最好的平台,而Windows平台一般不在他们的考虑范围之内。他们也许是对的,但Cain & Abel确实让人眼前一亮。这种只运行于Windows平台的密码恢复工具可以作很多事情。它可以通过嗅探网络来找到密码、利用字典破解加密密码、暴力破解密码和密码分析、记录VoIP会话、解码非常复杂的密码、星号查看、剥离缓存密码以及分析路由协议。另外其文档也很齐全(well documented)。
--------------------------------------------------------------------------------
#10 John the Ripper:一款强大的、简单的以及支持多平台的密码破解器
John the Ripper是最快的密码破解器,当前支持多种主流Unix (官方支持11种,没有计算不同的架构)、DOS、Win32、BeO和OpenVMS。它的主要功能就是检测弱Unix密码。它支持主流Unix下的多种(3种)密码哈希加密类型,它们是Kerberos、AFS以及Windows NT/2000/XP LM。其它哈希类型可以通过补丁包加载。如果您希望从一些单词表开始的话,您可以在这里、这里和这里找到。
--------------------------------------------------------------------------------
#11 Ettercap:为交换式局域网提供更多保护
Ettercap是一款基于终端的以太网络局域网嗅探器/拦截器/日志器。它支持主动和被动的多种协议解析(甚至是ssh和https这种加密过的)。还可以进行已建立连接的数据注入和实时过滤,保持连接同步。大部分嗅探模式都是强大且全面的嗅探组合。支持插件。能够识别您是否出在交换式局域网中,通过使用操作系统指纹(主动或被动)技术可以得出局域网结构。
--------------------------------------------------------------------------------
#12 Nikto:非常全面的网页扫描器
Nikto是一款开源的(GPL)网页服务器扫描器,它可以对网页服务器进行全面的多种扫描,包含超过3200种有潜在危险的文件/CGIs;超过625种服务器版本;超过230种特定服务器问题。扫描项和插件可以自动更新(如果需要)。基于Whisker/libwhisker完成其底层功能。这是一款非常棒的工具,但其软件本身并不经常更新,最新和最危险的可能检测不到。
--------------------------------------------------------------------------------
#13 Ping/telnet/dig/traceroute/whois/netstat:基本命令
虽然有很多重型的高科技网络安全工具,但是不要忘记其基础!所有网络安全人士都要对这些基本命令非常熟悉,因为它们对大多数平台都适用(在Windows平台上whois为tracert)。它们可以随手捏来,当然如果需要使用一些更高级的功能可以选择Hping2和Netcat。
--------------------------------------------------------------------------------
#14 OpenSSH / PuTTY / SSH:访问远程计算机的安全途径
SSH(Secure Shell)现在普遍应用于登录远程计算机或在其上执行命令。它为不安全网络上的两台不互信计算机间通讯提供安全加密,代替非常不可靠的telnet/rlogin/rsh交互内容。大多UNIX使用开源的OpenSSH服务器和客户端程序。Windows用户更喜欢免费的PuTTY客户端,它也可以运行在多种移动设备上。还有一些Windows用户喜欢使用基于终端的OpenSSH模拟程序Cygwin。还有其它很多收费和免费的客户端。您可以在这里和这里找到。
--------------------------------------------------------------------------------
#15 THC Hydra:支持多种服务的最快的网络认证破解器
如果您需要暴力破解一个远程认证服务,Hydra经常会是选择对象。它可以同时对30个以上的端口进行基于字典的快速破解,包括telnet、ftp、http、https、smb、多种数据库及其它服务。和THC Amap一样,此Hydra版本来自于民间组织THC。
--------------------------------------------------------------------------------
#16 Paros proxy:网页程序漏洞评估代理
基于Java的网页程序漏洞评估代理。支持实时编辑和浏览HTTP/HTTPS信息,修改例如Cookie和表字段中的内容。它包含有网页通讯记录器、网页小偷(web spider)、哈希计算器和一个常用网页程序攻击扫描器,例如SQL注入和跨网站脚本等。
--------------------------------------------------------------------------------
#17 Dsniff:一款超强的网络评估和渗透检测工具套装
由Dug Song精心设计并广受欢迎的这款套装包含很多工具。Dsniff、filesnarf、mailsnarf、msgsnarf、urlsnarf和webspy通过被动监视网络以获得敏感数据(例如密码、邮件地址、文件等)。Arpspoof、dnsspoof和macof能够拦截一般很难获取到的网络通讯信息(例如由于使用了第二层转换(layer-2 switching))。Sshmitm和webmitm通过ad-hoc PKI中弱绑定漏洞对ssh和https会话进行重定向实施动态monkey-in-the-middle(利用中间人攻击技术,对会话进行劫持)攻击。Windows版本可以在这里获取。总之,这是一个非常有用的工具集。它能完成几乎所有密码嗅探需要作的工作。
--------------------------------------------------------------------------------
#18 NetStumbler:免费的Windows 802.11嗅探器
Netstumbler是广为人知的寻找开放无线访问接入点的Windows工具("wardriving")。其PDA上的WinCE系统版本名叫Ministumbler。此软件当前免费,但只能够运行在Windows平台上,且代码不公开。它使用很多主动方法寻找WAP,而Kismet或KisMAC则更多使用被动嗅探。
--------------------------------------------------------------------------------
#19 THC Amap:一款应用程序指纹扫描器
Amap是一款很棒的程序,它可以检测出某一端口正在被什么程序监听。因为其独有的version detection特性,所以其数据库不会象Nmap一样变得很大,在Nmap检测某一服务失败或者其它软件不起作用时可以考虑使用之。Amap的另一特性是其能够解析Nmap输出文件。这也是THC贡献的另一款很有价值的工具。
--------------------------------------------------------------------------------
#20 GFI LANguard:一款Windows平台上的商业网络安全扫描器
GFI LANguard通过对IP网络进行扫描来发现运行中的计算机,然后尝试收集主机上运行的操作系统版本和正在运行的应用程序。我曾经尝试收集到了Windows主机上的service pack级别、缺少的安全更新、无线访问接入点、USB设备、开放的共享、开放的端口、正在运行的服务和应用程序、主要注册表项、弱密码、用户和组别以及其它更多信息。扫描结果保存在一份可自定义/可查询的HTML报告文档中。它还含有一个补丁管理器,可以检查并安装缺少的补丁。试用版可以免费获得,但只能使用30天。
--------------------------------------------------------------------------------
#21 Aircrack:最快的WEP/WPA破解工具
Aircrack是一套用于破解802.11a/b/g WEP和WPA的工具套装。一旦收集到足够的加密数据包它可以破解40到512位的WEP密匙,它也可以通过高级加密方法或暴力破解来破解WPA 1或2网络。套装中包含airodump(802.11数据包捕获程序)、aireplay (802.11数据包注入程序)、aircrack(静态WEP和WPA-PSK破解),和airdecap(解密WEP/WPA捕获文件)。
--------------------------------------------------------------------------------
#22 Superscan:只运行于Windows平台之上的端口扫描器、ping工具和解析器
SuperScan是一款Foundstone开发的免费的只运行于Windows平台之上的不开源的TCP/UDP端口扫描器。它其中还包含许多其它网络工具,例如ping、路由跟踪、http head和whois。
--------------------------------------------------------------------------------
#23 Netfilter:最新的Linux核心数据包过滤器/防火墙
Netfilter是一款强大的运行于标准Linux核心上的包过滤器。它集成了用户空间IP列表工具。当前,它支持包过滤(无状态或有状态)、所有类型的网络地址和端口转换(NAT/NAPT)并支持多API层第三方扩展。它包含多种不同模块用来处理不规则协议,例如FTP。其它UNIX平台请参考Openbsd PF(只用于OpenBSD)或者IP Filter。许多个人防火墙(personal firewalls)都支持Windows (Tiny、Zone Alarm、Norton、Kerio...),但都不提供上述IP列表。微软在Windows XP SP2中集成了一款非常基础的防火墙,如果您不安装它,它就会不断地提示您安装。
--------------------------------------------------------------------------------
#24 Sysinternals:一款强大的非常全面的Windows工具合集
Sysinternals为Windows低级入侵提供很多非常有用的小工具。其中一部分是免费的,有些还附有源代码,其它是需要付费使用的。受访者最喜欢此集合中的以下工具:
ProcessExplorer 监视所有进程打开的所有文件和目录(类似Unix上的LSoF)。
PsTools 管理(执行、挂起、杀死、查看)本地和远程进程。
Autoruns 发现系统启动和登陆时加载了哪些可执行程序。
RootkitRevealer 检测注册表和文件系统API异常,用以发现用户模式或内核模式的rootkit工具。
TCPView 浏览每个进程的TCP和UDP通讯终点(类似Unix上的Netstat)。
生产此软件的公司已被微软于2005年收购,所以其未来产品线特征无法预测。
--------------------------------------------------------------------------------
#25 Retina:eEye出品的商业漏洞评估扫描器
象Nessus一样,Retina的功能是扫描网络中所有的主机并报告发现的所有漏洞。eEye出品,此公司以其security research而闻名。