《漏洞扫描技术ppt》由会员分享,可在线阅读,更多相关《漏洞扫描技术ppt(48页珍藏版)》请在金锄头文库上搜索。
1、漏洞扫描技术,教研部 2014-10-12,了解漏洞扫描原理 了解漏洞扫描技术 掌握漏洞扫描主要方法 掌握漏洞扫描工具的使用 学会撰写漏洞扫描报告,课程目标,目录,什么是“漏洞” ? 系统安全漏洞也叫系统脆弱性(vulnerability),简称漏洞,是计算机系统在硬件、软件、协议的设计和实现过程中或系统安全策略上存在的缺陷或不足,未授权用户可以利用漏洞获得对系统或者资源的额外权限,获取原本不能获取的信息,从而破坏信息的安全性。,漏洞扫描概述,漏洞产生的原因: 1、网络协议漏洞 2、配置不当导致的系统漏洞 3、应用软件系统安全的脆弱性,漏洞扫描概述,漏洞的分类: 漏洞的分类方式多种多样。经常使
2、用的分类方式为: 1、高级危险漏洞 允许恶意用户访问,并可能破会整个目标系统的漏洞。 2、中级危险漏洞 允许有限权限的本地用户未经授权提高权限的漏洞。 3、低级危险漏洞 不允许恶意用户访问或进入目标系统,但可以得到某些关于目标系统的信息甚至是机密信息的漏洞。,漏洞扫描概述,漏洞有哪些危害? 系统的完整性 系统的可用性 系统的机密性 系统的可控性 系统的可靠性,漏洞扫描概述,什么是漏洞扫描? 漏洞扫描是指基于漏洞数据库,通过扫描等手段对指定的远程或者本地计算机系统的安全脆弱性进行检测,发现可利用的漏洞的一种安全检测(渗透攻击)行为。 漏洞扫描的意义: 安全扫描技术是一类重要的网络安全技术。安全扫
3、描技术与防火墙、入侵检测系统互相配合,能够有效提高网络的安全性。通过对网络的扫描,网络管理员可以了解网络的安全配置和运行的应用服务,及时发现安全漏洞,客观评估网络风险等级。网络管理员可以根据扫描的结果更正网络安全漏洞和系统中的错误配置,在黑客攻击前进行防范。如果说防火墙和网络监控系统是被动的防御手段,那么安全扫描就是一种主动的防范措施,可以有效避免黑客攻击行为,做到防患于未然。,漏洞扫描概述,目录,网络漏洞扫描进行工作时,首先探测目标系统的存活主机,对存活主机进行端口扫描,确定系统开放的端口,同时根据协议指纹技术识别出主机的操作系统类型。然后跟据目标系统的操作,系统平台和提供的网络服务,调用漏
4、洞资料库中已知的各种漏洞进行逐一检测,通过对探测响应数据包的分析判断是否存在漏洞。 当前的漏洞扫描技术主要是基于特征匹配原理,一些漏洞扫描器通过检测目标主机不同的端口开放的服务,记录其应答,然后与漏洞库进行比较,如果满足匹配条件,则认为存在安全漏洞。所以漏洞库的精确性影响最终的扫描结果。,漏洞扫描基本原理,主机漏洞扫描(被动扫描): 通常在目标系统上安装了一个代理(Agent)或者是服务(Services)以便能够访问所有的文件与进程,以此来扫描计算机中的漏洞 。 网络漏洞扫描(主动扫描): 通过网络来扫描远程计算机中的漏洞 ,基于网络的漏洞扫描可以看作为一种漏洞信息收集,他根据不同漏洞的特性
5、 构造网络数据包,发给网络中的一个或多个目标服务器,以判断某个特定的漏洞是否存在。,漏洞扫描主要策略,扫描: 对目标系统进行扫描,就是通过与目标主机TCPIP端口建立连接并请求某些服务(如FTP,HTTP等),记录目标主机的应答,从而收集目标系统的安全漏洞信息。 模拟攻击: 通过模拟黑客的攻击手法,对目标主机系统进行攻击性的安全漏洞扫描,如测试弱势口令等。若模拟攻击成功,则表明目标主机系统存在安全漏洞。,漏洞扫描主要方法,(1)ICMP Echo(反射)直接扫描 目标:判断在一个网络上的主机是否开机。 实现原理:向目标主机发送ICMP Echo Request数据包,等待回复的ICMP Ech
6、o Reply包。 优点:简单(ping工具)。 缺点:容易被防火墙限制。 (2)Broadcast ICMP扫描 目标:探测大量主机信息。 实现原理:将ICMP请求包的目标地址设为广播地址或网络地址,只适合Unix/Linux系统,Windows会忽略这种请求,所以可以初步判定系统类型。 缺点:容易产生广播风暴,如果机器数量多有可能产生拒绝服务现象。,漏洞扫描主要方法:(一)传统扫描,(3)ICMP Timestamp(时间戳)扫描 目标:用来探测是否采用了MS Windows操作系统。 实现原理:使用时间戳请求(type 13),会让远端主机应答时间戳(type 14),但是只有Unix系
7、统出现这种情况,MS Windows系统IP堆栈中没有此项功能,根据回答可以判断。 (4)ICMP Address Mask Request扫描 目标:探测路由器,了解网络拓扑结构。 实现原理:地址掩码请求(type 16),只会被路由器通过地址掩码应答(type 17)来回答。地址掩码请求可以识别各种三层设备,收集子网信息,对于了解网络拓扑结构很有用。,漏洞扫描主要方法:(一)传统扫描,(5)ICMP Time Exceeded扫描 目标:探测路由器的IP。 实现原理:超时报文(type 11)通常用于错误处理,也可以用于定位网络。在IP数据包的包头中,有一个生命期(TTL)值,每当IP数据
8、包通过一个IP层时,TTL值就会减少。TTL的作用是防止IP数据包在网络进行永久性循环。起始值最大为255。(tracert/traceroute) (6)其他ICMP扫描 例如:Non-Echo ICMP扫描,必须每种扫描都要设计单独的处理脚本,复杂度的提高比信息获取程度的增加要大得多,基本不采用。,漏洞扫描主要方法:(一)传统扫描,(1)开放扫描 TCP Connect()扫描 实现原理:通过调用connect连接到目标计算机上,完成一次完整的三次握手过程。如果服务处于侦听状态,connect()就能成功返回。否则,这个端口不可用。 TCP反向Ident扫描 实现原理:ident协议允许看
9、到通过TCP连接的任何进程的拥有者的用户名,比如连接到http端口,然后用identd来发现服务器是否正在以root权限运行。,漏洞扫描主要方法:(二)端口扫描,(2)隐蔽扫描 TCP FIN扫描 实现原理:扫描器向目标主机端口发送FIN包。当一个FIN数据包到达一个关闭的端口,数据包会被丢掉,并且返回一个RST数据包。适用于Unix目标主机(cisco/hp)。 TCP Xmas扫描和TCP Null扫描 实现原理:这两种扫描是FIN扫描的两个变种。Xmas扫描打开FIN,URG和PUSH标记,而Null扫描关闭所有标记。这些组合的目的是为了通过对FIN标记数据包的过滤。当一个这种数据包到达
10、一个关闭的端口,数据包会被丢掉,并且返回一个RST数据包。否则,若是打开的端口,数据包只是简单的丢掉(不返回RST)。,漏洞扫描主要方法:(二)端口扫描,(2)隐蔽扫描 TCP Proxy扫描 实现原理:FTP代理连接选项,其目的是允许一个客户端同时跟两个FTP服务器建立连接,然后再服务器之间直接传输数据。实际上能够使得FTP服务器发送文件到Ineternet的任何地方。 分段扫描 实现原理:并不直接发送TCP探测数据包,是将数据包分成两个较小的IP段。这样就将一个TCP头分成好几个数据包,从而包过滤器就很难探测到。,漏洞扫描主要方法:(二)端口扫描,(3)半开放扫描 TCP SYN扫描 实现
11、原理:扫描器向目标主机端口发送SYN包。如果应答是RST包,那么说明端口是关闭的;如果应答中包含SYN和ACK包,说明目标端口处于监听状态,再传送一个RST包给目标机从而停止建立连接。 TCP间接扫描 实现原理:利用第三方IP来隐藏真正扫描者的IP。由于扫描主机会对欺骗主机发送回应信息,所以必须监控欺骗主机IP行为,从而获得原始点的扫描结果。,漏洞扫描主要方法:(二)端口扫描,IP欺骗 缓冲区溢出 Ddos 口令猜解等,漏洞扫描主要方法:(三)模拟测试,目录,扫描器的种类,网络扫描器 模拟攻击对目标进行攻击探测,找出脆弱点。 主机扫描器 一般针对本地主机,找出脆弱点,防止被攻击者利用。 服务扫
12、描器 探测目标主机开放端口来分析目标可能运行的服务。 数据库扫描器 只针对数据库的弱点探测工具,主要从数据库的认证、授权/系统集成、基线比较等方面进行分析。 专用扫描器 专门针对某一漏洞或者服务相关信息收集的扫描器。如CGI扫描器,DNS扫描,ASP等脚本扫描。,X-Scan的使用,X-Scan是由安全焦点开发的完全免费的漏洞扫描软件,采用多线程方式对指定IP地址或IP地址范围进行漏洞扫描 扫描内容包括: 远程服务类型 操作系统类型及版本 各种弱口令漏洞 后门 应用服务漏洞 网络设备漏洞 拒绝服务漏洞等二十几个大类,X-Scan的使用,X-Scan的使用,启动X-Scan,X-Scan的界面,
13、X-Scan的使用,X-Scan的使用,X-Scan的使用,X-Scan的使用,X-Scan的使用,NT-Server弱口令漏洞 如果目标主机的用户账户存在很容易被猜测出来的弱口令,则X-Scan将能够扫描出来并标识为高风险级别的“漏洞”,X-Scan的使用,“冲击波”漏洞 通过X-Scan可以扫描出目标主机所存在的“冲击波”蠕虫病毒所利用的漏洞(MS03-026/ KB823980),Zenmap的使用,Zenmap的使用,Nmap 扫描类型 扫描选项 目标 “Scan Type(s)”用于指定扫描类型, “Options”用于指定选项, “target specification”用于指定
14、扫描目标,Nmap的语法:,-sT 指定Nmap进行TCP connect()扫描 -sS 指定Nmap进行TCP SYN扫描 -sF、-sX、-sN 指定Nmap进行FIN、Xmas和Null扫描 -sP 指定Nmap进行Ping扫描 -sU 指定Nmap进行UDP扫描 -sA 指定Nmap进行TCP ACK扫描 -sR 指定Nmap进行RPC扫描 -b 指定Nmap进行FTP 反弹攻击,Nmap的主要参数:扫描类型,-P0 指定Nmap在扫描之前,不必Ping目标主机 -PT 指定Nmap在扫描之前,使用TCP确定哪些主机正在运行 -PS 指定Nmap使用TCP SYN对目标主机进行扫描
15、-PI 指定Nmap使用真正的Ping来扫描目标主机是否正在运行,同时 还可 以对直接子网广播地址进行观察 -PB 指定Nmap使用TCP ACK和ICMP echo请求两种扫描类型并行扫描 -O 指定Nmap对TCP/IP指纹特征的扫描 -I 指定Nmap进行反向标志扫描 -f 指定Nmap使用IP分片数据包发送SYN、FIN、Xmas和NULL扫描的 数据包 -v 指定Nmap在扫描时使用冗余模式 -oN 指定Nmap将扫描结果重定向到一个文件中,Nmap的主要参数:选项参数,-resume 指定Nmap扫描接着以前未完成的扫描进行 -iL 选项可以指定Nmap从文件中读取要扫描的目标 -
16、p 指定Nmap选择要进行扫描的端口号范围 -F 指定Nmap执行快速扫描模式 -D 指定Nmap使用欺骗扫描方法对目标网络和主机进 行扫描 -S 指定Nmap扫描时的源IP地址 -e 指定Nmap使用哪个网络接口发送和接收数 据包 -g 指定扫描的源端口 -r 指定Nmap顺序地扫描端口,Nmap的主要参数:选项参数,使用Nmap扫描指定网络中正在运行的主机 例1:使用Nmap的Ping扫描技术探测网络172.16.10.0/24中正在运行的主机 例2:使用TCP ACK技术来探测IP地址范围在172.16.10.100至172.16.10.200中正在运行的主机,Nmap的使用实例(一),# nmap -sP 172.16.10.0/24,# nmap -sP -PT80 172.16.10.100-200,使用Nmap扫描目标主机上开放的TCP端口 例1:使用Nmap的TCP connect()扫描技术扫描IP地址为172.16.10.195的主机上11024之间开放的TCP端口,并显示详细的信息 例2:使用Nmap的TC