操作系统指纹识别工具Nmap与Xprobe的分析和研究_0
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
操作系统指纹识别工具Nmap与Xprobe的分析和研究
摘要目前,网络安全与信息安全问题日益严峻,通常黑客们利用操作系统指纹识别工具进行网络扫描,大肆攻击入侵网络服务器与私人计算机。因此,本文全方位地介绍了两个目前最为流行的操作系统指纹识别工具Nmap与Xprobe,对它们的工作原理进行了深入的分析研究,并通过实验测试Nmap与Xprobe在不同的操作系统环境下对远程主机进行扫描探测的能力,比较二者识别操作系统指纹的准确程度,以及归纳总结出在何种情况下,Nmap与Xprobe会达到最准确最可靠的探测结果。
关键字Nmap;Xprobe;探测;远程主机
The Analysis and Study on the Fingerprint Identification Tools Nmap and Xprobe in Operating System
ZHANG Qi
College of Medical Information Engineering,
Guangdong Pharmaceutical University, Guangzhou 510006, China
Abstract Nowadays network security and information security problem is very serious. Hackers often use system fingerprinting tool to scan the network, and then attack some web servers and personal computers. Therefore, this paper introduced Nmap and Xprobe which are nowadays most popular system fingerprinting tools in all aspects, deep analysis their working principle, and test Nmap and Xprobe’s scanning detection abilities under six different operating systems, compare their results. Finally, it is summarized that Nmap and Xprobe have high-effective and precise detection results under any circumstances.
Keywords Nmap; Xprobe;detection;remote machine
0 引言
随着网络技术的迅猛发展,今天的Internet已经从各个方面改变着人们的工作与生活方式,它已经成为我们生活中必不可少的一部分。但与此同时,黑客们利用网络漏洞大肆攻击入侵网络服务器与私人计算机,使网络安全与信息安全问题日益严峻。因此,为了更好的保护网络不受黑客的攻击,就必须对黑客的攻击方法、攻击原理及过程有深入详细的了解。而网络扫描是黑客攻击的第一步,他们利用
一些网络探测工具对远程计算机进行扫描,其目的就是精确地判别出远程目标主机的操作系统的类型与版本、以及查出正在监听的端口等等,从而有针对性地对其实施攻击。
本文具体分析研究了操作系统指纹识别工具Nmap与Xprobe的工作原理,以及二者在不同操作系统环境下探测远程目标主机的能力与准确性。
1 Nmap的介绍
Nmap是一个免费开放的网络扫描和嗅探工具包,也叫网络映射器(Network Mapper),其基本功能有3个:一是探测一组主机是否在线;其次是扫描主机端口,嗅探所提供的网络服务;三是可以推断主机所用的操作系统[1]。通常,网络管理员利用Nmap来进行网络系统安全的评估,而黑客则用其扫描网络,通过向远程主机发送探测数据包,获取主机的响应,并根据主机的端口开放情况,得到网络的安全状况,寻找存在漏洞的目标主机,从而实施下一步的攻击[2]。
1.1 Nmap的工作原理
Nmap使用TCP/IP协议栈指纹来准确地判断出目标主机的操作类型。首先,Nmap通过对目标主机进行端口扫描,找出有哪些端口正在目标主机上监听。当侦测到目标主机上有多于一个开放的TCP端口、一个关闭的TCP端口和一个关闭的UDP端口时, Nmap的探测能力是最好的。然后,Nmap对目标主机进行一系列测试(如表1),利用得出的测试结果建立相应的目标主机的Nmap指纹。最后,将此Nmap指纹与指纹库中指纹进行查找匹配,从而得出目标主机的操作系统类型。
1.2 Nmap的主要扫描类型
常用的扫描类型有Ping扫描(Ping Sweeping)、端口扫描(PortScanning) 、隐蔽扫描(Stealth Scanning)、UDP扫描(UDP Scanning)与操作系统识别(OS Fingerprinting)等等。无论是对内网还是外网的扫描,Nmap都是很灵活的,且语法非常简单,由Nmap的不同选项和-s标志组成,下面的例子(图1)是一个对内网进行的Ping扫描。
2 Xprobe的介绍
Xprobe2是基于ICMP栈指纹特征的主动探测远程操作系统类型的工具,通过主动发送UDP和ICMP请求报文到目标主机来触发ICMP消息,根据ICMP消息中网络特征值进行基于签名数据库的模糊匹配以及合理的推测,通过模糊矩阵统计分析来探测操作系统,从而确定远程操作系统的类型[3]。
在Xprobe2探测过程中,会发送不同类型的数据包到目标主机上,同时也会收到目标主机发送的响应数据包。当每收到响应数据包时,都会根据该数据包的网络特征值进行打分,来预测是何种操作系统的可能性。例如,3分代表肯定,2分代表有可能是,1分代表有可能不是,0分代表肯定不是。然后,针对不同的操作系统类型i,将每次测试的得分数进行加和,以总分来判断远程操作系统的类型,其判断的模糊矩阵(如表2)。在整个探测过程中,Xprobe2将依次进行三类测试,分别是探索模块、信息采集模块和指纹模块(如表3)。因此,Xprobe2与Nmap的严格匹配操作系统指纹不同,它会根据与签名数据库探测数据包的特征值推测出结果。
3 实验过程