| 操作系统 办公 实用知识 设计 开发 WEB开发 移动开发 数据库 软件工程 网管 安全 管理 信息化 答疑 渠道 |
漏洞扫描产品的购买指南漏洞扫描器的分类
漏洞扫描器通常以三种形式出现:单一的扫描软件,安装在计算机或掌上电脑上,例如ISS Internet Scanner;基于客户机(管理端)/服务器(扫描引擎)模式或浏览器/服务器模式,通常为软件,安装在不同的计算机上,也有将扫描引擎做成硬件的,例如Nessus;其他安全产品的组件,例如防御安全评估就是防火墙的一个组件。 网络漏洞扫描器通过远程检测目标主机TCP/IP不同端口的服务,记录目标给予的应答,来搜集目标主机上的各种信息,然后与系统的漏洞库进行匹配,如果满足匹配条件,则认为安全漏洞存在;或者通过模拟黑客的攻击手法对目标主机进行攻击,如果模拟攻击成功,则认为安全漏洞存在。 主机漏洞扫描器则通过在主机本地的代理程序对系统配置、注册表、系统日志、文件系统或数据库活动进行监视扫描,搜集他们的信息,然后与系统的漏洞库进行比较,如果满足匹配条件,则认为安全漏洞存在。 在匹配原理上,目前漏洞扫描器大都采用基于规则的匹配技术,即通过对网络系统安全漏洞、黑客攻击案例和网络系统安全配置的分析,形成一套标准安全漏洞的特征库,在此基础上进一步形成相应的匹配规则,由扫描器自动完成扫描分析工作。 端口扫描技术 网络漏洞扫描是建立在端口扫描的基础上的,支持TCP/IP协议的主机和设备,都是以开放端口来提供服务,端口可以说是系统对外的窗口,安全漏洞也往往通过端口暴露出来。因此,网络漏洞扫描器为了提高扫描效率,首先需要判断系统的那些端口是开放的,然后对开放的端口执行某些扫描脚本,以进一步寻找安全漏洞。扫描器一般集成了以下几种主要的端口扫描技术。 TCP SYN扫描 通常称为“半打开”扫描,这是因为扫描程序不必要打开一个完全的TCP连接。扫描程序发送的是一个SYN数据包,好象准备打开一个实际的连接并等待反应一样(参考TCP的三次握手建立一个TCP连接的过程)。一个SYN/ACK的返回信息表示端口处于侦听状态。一个RST返回,表示端口没有处于侦听状态。 TCP FIN扫描 TCP FIN扫描的思路是关闭的端口使用适当的RST来回复FIN数据包,而打开的端口会忽略对FIN数据包的回复。这种方法与系统实现有一定的关系,有的系统不管端口是否打开,都回复RST,在这种情况下,该扫描方法就不适用了,但可以区分Unix和Windows NT TCP connect()扫描 这是最基本的TCP扫描。操作系统提供的connect()系统调用,用来与每一个感兴趣的目标计算机的端口进行连接。如果端口处于侦听状态,那么connect()就能成功。否则,这个端口是不能用的,即没有提供服务。 FIN+URG+PUSH扫描 向目标主机发送一个FIN、URG和PUSH 分组,根据RFC793,如果目标主机的相应端口是关闭的,那么应该返回一个RST标志。 NULL扫描 通过发送一个没有任何标志位的TCP包,根据RFC793,如果目标主机的相应端口是关闭的,它应该发送回一个RST数据包。 UDP ICMP端口不能到达扫描 在向一个未打开的UDP端口发送一个数据包时,许多主机会返回一个ICMP_PORT_UNREACH 错误。这样就能发现哪个端口是关闭的。UDP和ICMP错误都不保证能到达,因此这种扫描器必须能够重新传输丢失的数据包。这种扫描方法速度很慢,因为RFC对ICMP错误消息的产生速率做了规定。
今日推荐
|
重点推荐
领军企业技术文库
+更多领军技术文库
最新专题
电子杂志订阅
| ||||||||