第4章端口与系统漏洞检测.ppt
《第4章端口与系统漏洞检测.ppt》由会员分享,可在线阅读,更多相关《第4章端口与系统漏洞检测.ppt(69页珍藏版)》请在课桌文档上搜索。
1、系统安全检测是系统管理员必须要做的一项工作,当一个系统架设好后,系统的管理和维护就是系统管理员的主要任务了。为了能更好地防御黑客攻击,系统管理员必须要学会像 黑客攻击那样对系统进行安全检测的方法,然后根据得到的检测结果进行相关的安全设置。因此,系统管理员必须要熟练掌握常用的系统检测工具,本章介绍了几款不错的安全检测工具,包括端口扫描、插件扫描和系统漏洞扫描。,本章概述,第 4 章 端口扫描与系统漏洞检测,第 4 章 端口扫描与系统漏洞检测,4.2 端口扫描工具,4.3 插件扫描,4.4 系统安全检测,4.1 扫描原理,4.5 小结,4.1 扫描原理,绝大多数应用程序都运行在TCP或UDP协议之
2、上,这些协议是众多应用程序使用的传输机制。端口扫描就是通过扫描主机确定哪一些TCP和UDP端口可以访问的过程。TCP数据包的6个标志位(代表了不同的数据包)具体如下:URG:紧急数据包ACK:确认(应答数据包)PSH:将数据强制压入缓冲区RST:连接复位(断开连接)SYN:连接请求FIN:TCP连接结束,4.1.1 一次完整的TCP连接,TCP报文格式,4.1 扫描原理,4.1.1 一次完整的TCP连接,4.1 扫描原理,TCP是可靠的面向连接的协议,传输数据报之前,必须先采用“三次握手”的方式建立传输连接。TCP协议同样采用客户机/服务器模式。客户机:主动发起建立连接请求的主机。服务器:等待
3、并接受连接建立请求的主机。,4.1.1 一次完整的TCP连接,图4-1 TCP三次握手过程,常见的端口扫描类型有以下几种:TCP Connect()扫描SYN扫描NULL扫描FIN扫描ACK扫描 Xmas-Tree扫描Dumb扫描,4.1.2 端口扫描类型与原理,4.1 扫描原理,1.TCP Connect()扫描这种扫描试图与每一个TCP端口进行“三次握手”通信,如果能够成功建立连接,则证明端口开放,否则为关闭。优点:准确性高缺点:最容易被防火墙或入侵检测系统检测到,而且在目标主机的日志中会记录大批连接请求以及错误信息。,4.1.2 端口扫描类型与原理,4.1 扫描原理,2.SYN扫描这种扫
4、描隐蔽一些,仅仅发送初始的SYN数据包给目标主机,如果端口处于开放状态,那么目标主机将响应SYN-ACK数据包;如果端口处于关闭状态,则目标主机响应RST数据包。优点:能躲开某些防火墙的检测缺点:许多IDS能够检测到SYN扫描,4.1.2 端口扫描类型与原理,4.1 扫描原理,3.NULL扫描(反向扫描)这种扫描将一个没有设置任何标志位的数据包发送给TCP端口。正常的TCP通信中,至少要设置标志位。根据RFC 793的要求,端口关闭的状态下,若收到没设置标志位的数据字段,则接收主机应该丢弃这个分段,并返回一个RST数据包,否则不会响应。优点:可以辨别某台主机运行的是哪种操作系统。缺点:使用NU
5、LL扫描要求所有主机都必须符合RFC 793标准,但现实中Windows系统主机并不遵从RFC 793标准(不管端口是否开放,收到无标志位的数据包时都返回RST数据包),故精确度相对低一些。,4.1.2 端口扫描类型与原理,4.1 扫描原理,4.FIN扫描(反向扫描)这种扫描将一个设置了FIN标志的数据包发送给目标主机的每一个端口。端口关闭的状态下,若收到设置FIN标志位的数据字段,则接收主机返回一个RST数据包,否则不会响应,则表示端口开放。优点:更隐蔽一些。缺点:现实中Windows系统主机并不遵从RFC 793标准,故精确度相对低一些。,4.1.2 端口扫描类型与原理,4.1 扫描原理,
6、5.ACK扫描这种扫描使用响应包来发现防火墙的配置信息。如果某个端口被防火墙过滤,那么就不会返回数据包。若没被过滤,则返回RST数据包。通过侦听RST数据包,可了解哪些端口被防火墙过滤,哪些端口没有被防火墙过滤。优点:常用于穿越防火墙的规则集。,4.1.2 端口扫描类型与原理,4.1 扫描原理,6.Xmas-Tree扫描(圣诞树扫描)这种扫描发送带有URG、PSH、FIN三种标志的TCP数据包。正常的TCP连接不应该同时设置这3个标志。优点:能识别部分端口是否关闭。缺点:依然不能确定Windows平台上端口的关闭与开放。,4.1.2 端口扫描类型与原理,4.1 扫描原理,7.Dump扫描(哑扫
7、描,Idle扫描或反向扫描)这是另一种扫描方法,在扫描目标主机的过程中,它使用第三方的僵尸计算机作为“哑”主机进行扫描。僵尸主机是一台被入侵的空闲主机。典型情况下,这台主机并不存储敏感数据,对这样的主机的访问通常不引人注目。在Idle扫描中,僵尸主机向目标主机发SYN包,目标主机根据端口的不同状态,发送不同的回应:端口开放时回应SYN/ACK,端口关闭时回应RST。僵尸主机对SYN/ACK回应RST,对RST不回应。因此,通过监控僵尸主机的发包数量就可以知道目标主机端口的状态。优点:隐蔽性强,该扫描不是发自自己的计算机,而是发自某个僵尸主机。,4.1.2 端口扫描类型与原理,4.1 扫描原理,
8、4.1 扫描原理,漏洞扫描主要通过以下两种方法来检查目标主机是否存在漏洞:1.漏洞库的匹配方法:端口扫描后得知目标主机开启的端口以及端口上的网络服务,将这些相关信息与网络漏洞扫描系统提供的漏洞库进行匹配,查看是否有满足条件的漏洞存在。2.插件技术(功能模块技术):通过模拟黑客的攻击手法,对目标主机系统进行攻击性的安全漏洞扫描,如测试弱口令等,若模拟成功,则表明目标主机系统存在安全漏洞。,4.1.3 漏洞扫描原理,4.1 扫描原理,1.漏洞库的匹配方法基于网络系统漏洞库的漏洞扫描的关键部分就是它所使用的漏洞库。通过采用基于规则的匹配技术,即根据安全专家对网络系统安全漏洞、黑客攻击案例的分析和系统
9、管理员对网络系统安全配置的实际经验,可以形成一套标准的网络系统漏洞库,然后在此基础上构成相应的匹配规则,由扫描程序自动进行漏洞扫描工作。漏洞库信息的完整性和有效性决定了漏洞扫描系统的性能,漏洞库的修订和更新的性能也会影响漏洞扫描系统运行的时间。,4.1.3 漏洞扫描原理,4.1 扫描原理,2.插件技术(功能模块技术)插件是由脚本语言编写的子程序,扫描程序可以通过调用它来执行漏洞扫描,检测出系统中存在的一个或多个漏洞。添加新插件可以使漏洞扫描软件增加新的功能。用户可以用Perl、C或自行设计的脚本语言编写插件来扩充漏洞扫描功能。,4.1.3 漏洞扫描原理,4.2 扫描工具,可以用它来扫描局域网内
10、所有活动主机或某一台主机所开放的端口,查找IP/主机名,ICMP/路由跟踪,HTTP HEAD/GET请求,Whois等,以及针对Windows系统的多种枚举类型。,4.2.1 Superscan的使用,4.2 扫描工具,4.2.1 Superscan的使用,4.2 扫描工具,4.2.1 Superscan的使用,4.2 扫描工具,4.2.1 Superscan的使用,4.2 扫描工具,4.2.1 Superscan的使用,4.2 扫描工具,4.2.1 Superscan的使用,4.2 扫描工具,4.2.1 Superscan的使用,4.2 扫描工具,4.2.1 Superscan的使用,4.
11、2 扫描工具,4.2.2 Nmap的使用-简介,Nmap是目前为止最广为使用的国外端口扫描工具。其官方网站是:http:/www.nmap.org/从官方网站上可以下载Nmap的最新版本,Nmap支持Windows操作系统和Unix类操作系统,在Unix类操作系统中Nmap是集成到系统安装程序中的,在Windows下Nmap有命令行下的版本和图形界面下的版本。,打开官方网站:http:/www.nmap.org/下载nmap-4.76-win32.zip 和 nmap-4.76-setup.exe解压安装Winpcap,注册表导入开始-运行,打开CMD,进入Nmap目录,运行,输入Nmap或N
12、map h查看帮助,4.2 扫描工具,4.2.2 Nmap的使用-下载并安装,Nmap被开发用于允许系统管理员查看一个大的网络系统有哪些主机以及其上运行何种服务。它支持多种协议的扫描,TCP connect()、TCP SYN(half open)、ICMP ping、FIN、ACK、Xmas-Tree、SYN 和Null扫描等。Nmap还提供一些实用功能,如通过TCP/IP来辨别操作系统类型、秘密扫描、动态延迟和重发、通过并行的PING侦测下属的主机、欺骗扫描、端口过滤探测、直接的RPC扫描、分布扫描、灵活的目标选择以及端口的描述等。运行Nmap后通常会得到一个关于你扫描的机器的一个实用的端
13、口列表。Nmap总是显示该服务的服务名称、端口号、状态以及协议。,4.2 扫描工具,4.2.2 Nmap的使用-Nmap的特点,Nmap所能识别的6个状态如下:open(开放的)应用程序正在该端口接收TCP 连接或者UDP报文。发现这一点通常是端口扫描的主要目标。安全意识强的人们知道每个开放的端口都有可能是攻击的入口。攻击者或者入侵测试者想要发现开放的端口。而管理员则试图关闭它们或者用防火墙保护它们以免妨碍了合法用户。2.closed(关闭的)关闭的端口对于Nmap也是可访问的(它接受Nmap的探测报文并作出响应),但没有应用程序在其上监听。因关闭的端口是可访问的,也许稍后再扫描,可能一些端口
14、又开放了。系统管理员可能会考虑用防火墙封锁这样的端口。那样他们就会被显示为被过滤的状态。,4.2 扫描工具,4.2.2 Nmap的使用-Nmap所能识别的端口状态,3.filtered(被过滤的)由于包过滤阻止探测报文到达端口,Nmap无法确定该端口是否开放。过滤可能来自专业的防火墙设备,路由器规则或者主机上的软件防火墙。普遍的是过滤器只是丢弃探测帧,不做任何响应。这迫使Nmap重试若干次以防万一探测包是由于网络阻塞而丢弃的。这使得扫描速度明显变慢。4.unfiltered(未被过滤的)未被过滤状态意味着端口可访问,但Nmap不能确定它是开放还是关闭。只有用于映射防火墙规则集的ACK扫描才会把
15、端口分类到这种状态。用其它类型的扫描如SYN扫描,或者FIN扫描来扫描未被过滤的端口可以帮助确定端口是否开放。,4.2 扫描工具,4.2.2 Nmap的使用-Nmap所能识别的端口状态,5.open|filtered(开放或者被过滤的)当无法确定端口是开放还是被过滤时,Nmap就把该端口划分成这种状态。开放的端口不响应就是一个例子。没有响应也可能意味着报文过滤器丢弃了探测报文或者它引发的其它响应。因此Nmap无法确定该端口是开放的还是被过滤的。FIN,Null,和Xmas-Tree扫描可能把端口归入此类。6.closed|filtered(关闭或者被过滤的)该状态用于Nmap不能确定端口是关闭
16、的还是被过滤的。它只可能出现在IP Idle扫描中。,4.2 扫描工具,4.2.2 Nmap的使用-Nmap所能识别的端口状态,Nmap的使用格式如下:nmap 扫描类型 选项 目标主机如:nmap-sS v 192.168.0.88关于目标主机,最简单的形式是直接输入一个主机名(域名)或者一个IP地址。如果希望扫描某个IP地址的一个子网,可以使用CIDR的表示方式,如192.168.1.0/24表示192.168.1网段内的所有主机。Nmap 可以灵活地指定IP地址。例如:如果要扫描这个B类网络 128.210.*.*,可以使用下面三种方式来指定这些地址:128.210.*.*128.210
17、.0-255.0-255128.210.0.0/16这三种形式是等价的。,4.2 扫描工具,4.2.2 Nmap的使用-Nmap使用格式,-sT(TCP connect()扫描)这是对TCP的最基本形式的侦测。如果该端口被监听,则连接成功,否则代表这个端口无法到达。这个技术的很大好处就是你无须任何特殊权限,在大多数的系统下这个命令可以被任何人自由地使用。缺点:很容易被目标主机察觉并记录下来。因为服务器接受了一个连接但它却马上断开,于是其记录会显示出一连串的连接及错误信息。-sS(TCP SYN 扫描)这是一种“半开”扫描,因为不打开完整的TCP连接,发送一个SYN信息包就像要打开一个真正的连接
18、在等待对方的回应。一个SYNACK(应答)会表明该端口是开放监听的。一个RST则代表该端口未开放。如果SYNACK的回应返回,则会马上发送一个RST包来中断这个连接。最大好处:只有极少的站点会对它作出记录,但需要有root权限来定制这些SYN包。,4.2 扫描工具,4.2.2 Nmap的使用-Nmap使用格式,-sF-sX sN(FIN、Xmas-Tree和Null扫描)有时甚至SYN扫描都不够隐蔽,一些防火墙及信息包过滤装置会在重要端口守护,SYN包在此时会被截获。使用这三种方式可以进一步确定端口的开放情况,相对SYN扫描更加隐蔽,但其准确性要低一些。-sP(Ping扫描)仅希望了解网络上哪
19、些主机是开放的,Nmap可以通过对指定IP发送ICMP的echo request信息包来做到这一点,有回应的主机就是开放的。但一些站点对echo request包设置了障碍,这样的话Nmap还能发送一个TCP ACK包到80端口(默认),如果获得了RST返回,机器是开放的。第三个方法是发送一个SYN信息包并等待RST 或SYNACK响应。作为非root的用户可以使用的,常用connect()模式。对root来说,默认的Nmap同时使用ICMP和ACK方法扫描,不想探测任何实际端口扫描只想大面积搜索一下活动主机,可以使用此选项。,4.2.2 Nmap的使用-Nmap使用格式,4.2 扫描工具,-
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 端口 系统漏洞 检测
链接地址:https://www.desk33.com/p-740759.html