网络安全技术漏洞扫描-c7娱乐电子游戏官网
若水分享
1147
1 引言
网洛扫瞄,是基于internetde、探测远端网洛或主机信息de一种技术,也是保证系统和网洛安全必不可少de一种手段。主机扫瞄,是指对计算机主机或者其它网洛设备进行安全性检测,以找出安全隐患和系统漏洞。总体而言,网洛扫瞄和主机扫瞄都可归入漏洞扫瞄一类。漏洞扫瞄本质上是一把双刃剑:黑客利用它来寻找对网洛或系统发起攻击de途径,而系统管理员则利用它来有效防范黑客入侵。通过漏洞扫瞄,扫瞄者能够发现远端网洛或主机de配置信息、 tcp/udp端口de分配、提供de网洛服务、服务器de具体信息等。
2 漏洞扫瞄原理
漏洞扫瞄可以划分为ping扫瞄、端口扫瞄、os探测、脆弱点探测、防火墙扫瞄五种主要技术,每种技术实现de目标和运用de原理各不相同。按照 tcp/ip协议簇de结构,ping扫瞄工作在互联网洛层:端口扫瞄、防火墙探测工作在传输层;0s探测、脆弱点探测工作在互联网洛层、传输层、应用层。 ping扫瞄确定目标主机deip地址,端口扫瞄探测目标主机所开放de端口,然后基于端口扫瞄de结果,进行os探测和脆弱点扫瞄。
2.1 ping扫瞄
ping扫瞄是指侦测主机ip地址de扫瞄。ping扫瞄de目de,就是确认目标主机detcp/ip网洛是否联通,即扫瞄deip地址是否分配了主机。对没有任何预知信息de黑客而言,ping扫瞄是进行漏洞扫瞄及入侵de第一步;对已经了解网洛整体ip划分de网洛安全人员来讲,也可以借助 ping扫瞄,对主机deip分配有一个精确de定位。大体上,ping扫瞄是基于icmp协议de。其主要思想,就是构造一个icmp包,发送给目标主机,从得到de响应来进行判断。根据构造icmp包de不同,分为ech0扫瞄和non—echo扫瞄两种。
2.1.1 ech0扫瞄
向目标ip地址发送一个icmp echorequest(icmp type 8)de包,等待是否收至uicmp echo reply(icmp type 0)。如果收到了icmp echo reply,就表示目标ip上存在主机,否则就说明没有主机。值得注意de是,如果目标网洛上de防火墙配置为阻止icmp ech0流量,ech0扫瞄不能真实反映目标ip上是否存在主机。
此外,如果向广播地址发送icmpecho request,网洛中deunix主机会响应该请求,而windows主机不会生成响应,这也可以用来进行os探测。
2.1.2 non-ech0扫瞄
向目deip地址发送一个icmp timestamp request(icmp type l3),或icmp address mask request (icmp type l7)de包,根据是否收到响应,可以确定目de主机是否存在。当目标网洛上de防火墙配置为阻止icmp ech0流量时,则可以用non.ech0扫瞄来进行主机探测。
2.2端口扫瞄
端口扫瞄用来探测主机所开放de端口。端口扫瞄通常只做最简单de端口联通性测试,不做进一步de数据分析,因此比较适合进行大范围de扫瞄:对指定 ip地址进行某个端口值段de扫瞄,或者指定端口值对某个ip地址段进行扫瞄。根据端口扫瞄使用de协议,分为tcp扫瞄和udp扫瞄。
2.2.1 tcp扫瞄
主机间建立tcp连接分三步(也称三次握手):
(1)请求端发送一个syn包,指明打算连接de目de端口。
(2)观察目de端返回de包:
返回syn/ack包,说明目de端口处于侦听状态;
返回rst/ack包,说明目de端口没有侦听,连接重置。
(3)若返回syn/ack包,则请求端向目de端口发送ack包完成3次握手,tcp连接建立。
根据tcp连接de建立步骤,tcp扫瞄主要包含两种方式:
(1)tcp全连接和半连接扫瞄
全连接扫瞄通过三次握手,与目de主机建立tcp连接,目de主机delog文件中将记录这次连接。而半连接扫瞄(也称tcp syn扫瞄)并不完成tcp三次握手de全过程。扫瞄者发送syn包开始三次握手,等待目de主机de响应。如果收到syn/ack包,则说明目标端口处于侦听状态,扫瞄者马上发送rst包,中止三次握手。因为半连接扫瞄并没有建立tcp连接,目de主机delog文件中可能不会记录此扫瞄。
(2)tcp隐蔽扫瞄
根据tcp协议,处于关闭状态de端口,在收到探测包时会响应rst包,而处于侦听状态de端口则忽略此探测包。根据探测包中各标志位设置de不同,tcp隐蔽扫瞄又分为syn/ack扫瞄、fin扫瞄、xmas(圣诞树)扫瞄和null扫瞄四种。
syn/ack扫瞄和fin扫瞄均绕过tcp三次握手过程de第一步,直接给目de端口发送syn/ack包或者fin包。因为tcp是基于连接de 协议,目标主机认为发送方在第一步中应该发送desyn包没有送出,从而定义这次连接过程错误,会发送一个rst包以重置连接。而这正是扫瞄者需要de结果— 只要有响应,就说明目标系统存在,且目标端口处于关闭状态。
xmas扫瞄和null扫瞄:这两类扫瞄正好相反,xmas扫瞄设置tcp包中所有标志位(urg、ack、rst、psh、syn、fin),而null扫瞄则关闭tcp包中de所有标志位。
2.2.2 udp端口扫瞄
udp协议是数据包协议,为了要发现正在服务deudp端口,通常de扫瞄方式是构造一个内容为空deudp数据包送往目de端口。若目de端口上有服务正在等待,则目de端口返回错误de消息;若目de端口处于关闭状态,则目de主机返回icmp端口不可达消息。因为udp端口扫瞄软件要计算传输中丢包de数量,所以udp端口扫瞄de速度很慢。
2.3 0s探测
os探测有双重目de:一是探测目标主机de0s信息,二是探测提供服务de计算机程序de信息。比如os探测de结果是:os是windows xp sp3,服务器平台是iis 4.0。
2.3.1二进制信息探测
通过登录目标主机,从主机返回debanner中得知os类型、版本等,这是最简单de0s探测技术。
图1 二进制信息
从图l可以看出,在telnet连上ftp服务器后,服务器返回debanner已经提供了serverde信息,在执行ftpdesyst命令后可得到更具体de信息。
2.3.2 http响应分析
在和目标主机建立http连接后,可以分析服务器de响应包得出os类型。比如响应包中可能包含如下信息:
图2 响应包分析
从图2中对响应包中de数据分析,可以得到serverde信息。
2.3.3栈指纹分析
网洛上de主机都会通过tcp/ip或类似de协议栈来互通互联。由于0s开发商不唯一,系统架构多样,甚至是软件版本de差异,都导致了协议栈具体实现上de不同。对错误包de响应,默认值等都可以作为区分0sde依据。
(1)主动栈指纹探测
主动栈指纹探测是主动向主机发起连接,并分析收到de响应,从而确定os类型de技术。
1)fin探测。跳过tcp三次握手de顺序,给目标主机发送一个fin包。rfc793规定,正确de处理是没有响应,但有些os,如ms windows,cisc0,hp/ux等会响应一个rst包。
2)bogus标志探测。某些os会设置syn包中tcp头de未定义位(一般为64或128),而某些0s在收到设置了这些bogus位desyn包后,会重置连接。
3)统计icmp error报文。rfcl812中规定了icmp error消息de发送速度。linux设定了目标不可达消息上限为80个/4秒。0s探测时可以向随机de高端udp端口大量发包,然后统计收到de目标不可达消息。用此技术进行os探测时时间会长一些,因为要大量发包,并且还要等待响应,同时也可能出现网洛中丢包de情况。
4)icmperror报文引用。rfc文件中规定,icmp error消息要引用导致该消息deicmp消息de部分内容。例如对于端口不可达消息,某些os返回收到deip头及后续de8个字节,solaris 返回de error消息中则引用内容更多一些,而linux比solaris还要多。
(2)被动栈指纹探测
被动栈指纹探测是在网洛中监听,分析系统流量,用默认值来猜测0s类型de技术。
1)tcp初始化窗口尺寸。通过分析响应中de初始窗口大小来猜测osde技术比较可靠,因为很多0sde初始窗口尺寸不同。比如aix设置de初始窗口尺寸是0x3f25,而windows nt5、openbsd、freebsd设置de值是0x402e。
2)don’t fragment位。为了增进性能,某些0s在发送de包中设置了df位,可以从df位de设置情况中做大概de判断。
3)tcpisn采样。建立tcp连接时,syn/ack中初始序列号isnde生成存在规律,比如固定不变、随机增加 (solaris,freebsd等),真正de随机(linux 2.0.*),而windows使用de是时间相关模型,isn在每个不同时间段都有固定de增量。
2.4脆弱点扫瞄
从对黑客攻击行为de分析和脆弱点de分类,绝大多数扫瞄都是针对特定操作系统中特定de网洛服务来进行,即针对主机上de特定端口。脆弱点扫瞄使用de技术主要有基于脆弱点数据库和基于插件两种。
2.4.1基于脆弱点数据库de扫瞄
首先构造扫瞄de环境模型,对系统中可能存在de脆弱点、过往黑客攻击案例和系统管理员de安全配置进行建模与分析。其次基于分析de结果,生成一套标准de脆弱点数据库及匹配模式。最后由程序基于脆弱点数据库及匹配模式自动进行扫瞄工作。脆弱点扫瞄de准确性取决于脆弱点数据库de完整性及有效性。
2.4.2基于插件de扫瞄
插件是由脚本语言编写de子程序模块,扫瞄程序可以通过调用插件来执行扫瞄。添加新de功能插件可以使扫瞄程序增加新de功能,或者增加可扫瞄脆弱点 de类型与数量。也可以升级插件来更新脆弱点de特征信息,从而得到更为准确de结果。插件技术使脆弱点扫瞄软件de升级维护变得相对简单,而专用脚本语言de使用也简化了编写新插件de编程工作,使弱点扫瞄软件具有很强de扩展性。
2.5防火墙规则探测
采用类似于traceroutedeip数据包分析法,检测能否给位于过滤设备后de主机发送一个特定de包,目de是便于漏洞扫瞄后de入侵或下次扫瞄de顺利进行。通过这种扫瞄,可以探测防火墙上打开或允许通过de端口,并且探测防火墙规则中是否允许带控制信息de包通过,更进一步,可以探测到位于数据包过滤设备后de路由器。
3 常见漏洞扫瞄程序
通常在制定漏洞扫瞄策略时,扫瞄者会考虑程序de操作系统、所应用de技术、易用性、准确性等因素。其中,程序de可用性是最重要de,也是最基本de,但是可控性和准确性同样不容忽视。
3.1 unix/linux平台
3.1.1 hping
hping支持tcp、udp、icmp、raw-ip多种协议。特点在于能进行ping扫瞄、端口扫瞄、0s探测、防火墙探测等多种扫瞄,并能自定义发送deicmp/udp/tcp包到目标地址并且显示响应信息。
3.1.2 icmpush&icmpquery
icmpush&icmpqueryde特点在于完全应用了icmp协议,可以定制icmp包de结构以及种类。扫瞄者可以用这套工具把目标网洛de各个子网全部查找出来,从而可以撇开广播地址而集中扫瞄某几个特定de子网。
3.1.3 xprobe 2
是专业de端口扫瞄、os探测程序。特点在于自身de0s特征数据库详细,进行os探测de可靠性较好。
3.1.4 thc-anap
os探测程序。特点在于扫瞄速度快,扫瞄结果可靠。
3.1.5 whisker
针对cgide脆弱点探测程序。应用了多线程、多文件扫瞄技术,脆弱点数据库更新频繁,对扫瞄结果自行复核,从而扫瞄结果可靠性好。
3.1.6 nessus
脆弱点探测程序。应用了主动扫瞄、高速扫瞄技术,可设置扫瞄过程。特点在于支持dmz区以及多物理分区网洛de大范围扫瞄。
3.1.7 firewalk
防火墙探测程序。使用类似traceroutede技术来分析ip包de响应,从而测定防火墙de访问控制列表和绘制网洛拓扑图。
3.2 windows平台
3.2.1 pinger
是一个图形化deping扫瞄工具。特点在于可以指定要pingdeip地址,以图形de形式显示扫瞄结果,并保存至文本文件。
3.2.2 fport
是端口扫瞄程序。特点在于可以把扫瞄出de端口与使用该端口de程序相匹配,扫瞄速度快,匹配程度较好。
3.2.3 superscan
可以进行ping扫瞄、端口扫瞄、0s探测,并且白带一个木马端口列表,可以检测目标计算机是否有木马。
3.2.4 gfilanguard
脆弱点探测程序。特点在于集成了网洛审计、补丁管理功能,可以自动生成网洛拓扑图、自动补丁管理。
上述漏洞扫瞄程序及特点如表1所示。
4 结论
一般而言,综合地应用多种扫瞄方法或扫瞄程序可以得到比较满意de结果。但是漏洞扫瞄从其技术原理上分析,有不可忽视de副作用。比如对大范围de ip地址或者端口进行某种扫瞄,反复高速de发出特定de连接请求,所造成de结果就是目标网洛及主机上存在大量de连接请求数据包,可以造成网洛拥塞,主机无法正常使用,这正是dos攻击de方法及表现。因此若要防范漏洞扫瞄以及可能dedos攻击,要做到以下三点:
1.在防火墙及过滤设备上采用严格de过滤规则,禁止扫瞄de数据包进入系统。
2.主机系统除了必要de网洛服务外,禁止其它de网洛应用程序。
3.对于只对内开放de网洛服务,更改其提供服务de端口。
此外,网洛扫瞄时发送de数据或多或少都会含有扫瞄者自身相关信息,从而也可以抓取扫瞄时de数据包,对扫瞄者进行反向追踪,这也是一个值得研究de方向。
网洛扫瞄,是基于internetde、探测远端网洛或主机信息de一种技术,也是保证系统和网洛安全必不可少de一种手段。主机扫瞄,是指对计算机主机或者其它网洛设备进行安全性检测,以找出安全隐患和系统漏洞。总体而言,网洛扫瞄和主机扫瞄都可归入漏洞扫瞄一类。漏洞扫瞄本质上是一把双刃剑:黑客利用它来寻找对网洛或系统发起攻击de途径,而系统管理员则利用它来有效防范黑客入侵。通过漏洞扫瞄,扫瞄者能够发现远端网洛或主机de配置信息、 tcp/udp端口de分配、提供de网洛服务、服务器de具体信息等。
2 漏洞扫瞄原理
漏洞扫瞄可以划分为ping扫瞄、端口扫瞄、os探测、脆弱点探测、防火墙扫瞄五种主要技术,每种技术实现de目标和运用de原理各不相同。按照 tcp/ip协议簇de结构,ping扫瞄工作在互联网洛层:端口扫瞄、防火墙探测工作在传输层;0s探测、脆弱点探测工作在互联网洛层、传输层、应用层。 ping扫瞄确定目标主机deip地址,端口扫瞄探测目标主机所开放de端口,然后基于端口扫瞄de结果,进行os探测和脆弱点扫瞄。
2.1 ping扫瞄
ping扫瞄是指侦测主机ip地址de扫瞄。ping扫瞄de目de,就是确认目标主机detcp/ip网洛是否联通,即扫瞄deip地址是否分配了主机。对没有任何预知信息de黑客而言,ping扫瞄是进行漏洞扫瞄及入侵de第一步;对已经了解网洛整体ip划分de网洛安全人员来讲,也可以借助 ping扫瞄,对主机deip分配有一个精确de定位。大体上,ping扫瞄是基于icmp协议de。其主要思想,就是构造一个icmp包,发送给目标主机,从得到de响应来进行判断。根据构造icmp包de不同,分为ech0扫瞄和non—echo扫瞄两种。
2.1.1 ech0扫瞄
向目标ip地址发送一个icmp echorequest(icmp type 8)de包,等待是否收至uicmp echo reply(icmp type 0)。如果收到了icmp echo reply,就表示目标ip上存在主机,否则就说明没有主机。值得注意de是,如果目标网洛上de防火墙配置为阻止icmp ech0流量,ech0扫瞄不能真实反映目标ip上是否存在主机。
此外,如果向广播地址发送icmpecho request,网洛中deunix主机会响应该请求,而windows主机不会生成响应,这也可以用来进行os探测。
2.1.2 non-ech0扫瞄
向目deip地址发送一个icmp timestamp request(icmp type l3),或icmp address mask request (icmp type l7)de包,根据是否收到响应,可以确定目de主机是否存在。当目标网洛上de防火墙配置为阻止icmp ech0流量时,则可以用non.ech0扫瞄来进行主机探测。
2.2端口扫瞄
端口扫瞄用来探测主机所开放de端口。端口扫瞄通常只做最简单de端口联通性测试,不做进一步de数据分析,因此比较适合进行大范围de扫瞄:对指定 ip地址进行某个端口值段de扫瞄,或者指定端口值对某个ip地址段进行扫瞄。根据端口扫瞄使用de协议,分为tcp扫瞄和udp扫瞄。
2.2.1 tcp扫瞄
主机间建立tcp连接分三步(也称三次握手):
(1)请求端发送一个syn包,指明打算连接de目de端口。
(2)观察目de端返回de包:
返回syn/ack包,说明目de端口处于侦听状态;
返回rst/ack包,说明目de端口没有侦听,连接重置。
(3)若返回syn/ack包,则请求端向目de端口发送ack包完成3次握手,tcp连接建立。
根据tcp连接de建立步骤,tcp扫瞄主要包含两种方式:
(1)tcp全连接和半连接扫瞄
全连接扫瞄通过三次握手,与目de主机建立tcp连接,目de主机delog文件中将记录这次连接。而半连接扫瞄(也称tcp syn扫瞄)并不完成tcp三次握手de全过程。扫瞄者发送syn包开始三次握手,等待目de主机de响应。如果收到syn/ack包,则说明目标端口处于侦听状态,扫瞄者马上发送rst包,中止三次握手。因为半连接扫瞄并没有建立tcp连接,目de主机delog文件中可能不会记录此扫瞄。
(2)tcp隐蔽扫瞄
根据tcp协议,处于关闭状态de端口,在收到探测包时会响应rst包,而处于侦听状态de端口则忽略此探测包。根据探测包中各标志位设置de不同,tcp隐蔽扫瞄又分为syn/ack扫瞄、fin扫瞄、xmas(圣诞树)扫瞄和null扫瞄四种。
syn/ack扫瞄和fin扫瞄均绕过tcp三次握手过程de第一步,直接给目de端口发送syn/ack包或者fin包。因为tcp是基于连接de 协议,目标主机认为发送方在第一步中应该发送desyn包没有送出,从而定义这次连接过程错误,会发送一个rst包以重置连接。而这正是扫瞄者需要de结果— 只要有响应,就说明目标系统存在,且目标端口处于关闭状态。
xmas扫瞄和null扫瞄:这两类扫瞄正好相反,xmas扫瞄设置tcp包中所有标志位(urg、ack、rst、psh、syn、fin),而null扫瞄则关闭tcp包中de所有标志位。
2.2.2 udp端口扫瞄
udp协议是数据包协议,为了要发现正在服务deudp端口,通常de扫瞄方式是构造一个内容为空deudp数据包送往目de端口。若目de端口上有服务正在等待,则目de端口返回错误de消息;若目de端口处于关闭状态,则目de主机返回icmp端口不可达消息。因为udp端口扫瞄软件要计算传输中丢包de数量,所以udp端口扫瞄de速度很慢。
2.3 0s探测
os探测有双重目de:一是探测目标主机de0s信息,二是探测提供服务de计算机程序de信息。比如os探测de结果是:os是windows xp sp3,服务器平台是iis 4.0。
2.3.1二进制信息探测
通过登录目标主机,从主机返回debanner中得知os类型、版本等,这是最简单de0s探测技术。
图1 二进制信息
从图l可以看出,在telnet连上ftp服务器后,服务器返回debanner已经提供了serverde信息,在执行ftpdesyst命令后可得到更具体de信息。
2.3.2 http响应分析
在和目标主机建立http连接后,可以分析服务器de响应包得出os类型。比如响应包中可能包含如下信息:
图2 响应包分析
从图2中对响应包中de数据分析,可以得到serverde信息。
2.3.3栈指纹分析
网洛上de主机都会通过tcp/ip或类似de协议栈来互通互联。由于0s开发商不唯一,系统架构多样,甚至是软件版本de差异,都导致了协议栈具体实现上de不同。对错误包de响应,默认值等都可以作为区分0sde依据。
(1)主动栈指纹探测
主动栈指纹探测是主动向主机发起连接,并分析收到de响应,从而确定os类型de技术。
1)fin探测。跳过tcp三次握手de顺序,给目标主机发送一个fin包。rfc793规定,正确de处理是没有响应,但有些os,如ms windows,cisc0,hp/ux等会响应一个rst包。
2)bogus标志探测。某些os会设置syn包中tcp头de未定义位(一般为64或128),而某些0s在收到设置了这些bogus位desyn包后,会重置连接。
3)统计icmp error报文。rfcl812中规定了icmp error消息de发送速度。linux设定了目标不可达消息上限为80个/4秒。0s探测时可以向随机de高端udp端口大量发包,然后统计收到de目标不可达消息。用此技术进行os探测时时间会长一些,因为要大量发包,并且还要等待响应,同时也可能出现网洛中丢包de情况。
4)icmperror报文引用。rfc文件中规定,icmp error消息要引用导致该消息deicmp消息de部分内容。例如对于端口不可达消息,某些os返回收到deip头及后续de8个字节,solaris 返回de error消息中则引用内容更多一些,而linux比solaris还要多。
(2)被动栈指纹探测
被动栈指纹探测是在网洛中监听,分析系统流量,用默认值来猜测0s类型de技术。
1)tcp初始化窗口尺寸。通过分析响应中de初始窗口大小来猜测osde技术比较可靠,因为很多0sde初始窗口尺寸不同。比如aix设置de初始窗口尺寸是0x3f25,而windows nt5、openbsd、freebsd设置de值是0x402e。
2)don’t fragment位。为了增进性能,某些0s在发送de包中设置了df位,可以从df位de设置情况中做大概de判断。
3)tcpisn采样。建立tcp连接时,syn/ack中初始序列号isnde生成存在规律,比如固定不变、随机增加 (solaris,freebsd等),真正de随机(linux 2.0.*),而windows使用de是时间相关模型,isn在每个不同时间段都有固定de增量。
2.4脆弱点扫瞄
从对黑客攻击行为de分析和脆弱点de分类,绝大多数扫瞄都是针对特定操作系统中特定de网洛服务来进行,即针对主机上de特定端口。脆弱点扫瞄使用de技术主要有基于脆弱点数据库和基于插件两种。
2.4.1基于脆弱点数据库de扫瞄
首先构造扫瞄de环境模型,对系统中可能存在de脆弱点、过往黑客攻击案例和系统管理员de安全配置进行建模与分析。其次基于分析de结果,生成一套标准de脆弱点数据库及匹配模式。最后由程序基于脆弱点数据库及匹配模式自动进行扫瞄工作。脆弱点扫瞄de准确性取决于脆弱点数据库de完整性及有效性。
2.4.2基于插件de扫瞄
插件是由脚本语言编写de子程序模块,扫瞄程序可以通过调用插件来执行扫瞄。添加新de功能插件可以使扫瞄程序增加新de功能,或者增加可扫瞄脆弱点 de类型与数量。也可以升级插件来更新脆弱点de特征信息,从而得到更为准确de结果。插件技术使脆弱点扫瞄软件de升级维护变得相对简单,而专用脚本语言de使用也简化了编写新插件de编程工作,使弱点扫瞄软件具有很强de扩展性。
2.5防火墙规则探测
采用类似于traceroutedeip数据包分析法,检测能否给位于过滤设备后de主机发送一个特定de包,目de是便于漏洞扫瞄后de入侵或下次扫瞄de顺利进行。通过这种扫瞄,可以探测防火墙上打开或允许通过de端口,并且探测防火墙规则中是否允许带控制信息de包通过,更进一步,可以探测到位于数据包过滤设备后de路由器。
3 常见漏洞扫瞄程序
通常在制定漏洞扫瞄策略时,扫瞄者会考虑程序de操作系统、所应用de技术、易用性、准确性等因素。其中,程序de可用性是最重要de,也是最基本de,但是可控性和准确性同样不容忽视。
3.1 unix/linux平台
3.1.1 hping
hping支持tcp、udp、icmp、raw-ip多种协议。特点在于能进行ping扫瞄、端口扫瞄、0s探测、防火墙探测等多种扫瞄,并能自定义发送deicmp/udp/tcp包到目标地址并且显示响应信息。
3.1.2 icmpush&icmpquery
icmpush&icmpqueryde特点在于完全应用了icmp协议,可以定制icmp包de结构以及种类。扫瞄者可以用这套工具把目标网洛de各个子网全部查找出来,从而可以撇开广播地址而集中扫瞄某几个特定de子网。
3.1.3 xprobe 2
是专业de端口扫瞄、os探测程序。特点在于自身de0s特征数据库详细,进行os探测de可靠性较好。
3.1.4 thc-anap
os探测程序。特点在于扫瞄速度快,扫瞄结果可靠。
3.1.5 whisker
针对cgide脆弱点探测程序。应用了多线程、多文件扫瞄技术,脆弱点数据库更新频繁,对扫瞄结果自行复核,从而扫瞄结果可靠性好。
3.1.6 nessus
脆弱点探测程序。应用了主动扫瞄、高速扫瞄技术,可设置扫瞄过程。特点在于支持dmz区以及多物理分区网洛de大范围扫瞄。
3.1.7 firewalk
防火墙探测程序。使用类似traceroutede技术来分析ip包de响应,从而测定防火墙de访问控制列表和绘制网洛拓扑图。
3.2 windows平台
3.2.1 pinger
是一个图形化deping扫瞄工具。特点在于可以指定要pingdeip地址,以图形de形式显示扫瞄结果,并保存至文本文件。
3.2.2 fport
是端口扫瞄程序。特点在于可以把扫瞄出de端口与使用该端口de程序相匹配,扫瞄速度快,匹配程度较好。
3.2.3 superscan
可以进行ping扫瞄、端口扫瞄、0s探测,并且白带一个木马端口列表,可以检测目标计算机是否有木马。
3.2.4 gfilanguard
脆弱点探测程序。特点在于集成了网洛审计、补丁管理功能,可以自动生成网洛拓扑图、自动补丁管理。
上述漏洞扫瞄程序及特点如表1所示。
4 结论
一般而言,综合地应用多种扫瞄方法或扫瞄程序可以得到比较满意de结果。但是漏洞扫瞄从其技术原理上分析,有不可忽视de副作用。比如对大范围de ip地址或者端口进行某种扫瞄,反复高速de发出特定de连接请求,所造成de结果就是目标网洛及主机上存在大量de连接请求数据包,可以造成网洛拥塞,主机无法正常使用,这正是dos攻击de方法及表现。因此若要防范漏洞扫瞄以及可能dedos攻击,要做到以下三点:
1.在防火墙及过滤设备上采用严格de过滤规则,禁止扫瞄de数据包进入系统。
2.主机系统除了必要de网洛服务外,禁止其它de网洛应用程序。
3.对于只对内开放de网洛服务,更改其提供服务de端口。
此外,网洛扫瞄时发送de数据或多或少都会含有扫瞄者自身相关信息,从而也可以抓取扫瞄时de数据包,对扫瞄者进行反向追踪,这也是一个值得研究de方向。