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。
SetRequest命令
你还可以利用SNMP重新配置接口或服务。这包括设置路由跳计数,停止和启动服务,停止和启用接口等等。如果你使用SNMPv1而且黑客又得到community name的话,他就可以侦查和控制你的系统。SNMPv3包含了更复杂的加密和验证的机制。然而,许多网络管理员由于使用缺省的密码和设置,给黑客以可乘之机。当然,经过加密的SNMP密码仍然可以被捕获和暴力攻击。
SNMP软件
许多厂商出售SNMP管理软件,常见的SNMP软件有:
? HP的OpenView
? Windows NT Resource Kit中的SNMPUTIL
? 各种各样的网络附加工具包,如Ping ProPack等
虽然象HP的OpenView程序是工业的标准,你还可以使用功能稍差的程序象Ping Pro来获取网络的情况。如图显示了Ping Pro中的SNMP模块。
TCP/IP 服务
大多数的SMTP和POP3服务仍然以明文方式发送密码,这增大了Man-in-the-middle攻击成功的可能性。而且,LDAP、FTP、SMTP,尤其是HTTP服务非常容易遭受缓冲区溢出的攻击。
附加的TCP/IP服务
LDAP服务容易引起问题,不仅因为该服务所泄漏的信息而且经常遭受缓冲区溢出的攻击。E-mail程序如Microsoft Outlook,Eudora和Netscape Communicator也包含LDAP客户端的软件。而且,象Ping Pro和NetScan等管理工具运行你进行更复杂的查询。TFTP的问题是没有验证机制。黑客喜欢对其进行拒绝服务攻击,对系统提出了严峻的考验。
简单TCP/IP服务
像Finger和TFTP等简单TCP/IP服务所泄漏的信息容易被黑客利用进行社会工程和其它类型的攻击。LDAP,FTP和SMTP服务经常出现安全问题有很多原因。首先这些服务容易泄漏太多自己配置的信息。
Finger
Finger服务使你考验获取远程服务器上的用户信息。使用Finger,你可以得到:
? 用户名
? 服务器名
? E-mail账号
? 用户当前是否在线
? 用户登录时间
? 用户的crond任务