13-14年网络安全-5漏洞扫描

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

网络安全陈黎丽计算机系网络教研室cici_608@163.com课程安排周数:1-15周课时:75课时考试方式:闭卷成绩:平时成绩40%+考试成绩60%课程安排平时成绩40分:考勤10分:第1次缺课扣2分;第2次扣2分,3次扣2分,3次以上考勤成绩0分;作业10分:三次不交此项为0分;期中测评15分;课堂表现5分。第5章漏洞扫描5.1计算机漏洞5.2实施网络扫描5.3常用的网络扫描工具5.4不同的扫描策略目录5.1.1计算机漏洞的概念“漏洞”指的是计算机系统具有的某种的可能被侵入者恶意利用的属性。在计算机安全领域,安全漏洞通常又称为脆弱性。简单的说,计算机漏洞使系统的一组特性,恶意的主体能够利用这组特性,通过已授权的手段和方式获取对资源的未授权访问,或者对系统造成损害。此处的漏洞包括单个计算机系统的脆弱性,也包括计算机网络系统的漏洞。5.1计算机漏洞5.1.2公开的计算机漏洞信息1.通用漏洞和曝光(CVE)是一个公共安全漏洞和曝光信息的标准化名字列表。致力于为所有公开的漏洞和安全曝光名称标准化的工作。CVE不是一个数据库而是一个字典,目的是使不同的漏洞数据库共享数据和搜索信息变得更容易。5.1计算机漏洞5.1.3公开的计算机漏洞信息2.BugTrap漏洞数据库由SecurityFocus公司维护的一个关于计算机安全漏洞详情信息讨论的邮件列表,讨论内容包括漏洞的描述、漏洞的渗透方法及漏洞的修补方法等。5.1计算机漏洞5.1.3公开的计算机漏洞信息3.ICAT漏洞数据库由美国标准技术研究所NIST维护的的一个CVE兼容的漏洞信息检索索引。ICAT也提供下载的MicrosoftAccess格式的数据库文件。每条漏洞记录的信息包括漏洞的CVE名字、发布时间、描述、危险等级、漏洞类型、实施范围、受影响系统和参考链接等。5.1计算机漏洞5.1.3公开的计算机漏洞信息4.CERT/CC漏洞信息数据库也是一个CVE兼容的数据库。可以通过名字、ID号、CVE名字、公布日期、更新日期和严重性等方法索引漏洞信息。5.1计算机漏洞5.1.3公开的计算机漏洞信息5.X-Force数据库由ISS公司维护,是一个比较全面的漏洞信息数据库。可以在web页面上使用关键字对数据库进行检索,检索到的漏洞记录包括漏洞描述、受影响平台、补救措施、风险等级、影响结果、报告时间和参考链接等信息。5.1计算机漏洞一次完整的网络扫描分为下面三个阶段:1)发现目标主机或者网络2)发现目标后进一步搜集目标信息,包括操作系统类型、运行的服务及服务软件的版本等。3)根据搜集到的信息判断或者进一步检测系统是否存在安全漏洞。5.2实施网络扫描5.2实施网络扫描5.2实施网络扫描1.TCP/IP协议层次和协议集(1)网络接口层(SubNetworkLayer)TCP/IP协议的网络接口层与OSI协议的物理层、数据链路层以及网络层的部分相对应。该层没有规定新的物理层和数据链路层协议,允许通信子网采用已有的或将来的各种协议,例如以太网的802.3协议,分组交换网的X.25协议等。该层只定义了TCP/IP与各种通信子网之间的网络接口。网络接口层的功能是传输经网络层处理过的消息。5.2实施网络扫描1.TCP/IP协议层次和协议集(2)网络层(InternetLayer)该层与OSI网络层相对应,由于它是针对网际环境设计的,具有更强的网际通信能力。网络层协议为IP协议。它将传输层送来的消息组装成IP数据包,并且把IP数据包传递给网络接口层。IP提供端到端分组发送功能,标识网络号及主机节点地址的功能,为使IP数据包长度与通信子网允许的数据包长度匹配,提供了数据分段和重新组装的功能。该层还提供建立独立的局域网之间的互连网络。在互连网络中,连接两个以上网络的节点称为路由器(网关),其允许网间的报文根据它的目的地址通过路由器传送到另一个网络。5.2实施网络扫描(3)传输层(TransportLayer)该层与OSI传输层相对应,为应用程序提供端到端通信功能。传输层有3个主要协议,其分别为传输控制协议TCP,用户数据报协议UDP和互联网控制消息协议ICMP。TCP协议负责将用户数据按规定长度组成数据包发送,在接收端对数据包按顺序进行分解重组以恢复用户数据。TCP协议是以建立高可靠性信息传输为目的,为了可靠传输数据,该协议具有数据包的顺序控制、差错检测、检验以及再发送控制等功能。5.2实施网络扫描UDP协议负责主机和网关以及Internet运行管理中心等的信息通信,控制管理网络的运行。ICMP协议负责当数据包传输有误时,发送出错信息给数据包发送端主机,另外还具有控制数据包流量的功能。(4)应用层(ApplicationLayer)该层包含了OSI会话层,表示层和应用层的功能,为用户提供各类服务。例如,远程登陆、文件传输、电子邮件、Web服务器等。5.2实施网络扫描5.2.1发现目标通常称为ping扫射,包括ICMP扫射、广播ICMP、非回显ICMP、TCP扫射、UDP扫射。1.ICMP扫射ICMP是IP层的一个组成部分,用来传递差错报文和其他需要注意的信息。经常用到ping命令就是使用的ICMP。ICMP报文在IP数据报内部传输的,如图5-1所示图5-1ICMP报文封装在IP数据报内5.2实施网络扫描5-2ICMP报文格式ICMP扫射利用了类型为8的ICMP报文,即ICMP回显请求。通常网络上受到ICMP回显请求的主机都回向请求者发送ICMP回显应答(类型为0)报文。5.2实施网络扫描ICMP报文格式如图5-2所示。报文的前两个字节决定了报文的类型。第3个和第4个字节是ICMP报文的校验和字段。ICMP扫射工具比较多。UNIX环境中主要有ping和fping,gping。ping:ping命令是第一个必须掌握的DOS命令,它所利用的原理是这样的:利用网络上机器IP地址的唯一性,给目标IP地址发送一个数据包,再要求对方返回一个同样大小的数据包来确定两台网络机器是否连接相通,时延是多少。5.2实施网络扫描fping:扫射多个IP地址时,速度明显超过ping的速度。gping:与fping一同使用,为fping声称扫射的IP地址列表。5.2实施网络扫描•广播ICMP与ICMP扫射一样,广播ICMP也是利用了ICMP回显应答这两种报文。与前者不同的是,广播的ICMP只需要向目标网络的网络地址和/或广播地址发送一两个回显请求,就能够收到目标网络中所有存活主机的ICMP回显应答。eg.网络192.168.1.0/24中有4台活动主机,期中192.168.1.1和192.168.1.2运行的是Linux,192.168.1.3和1962.168.1.4运行的是Windos操作系统5.2实施网络扫描\[root@localhostroot\]#ping192.168.1.0-bWARNING:pingingbroadcastaddressPING192.168.1.0(192.168.1.0)from192.168.1.1:56(84)bytesofdata.64bytesfrom192.168.1.1:icmp_seq=1ttl=255time=0.36ms64bytesfrom192.168.2.1:icmp_seq=2ttl=255time=0.565ms64bytesfrom192.168.1.1:icmp_seq=3ttl=255time=0.164ms(dup!)64bytesfrom192.168.2.1:icmp_seq=4ttl=255time=0.246ms(dup!)5.2实施网络扫描3.非回显ICMP如果目标主机阻塞了ICMP回显请求报文,仍然可以通过使用其他类型的ICMP报文探测目标主机是否存活。eg:类型13的ICMP报文,ICMP时间戳请求允许系统向另一个系统查询当前时间;类型17的ICMP报文,ICMP地址掩码请求用于无盘系统引导过程中获得自己的子网掩码。5.2实施网络扫描下面的一个例子使用一个叫icmpenum的工具对目标进行ICMP时间戳请求探测。[root@localhostroot]#icmpenum-i2-c192.168.1.0192.168.1.1isup192.168.1.2isup192.168.1.3isup192.168.1.4isup5.2实施网络扫描对于ICMP地址掩码请求报文而言,虽然RFC1122规定,除非是地址掩码的授权代理,否则一个系统不能发送地址掩码应答(为了成为授权代理,必须进行特殊配置)。但是,大多主机在收到请求时都会发送一个应答,甚至有些主机还回发送差错的应答。所以也可以使用类型17的ICMP报文来探测主机是都存活。4.TCP扫射5.2实施网络扫描5-3TCP报文封装在IP数据报中4.TCP扫射传输控制协议(transmissioncontrolprotocol,TCP)为应用层提供一种面向连接的、可靠地字节流服务。与ICMP报文一样,TCP报文也是封装在一个IP数据报中。它使用“3次握手”的方式建立连接。5.2实施网络扫描4.TCP扫射5.2实施网络扫描基本原理:如果向目标发送一个SYN报文,则无论是收到SYN/ACK报文还是一个RST报文,都表明目标处于存活状态。与此类似,也可以向目标发送一个ACK报文,如果目标存活,则收到一个RST报文。TCP扫描看起来比用ICMP协议进行探测更加有效。但是TCP扫射也不是百分百可靠,有的防火墙能够伪造RST报文,从而造成防火墙后的某个主机存活的假象。5.2实施网络扫描5.UDP扫射用户数据报协议(userdatagramprotocol,UDP)是一个面向数据报的传输层协议。UDP数据报也封装在IP数据报之中,如图5-4。5.2实施网络扫描5-4UDP数据报封装在IP数据报中5.UDP扫射用户数据报协议(userdatagramprotocol,UDP)的规则之一是如果接收到一份目的端口并没有处于侦听状态的数据报,则发送一个ICMP端口不可到达报文;否则不做任何响应。5.2实施网络扫描5.2实施网络扫描5.2实施网络扫描5.2.2攫取信息广义上讲,在入侵系统之前所做的一切工作都可以为成为信息,包括踩点、扫描、查点。因为这些工作走势在搜索着这样或那样的信息。本小节主要讲的主要是扫描阶段攫取的技术和方法。在找出网络上存活的系统之后,下一步就是要得到主机的操作系统信息和开放的服务信息。用到的技术主要有端口扫描(portscanning)、服务识别和操作系统探测(OperatingSystemDetection)。3.操作系统探测5.2.2攫取信息1.端口扫描端口扫描主要取得目标主机开放的端口和服务信息,从而为下一步的“漏洞检测”做准备。(1)TCPconnect()扫描基本方法:是TCPconnect()扫描。他利用操作系统提供的connect()系统调用,与每一个感兴趣的目标计算机的端口进行连接。如果目标端口处于侦听状态,那么connet()就能成功;否则端口是不能用的,即没有提供服务。优点:不需要任何特殊权限,系统中的任何用户都有权利使用这个调用;缺点:容易被过滤或记录。对于安全管理员而言,使用此方法的唯一缺点是速度慢。3.操作系统探测5.2.2攫取信息3.操作系统探测(2)TCPSYN扫描又称“半开扫描”。TCP扫射时结识解释了建立TCP连接的“3次握手”过程。TCPSYN扫描只完成了3次握手过程的一半。当时我们只是说如果向目标特定端口发送一个SYN报文,只要接收到来自目标的响应就表明目标处于存活状态。但可以很容易看出,只要再一下收到的响应是SYN/ACK报文还是RST报文,便可知目标的响应端口是处于侦听状态还是关闭状态。(3)TCPACK扫描不适用于扫描目标打开了哪些端口,而用来探测防火墙的规则设计,从而确定防火墙是简单地包过滤还是状态监测机制。5.2.2攫取信息3.操作系统探测(4)TCPFin扫描如果处于侦听状态的端口接收到一个FIN报文,则不做任何回应;如果处于关闭状态的端口接收到一个F

1 / 79
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功