运用网络映射器助力Linux管理与安全


我们将要与您分享的这条技巧关于网络映射器Nmap),它是一种开源网络浏览器,它在网络故障诊断、浏览和审计方面都非常理想。这项工具可用来识别网络中的设备,也可以识别在特定设备上运行的服务。另外,先进的信息,如正在使用的操作系统、特定服务名字和版本)和网络滤波器和防火墙也都能识别出来。

用Nmap的服务识别通过现含指纹五千以上的指纹数据库实现。这个数据库通过社区允许提交已知指纹来支持。

作为盘点工具的网络映射器

网络映射器的常规应用之一是生成基本库存报告。这对网络地图、维护网络设备和节点一致的更新、还有识别流氓、未授权或遗忘设备都很实用。

盘点的基本扫描利用ping扫描。例如,接下来的扫描显示了在192.168.1.0/24网络中可用的主机。-sP指示Nmap进行一次ping扫描,而-n则指示不要进行名称解析。

nmap -sP -n 192.168.1.0/24 Starting Nmap 4.76 (http://nmap.org) at 2009-05-14 10:18 CDT Host 192.168.1.1 appears to be up. MAC Address: 00:18:3A:A4:43:BA (Westell Technologies) Host 192.168.1.2 appears to be up. Host 192.168.1.3 appears to be up. MAC Address: 00:17:EE:01:95:19 (Motorola CHS) Host 192.168.1.4 appears to be up. MAC Address: 00:16:CB:A3:27:E4 (Apple Computer) Host 192.168.1.5 appears to be up. MAC Address: 00:1E:52:7D:84:7E (Apple) Nmap done: 256 IP addresses (5 hosts up) scanned in 2.17 seconds

这次ping扫描对于快速建立库存清单非常实用。它也可以是更复杂脚本和程序验证网络地址和变化的结构单元。举例来说,下面的命令报告了从两个日常扫描输出到文本文件的网络中的新主机192.168.1.5):

diff monday.scan tuesday.scan | grep "> Host" > Host 192.168.1.5 appears to be up.

指定主机型盘点

看一看决定服务运行的特定主机,你可以使用Nmap。例如,让我们更近地看看192.168.1.5,它看上去是周一扫描后周二扫描前某个时候被发现的:

nmap -n 192.168.1.5 Starting Nmap 4.76 ( http://nmap.org ) at 2009-05-14 12:44 CDT Interesting ports on 192.168.1.5: Not shown: 984 closed ports PORT STATE SERVICE 22/tcp open ssh 88/tcp open kerberos-sec 111/tcp open rpcbind 139/tcp open netbios-ssn 445/tcp open microsoft-ds 515/tcp open printer 548/tcp open afp 631/tcp open ipp 1021/tcp open unknown 1022/tcp open unknown 1023/tcp open netvenuechat 2049/tcp open nfs 3300/tcp open unknown 5900/tcp open vnc 20221/tcp open unknown 20222/tcp open unknown MAC Address: 00:16:CB:A3:27:E4 (Apple Computer) Nmap done: 1 IP address (1 host up) scanned in 10.46 seconds

它看上去是以ssh为基础的基于Unix系统,但是MAC地址识别让这个系统非常像一台Apple MAC电脑。但是,近看运用Nmap的服务和版本检测,可以收集更多信息。-sV参数用在这里:

mb3:~ root# nmap -n -sV 192.168.1.5 Starting Nmap 4.76 ( http://nmap.org ) at 2009-05-14 12:47 CDT Interesting ports on 192.168.1.5: Not shown: 984 closed ports PORT STATE SERVICE VERSION 22/tcp open ssh OpenSSH 5.1 (protocol 1.99) 88/tcp open kerberos-sec Mac OS X kerberos-sec 111/tcp open rpcbind 139/tcp open netbios-ssn Samba smbd 3.X (workgroup: WORKGROUP) 445/tcp open netbios-ssn Samba smbd 3.X (workgroup: WORKGROUP) 515/tcp open printer 548/tcp open afp? 631/tcp open ipp CUPS 1.3 1021/tcp open rpcbind 1022/tcp open rpcbind 1023/tcp open rpcbind 2049/tcp open rpcbind 3300/tcp open unknown? 5900/tcp open vnc VNC (protocol 3.8) 20221/tcp open unknown? 20222/tcp open unknown?

尽管会返回数据,我还是为未识别的数据服务。

如果你知道这个服务/版本,请提交以下指纹到http://www.insecure.org/cgi-bin/servicefp-submit.cgi :

SF-Port548-TCP:V=4.76%I=7%D=5/14%Time=4A0C5929%P=i386-apple-darwin9.4.0%r( SF:SSLSessionReq,172,"\x01\x03\0\0Q\xec\xff\xff\0\0\x01b\0\0\0\0\0\x18\0\" AD9 SF:6FA5112ED039C\0\x04mini"); MAC Address: 00:16:CB:A3:27:E4 (Apple Computer) Service Info: OS: Mac OS X Host script results: | Discover OS Version over NetBIOS and SMB: Unix |_ Discover system time over SMB: 2009-05-14 12:49:02 UTC-5 Service detection performed. Please report any incorrect results athttp://nmap.org/submit/ . Nmap done: 1 IP address (1 host up) scanned in 119.68 seconds

现在管理员知道它是MAC操作系统X,并且它用于使用Samba的Windows文件分享,它最可能通过CUPS分享打印机,并且这个系统是针对远程管理用虚拟网络计算配置。

安全的Nmap运用

正如上文所说的,Nmap对管理员来说很实用,它在安全审计方面的能力也很强大。例如,很多公司不允许网络服务器在用户网络中运行如连接了用户电脑和笔记本的网络)。Nmap可以通过运行在知名端口80和443的网络服务很容易地用于识别所有系统:

nmap -n -p 80,443 192.168.1.0/24 | egrep "ports|open" Interesting ports on 192.168.1.1: 80/tcp open http 443/tcp open https Interesting ports on 192.168.1.2: Interesting ports on 192.168.1.3: Interesting ports on 192.168.1.4: Interesting ports on 192.168.1.5:

另一个有用的特征是识别特定版本来决定系统是否易受某一预报弱点的攻击。例如,让我们假设Samba团队已经预报一项某特定版本Samba的安全事故,你需要辨认所有的Samba版本。下文报告这些Samba版本:

nmap -n -sV -p 139 192.168.1.0/24 | egrep "ports|139" Interesting ports on 192.168.1.1: 139/tcp closed netbios-ssn Interesting ports on 192.168.1.2: 139/tcp closed netbios-ssn Interesting ports on 192.168.1.3: 139/tcp filtered netbios-ssn Interesting ports on 192.168.1.4: 139/tcp open netbios-ssn Samba smbd 3.2 (workgroup: HQ) Interesting ports on 192.168.1.5: 139/tcp open netbios-ssn Samba smbd 2.1 (workgroup: REMOTE)
Interesting ports on 192.168.1.15: 139/tcp open netbios-ssn Samba smbd 3.2 (workgroup: WORKGROUP)

该技巧已经展示了Nmap如何用于网络盘点扫描、更彻底的盘点和审计、识别未授权服务并协助安全攻击评估。Nmap是随时可用的好工具„把它和检索目标行命令或搜索文件中的特定字符串连结在一起,它会变成有力的报告工具。

相关内容