|
网络安全的侦测与工具(二)(1)
NMAP
NMAP由于功能强大、不断升级和免费的原因十分流行。它对网络的侦查十分有效是基于两个原因。首先,它具有非常灵活的TCP/IP堆栈指纹引擎,NMAP的制作人FYODOR不断升级该引擎是它能够尽可能多的进行猜测。NMAP可以准确地扫描服务器操作系统(包括Novell, Unix, Linux, NT),路由器(包括CISCO,3COM和HP),还有一些拨号设备。其次,它可以穿透网络边缘的安全设备,例如防火墙。
NMAP穿透防火墙的一种方法是利用碎片扫描技术(fragment scans),你可以发送隐秘的FIN包(-sF),Xmas tree包(-sX)或NULL包(-sN)。这些选项允许你将TCP查询分割成片断从而绕过防火墙规则。这种策略对很多流行的防火墙产品都很有效。
当前NMAP只能运行在UNIX操作系统上。操作系统类型包括Linux的所有版本,Free BSD 2.2.6-30,HP/UX,和Solaris。在Linux的X-Windows上还提供图形界面。最好的掌握NMAP的方法是学习使用它。使用nmap -h命令可以显示帮助信息,当然,你也可以用man nmap命令查看它的使用手册。
共享扫描
你可以扫描网络中绝大多数的内容,包括正在使用的共享。这种扫描过程提供了重要的侦查和利用各种资源和文件的方法。
共享扫描软件
Ping Pro提供了允许审计人员扫描Windows网络共享的功能。它只能侦查出共享名称,但不会入侵共享。例如,Microsoft网络利用TCP139端口建立共享。更具侵略性的侦查软件有知名的RedButton,许多Internet站点都免费提供下载。
RedButton是一个很古老的程序,大多数的系统管理员和安全管理员都找到了防范它的方法。这个程序不仅可以侦查出共享名称还可以发现相应的密码。它还可以获得管理员的账号名称。
缺省配置和补丁级扫描
黑客和审计人员对系统的缺省配置很了解。你可以编制工具查找这些弱点。实际上,本课中讨论的许多企业级的侦查工具都是针对这些弱点进行工作的。安全专家还知道操作系统工作的细节,根据服务补丁和hot fix的数量进行升级。
使用Telnet
Telnet是远程登录系统进行管理的程序。缺省情况下telnet使用23端口。当然,你还可以利用Telnet客户端程序连接到其它端口。
例如,你可以Telnet至HTTP端口。在连接一段时间内若没有任何动作,服务器会因为无法识别这次连接而自动切断。但是你通常可以从HTTP服务器上得到一些信息。例如,可以得知服务厂商的信息,版本(如Apache Web Server 1.36或IIS 4.0)等等。
虽然信息不是很多,但你至少能从报错信息中推断出服务器类型。如左边图所示你与服务器连接被终止,但在Web服务器报错信息中仍可以看出HTTP服务器版本。你还可以用Telnet连接上系统再使用SYST命令,许多TCP/IP堆栈会泄漏一些重要的信息。
使用SNMP
简单网络管理协议(SNMP)允许你从网络主机上查询相关的数据。例如,你可以收集TCP/IP方面的信息,还有在路由器、工作站和其它网络组件上运行的服务情况。SNMP由网络管理系统(NMS)和代理Agent组成。NMS通常安装在一台工作站上,再将代理安装在任何需要接受管理和配置的主机上。
当前存在三个版本的SNMP。SNMPv1最普通但也最不安全。原因有两个,首先,它使用弱的校验机制。只是靠community name作验证,而community name只是很短的字符串。其次,SNMP用明文发送community name,易于被sniffer捕获。而且,许多网络管理员使用缺省的“public”作community name。任何黑客都会首先尝试用“public”来访问SNMP。
|