第五章TCPIP体系协议安全-2_第1页
第五章TCPIP体系协议安全-2_第2页
第五章TCPIP体系协议安全-2_第3页
第五章TCPIP体系协议安全-2_第4页
第五章TCPIP体系协议安全-2_第5页
已阅读5页,还剩46页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描TCP安全安全 TCP概述概述-TCP协议涉及到协议涉及到TCP报文段的结构、报文段的结构、TCP连接的建立与终止、连接的建立与终止、TCP数据的传输、流量控制、数据的传输、流量控制、差错控制、数据重传等内容。差错控制、数据重传等内容。连接建立连接建立-TCP是面向连接的。在面向连接的环境中,是面向连接的。在面向连接的环境中,开始传输数据之前,在两个终端之间必须先建立一开始传输数据之前,在两个终端之间必须先建立一个连接。个连接。建立连接的过程可以确保通信双方在发送用户数据建立连接的过程可以确保

2、通信双方在发送用户数据之前已经准备好了传送和接收数据。之前已经准备好了传送和接收数据。第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描TCP-面向连接的、端到端的可靠传输服务面向连接的、端到端的可靠传输服务第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描对于一个要建立的连接,通信双方必须用彼此的初对于一个要建立的连接,通信双方必须用彼此的初始化序列号始化序列号SEQ和来自对方成功传输确认的确认序和来自对方成功传输确认的确认序号号ACK来同步。(来同步。(ACK号指明希望收到的下一个字号指

3、明希望收到的下一个字节的编号)习惯上将同步信号写为节的编号)习惯上将同步信号写为SYN,应答信号,应答信号写为写为ACK。TCP连接建立时的三次握手连接建立时的三次握手第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描数据传输数据传输在连接建立后,在连接建立后,TCP将以全双工方式传送数据,在将以全双工方式传送数据,在同一时间主机同一时间主机A与主机与主机B之间可以同时进行之间可以同时进行TCP报文报文段的传输,并对接收到的段的传输,并对接收到的TCP报文段进行确认。当报文段进行确认。当第五章第五章 TCP/IPTCP/IP协议体系的安全协议

4、体系的安全-TCP-TCP安全和扫描安全和扫描通过三次握手建立了主机通过三次握手建立了主机A与主机与主机B之间的之间的TCP连接连接后,现在假设主机后,现在假设主机A要向主机要向主机B发送发送1800字节的数字节的数据,主机据,主机B要向主机要向主机A发送发送1500字节的数据。字节的数据。 TCP报文段的传输过程报文段的传输过程 第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描连接终止连接终止 对于一个已经建立的连接,对于一个已经建立的连接,TCP使用改进的三次握使用改进的三次握手来释放连接(使用一个带有手来释放连接(使用一个带有FIN附

5、加标记的报文附加标记的报文段,即在段,即在TCP报文段首部中将报文段首部中将FIN字段的值置为字段的值置为1)。)。TCP关闭连接的步骤如图所示。关闭连接的步骤如图所示。 TCP使用改进的三次握手来释放连接使用改进的三次握手来释放连接 第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描TCP的安全问题的安全问题-Bad TCP 要实现可靠的数据传输,首先要通过三次握手方式建立主机之间的要实现可靠的数据传输,首先要通过三次握手方式建立主机之间的TCP连连接,但在接,但在TCP连接过程中很容易出现一个严重的安全问题:连接过程中很容易出现一个严重的

6、安全问题:TCP SYN泛洪泛洪攻击。攻击。-拒绝服务攻击拒绝服务攻击DOS(Deny of Service)三次握手三次握手-当源主机当源主机A要建立与目的主机要建立与目的主机B之间的之间的TCP连接时,源主机连接时,源主机A首首先发送一个用于同步的先发送一个用于同步的SYN报文段(第一次握手)。当目的主机报文段(第一次握手)。当目的主机B接收到接收到这个报文段时,在正常情况下目的主机会打开连接端口,并给源主机这个报文段时,在正常情况下目的主机会打开连接端口,并给源主机A返返回一个回一个SYN+ACK的报文段(第二次握手)。的报文段(第二次握手)。 第五章第五章 TCP/IPTCP/IP协议

7、体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描在目的主机在目的主机B的队列中存在大量的的队列中存在大量的“半开放状态半开放状态”的连的连接,最终将队列的存储空间填满,并因资源耗尽而瘫痪。接,最终将队列的存储空间填满,并因资源耗尽而瘫痪。TCP SYN泛洪攻击的工作过程泛洪攻击的工作过程 源源IP地址是伪造的地址是伪造的(spoofed),目的主机无法目的主机无法通过通过TCP三次握手建立连接。三次握手建立连接。在此期间因为在此期间因为TCP缓存队列已经填满,而拒绝新的连接请求。缓存队列已经填满,而拒绝新的连接请求。目的主机一直尝试直至超时目的主机一直尝试直至超时(如如75秒秒)。

8、这就是该攻击类型的基本机制。这就是该攻击类型的基本机制。 第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描关于关于TCP SYN欺骗攻击欺骗攻击攻击者目的是使目标系统上的攻击者目的是使目标系统上的TCP连接请求表溢出。连接请求表溢出。从而不能对合法连接请求进行响应。从而不能对合法连接请求进行响应。假设目标主机系统上的假设目标主机系统上的TCP连接请求表项为连接请求表项为256项。项。目标系统的每次超时时间为目标系统的每次超时时间为30S,运行超时次数为,运行超时次数为5次。次。如果一个连接请求超时未有应答,而且超时次数大于如果一个连接请求超

9、时未有应答,而且超时次数大于5,那,那么这个请求将会么这个请求将会 从从TCP连接请求表中删除。连接请求表中删除。在没有相关的应对措施和攻击者已经占满了目标系统的在没有相关的应对措施和攻击者已经占满了目标系统的TCP连接请求表的情况下,为了能够持续占满目标系统的连接请求表的情况下,为了能够持续占满目标系统的TCP连连接请求表,攻击者应以什么样的速率发送接请求表,攻击者应以什么样的速率发送TCP连接请求?连接请求?第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描扫描扫描-Scan一种信息收集型攻击、其他攻击的初步一种信息收集型攻击、其他攻击的

10、初步Ping 扫射扫射(Ping Sweep)-端口扫描端口扫描(Port Scanning)Ping扫射:运用扫射:运用ping这样的程序探测目标地址,来发现那些目标在这样的程序探测目标地址,来发现那些目标在启动并运行。启动并运行。防火墙通常阻止防火墙通常阻止ICMP因而可以采用端口扫描:向大范围的主机连接一系列的因而可以采用端口扫描:向大范围的主机连接一系列的TCP端口或端口或UDP端口,扫描软件报告它成功的建立了连接的主机所开的端口。端口,扫描软件报告它成功的建立了连接的主机所开的端口。慢速扫描:由于一般扫描侦测器的实现是通过监视某个时间里一台慢速扫描:由于一般扫描侦测器的实现是通过监视

11、某个时间里一台特定主机发起的连接的数目(例如每秒特定主机发起的连接的数目(例如每秒10次)来决定是否在被扫描,次)来决定是否在被扫描,这样黑客可以通过使用扫描速度慢一些的扫描软件进行扫描。这样黑客可以通过使用扫描速度慢一些的扫描软件进行扫描。网络漏洞扫描器网络漏洞扫描器- 网络入侵者收集信息的重要手段网络入侵者收集信息的重要手段第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描-由于系统管理员的疏忽或缺乏经验,导致旧有的漏由于系统管理员的疏忽或缺乏经验,导致旧有的漏洞依然存在洞依然存在-许多人出于好奇或别有用心,不停的窥视网上资源许多人出于好

12、奇或别有用心,不停的窥视网上资源安全评估工具安全评估工具-系统管理员保障系统安全的有效工具系统管理员保障系统安全的有效工具第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描扫描器的主要功能扫描器的主要功能-扫描目标主机识别其工作状态(开扫描目标主机识别其工作状态(开/关机)关机)-识别目标主机端口的状态(监听识别目标主机端口的状态(监听/关闭)关闭)-识别目标主机系统及服务程序的类型和版本识别目标主机系统及服务程序的类型和版本-根据已知漏洞信息,分析系统脆弱点根据已知漏洞信息,分析系统脆弱点-生成扫描结果报告生成扫描结果报告第五章第五章 TC

13、P/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描扫描内容扫描内容-主机扫描主机扫描 确定在目标网络上的主机是否可达。这是信息收确定在目标网络上的主机是否可达。这是信息收 集的初集的初级阶段,其效果直接影响到后续的扫描。级阶段,其效果直接影响到后续的扫描。-端口扫描端口扫描当确定了目标主机可达后,就可以使用端口扫描技术,当确定了目标主机可达后,就可以使用端口扫描技术,发现目标主机的开放端口,包括网络协议和各种应用监发现目标主机的开放端口,包括网络协议和各种应用监听的端口。听的端口。-栈指纹栈指纹OS识别识别根据各个根据各个OS在在TCP/IP协议栈实现上的不同

14、特点,采用协议栈实现上的不同特点,采用黑盒测试方法,通过研究其对各种探测的响应形成识别黑盒测试方法,通过研究其对各种探测的响应形成识别指纹,进而识别目标主机运行的操作系统。指纹,进而识别目标主机运行的操作系统。第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描网络扫描的主要技术网络扫描的主要技术主机扫描技术主机扫描技术端口扫描技术端口扫描技术栈指纹栈指纹OS识别技术识别技术第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描主机扫描的目的是确定在目标网络上的主机是否主机扫描的目的是确定在目标网

15、络上的主机是否可达。这是信息收集的初级阶段,其效果直接影可达。这是信息收集的初级阶段,其效果直接影响到后续的扫描。响到后续的扫描。常用的传统扫描手段有:常用的传统扫描手段有: ICMP Echo扫描扫描 ICMP Sweep扫描扫描 Broadcast ICMP扫描扫描 Non-Echo ICMP扫描扫描第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描ICMP echo扫描扫描实现原理:实现原理:Ping的实现机制,在判断在一个网络上主的实现机制,在判断在一个网络上主机是否开机时非常有用。向目标主机发送机是否开机时非常有用。向目标主机发送I

16、CMP Echo Request (type 8)数据包,等待回复的数据包,等待回复的ICMP Echo Reply 包包(type 0) 。如果能收到,则表明目标系统可。如果能收到,则表明目标系统可达,否则表明目标系统已经不可达或发送的包被对方达,否则表明目标系统已经不可达或发送的包被对方的设备过滤掉。的设备过滤掉。 第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描ICMP协议协议Internet Control Message ProtocolIP的一部分的一部分,在在IP协议栈中必须实现协议栈中必须实现直接封装在直接封装在IP数据报中

17、,数据报中,IP头中协议类型为头中协议类型为1通过类型和代码的组合,通过类型和代码的组合,ICMP报文报告在传输报文报告在传输报文的过程中发生的各种情况报文的过程中发生的各种情况第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描ICMP协议协议Internet Control Message Protocol用途:用途:网关或者目标机器利用网关或者目标机器利用ICMP与源通讯与源通讯当出现问题时,提供反馈信息用于报告错误当出现问题时,提供反馈信息用于报告错误特点:特点:其控制能力并不用于保证传输的可靠性其控制能力并不用于保证传输的可靠性它本身

18、也不是可靠传输的它本身也不是可靠传输的并不用来反映并不用来反映ICMP报文的传输情况报文的传输情况第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描Echo(0)和和Echo Reply(8)-检测目的站的可达性与状态检测目的站的可达性与状态-主机或路由器向指定目的站发送主机或路由器向指定目的站发送ICMP ECHO请求报文,请求报文包含一个可选的请求报文,请求报文包含一个可选的数据区;数据区;-收到收到ECHO请求报文的机器应立即回应一个请求报文的机器应立即回应一个ECHO应答报文,应答报文包含了请求应答报文,应答报文包含了请求报文中数据的

19、拷贝报文中数据的拷贝-标识符:标识一个会话,例如,用进程标识符:标识一个会话,例如,用进程ID-序号:可能这样用:每个请求增序号:可能这样用:每个请求增1第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描Ping程序程序Ping: Packet Internet Groper 用来判断远程设备可访问性最常用的方法用来判断远程设备可访问性最常用的方法(网络层网络层) 原理:原理:发送发送ICMP Echo消息,然后等待消息,然后等待ICMP Echo Reply消息消息优点:简单,系统支持优点:简单,系统支持缺点:很容易被防火墙限制缺点:很容易

20、被防火墙限制可以通过并行发送,同时探测多个目标主机,以提高探测效可以通过并行发送,同时探测多个目标主机,以提高探测效率(率(ICMP Sweep扫描)。扫描)。-注意:注意:ping仅仅是判断在网络层的连通性;仅仅是判断在网络层的连通性; 而防火墙可以过滤而防火墙可以过滤ping操作操作 那么我们可以判断主机的存活与否?那么我们可以判断主机的存活与否?第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描检查主机存活的层次检查主机存活的层次可以从不同层去探测网络的存活。可以从不同层去探测网络的存活。-ARP协议协议-TCP协议等协议等第五章第五章

21、 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描Broadcast ICMP扫描扫描实现原理:将实现原理:将ICMP请求包的目标地址设为广播请求包的目标地址设为广播地址或网络地址,则可以探测广播域或整个网络地址或网络地址,则可以探测广播域或整个网络范围内的主机。范围内的主机。缺点缺点: 只适合于只适合于UNIX/Linux系统,系统,Windows 会忽略这会忽略这种请求包;种请求包; 这种扫描方式容易引起广播风暴这种扫描方式容易引起广播风暴第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描Non-E

22、cho ICMP扫描扫描一些其它一些其它ICMP类型包也可以用于对主机或网络类型包也可以用于对主机或网络设备的探测,如:设备的探测,如: Stamp Request(Type 13) Reply(Type 14) Information Request(Type 15) Reply(Type 16) Address Mask Request (Type 17) Reply(Type 18)第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描主机扫描技术高级技术主机扫描技术高级技术防火墙和网络过滤设备常常导致传统探测手段变得无效。为了防火墙和网络

23、过滤设备常常导致传统探测手段变得无效。为了突破这种限制,必须采用一些非常规的手段,利用突破这种限制,必须采用一些非常规的手段,利用ICMP协议协议提供网络间传送错误信息的手段,往往可以更有效的达到目的:提供网络间传送错误信息的手段,往往可以更有效的达到目的:-异常的异常的IP包头包头-在在IP头中设置无效的字段值头中设置无效的字段值-错误的数据分片错误的数据分片-通过超长包探测内部路由器通过超长包探测内部路由器-反向映射探测反向映射探测第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描异常的异常的IP包头包头向目标主机发送包头错误的向目标主机

24、发送包头错误的IP包,目标主机或过滤设备会包,目标主机或过滤设备会反馈反馈ICMP Parameter Problem Error信息。常见的伪造信息。常见的伪造错误字段为错误字段为Header Length Field 和和IP Options Field。根据根据RFC1122的规定,主机应该检测的规定,主机应该检测IP包的包的Version Number、Checksum字段字段, 路由器应该检测路由器应该检测IP包的包的Checksum字段。不同厂家的路由器和操作系统对这些错字段。不同厂家的路由器和操作系统对这些错误的处理方式不同,返回的结果也各异。如果结合其它手误的处理方式不同,返回

25、的结果也各异。如果结合其它手段,可以初步判断目标系统所在网络过滤设备的段,可以初步判断目标系统所在网络过滤设备的ACL。第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描反向映射探测反向映射探测该技术用于探测被过滤设备或防火墙保护的网络和主机。该技术用于探测被过滤设备或防火墙保护的网络和主机。通常这些系统无法从外部直接到达,但是我们可以采用反通常这些系统无法从外部直接到达,但是我们可以采用反向映射技术,通过目标系统的路由设备进行有效的探测。向映射技术,通过目标系统的路由设备进行有效的探测。当我们想探测某个未知网络内部的结构时,可以构造可能当我

26、们想探测某个未知网络内部的结构时,可以构造可能的内部的内部IP地址列表,并向这些地址发送数据包。当对方路地址列表,并向这些地址发送数据包。当对方路由器接收到这些数据包时,会进行由器接收到这些数据包时,会进行IP识别并路由,对不在识别并路由,对不在其服务的范围的其服务的范围的IP包发送包发送ICMP Host Unreachable或或ICMP Time Exceeded 错误报文,没有接收到相应错误错误报文,没有接收到相应错误报文的报文的IP地址会可被认为在该网络中。当然,这种方法也地址会可被认为在该网络中。当然,这种方法也会受到过滤设备的影响。会受到过滤设备的影响。第五章第五章 TCP/IP

27、TCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描端口扫描技术端口扫描技术当确定了目标主机可达后,就可以使用端口扫描技术,发现当确定了目标主机可达后,就可以使用端口扫描技术,发现目标主机的开放端口,包括网络协议和各种应用监听的端口。目标主机的开放端口,包括网络协议和各种应用监听的端口。端口扫描技术主要包括以下三类:端口扫描技术主要包括以下三类:开放扫描开放扫描会产生大量的审计数据,容易被对方发现,但其可靠性高;会产生大量的审计数据,容易被对方发现,但其可靠性高;隐蔽扫描隐蔽扫描能有效的避免对方入侵检测系统和防火墙的检测,但这种扫能有效的避免对方入侵检测系统和防火墙的检

28、测,但这种扫描使用的数据包在通过网络时容易被丢弃从而产生错误的探描使用的数据包在通过网络时容易被丢弃从而产生错误的探测信息;测信息;半开放扫描半开放扫描隐蔽性和可靠性介于前两者之间。隐蔽性和可靠性介于前两者之间。第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描常用的端口扫描技术常用的端口扫描技术 -TCP connect() 扫描扫描-最基本的最基本的TCP扫描扫描-原理就是调用原理就是调用SOCKET API(套接字应用程序接口套接字应用程序接口)中的中的connect()直接直接向远程机器发送连接请求,并通过套接字是否能建立连接来辨别其

29、端口的向远程机器发送连接请求,并通过套接字是否能建立连接来辨别其端口的状态。状态。-如果端口处于侦听状态,那么如果端口处于侦听状态,那么connect()就能成功。否则,这个端口是不就能成功。否则,这个端口是不能用的,即没有提供服务。能用的,即没有提供服务。-不需要任何权限。系统中的任何用户都有权利使用这个调用。另一个好不需要任何权限。系统中的任何用户都有权利使用这个调用。另一个好处就是速度。处就是速度。-这种方法的这种方法的缺点是容易被发觉缺点是容易被发觉,并且被过滤掉。目标计算机的,并且被过滤掉。目标计算机的logs文件文件会显示一连串的连接和连接是出错的服务消息,并且能很快的使它关闭。会

30、显示一连串的连接和连接是出错的服务消息,并且能很快的使它关闭。 开放性,不隐蔽开放性,不隐蔽第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描常用的端口扫描技术常用的端口扫描技术 -TCP SYN扫描扫描 -“半开放半开放”扫描扫描-这是因为扫描程序不必要打开一个完全的这是因为扫描程序不必要打开一个完全的TCP连接。连接。-扫描程序发送的是一个扫描程序发送的是一个SYN数据包,好象准备打开一个实际的连接并等数据包,好象准备打开一个实际的连接并等待反应一样(参考待反应一样(参考TCP的三次握手建立一个的三次握手建立一个TCP连接的过程)连接的过

31、程)目标返回目标返回SYN|ACK,表示端口处于侦听状态。,表示端口处于侦听状态。目标返回目标返回RST,表示端口没有处于侦听态。,表示端口没有处于侦听态。-如果收到一个如果收到一个SYN|ACK,则扫描程序必须再发送一个,则扫描程序必须再发送一个RST信号,来关信号,来关闭这个连接过程。闭这个连接过程。-这种扫描技术的优点在于一般不会在目标计算机上留下记录。但这种方这种扫描技术的优点在于一般不会在目标计算机上留下记录。但这种方法的一个缺点是,必须要有法的一个缺点是,必须要有root权限才能建立自己的权限才能建立自己的SYN数据包。数据包。半开放,比较隐蔽半开放,比较隐蔽第五章第五章 TCP/

32、IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描隐蔽扫描技术隐蔽扫描技术-TCP FIN扫描扫描-有的时候有可能有的时候有可能SYN扫描都不够秘密。一些防火墙和包过扫描都不够秘密。一些防火墙和包过滤器会对一些指定的端口进行监视,有的程序能检测到这些滤器会对一些指定的端口进行监视,有的程序能检测到这些扫描。扫描。-FIN数据包可能会没有任何麻烦的通过。这种扫描方法的思数据包可能会没有任何麻烦的通过。这种扫描方法的思想是关闭的端口会用适当的想是关闭的端口会用适当的RST来回复来回复FIN数据包。另一方数据包。另一方面,打开的端口会忽略对面,打开的端口会忽略对FIN数

33、据包的回复。数据包的回复。(基于基于Unix的的TCP/IP协议栈产生影响协议栈产生影响)-这种方法和系统的实现有一定的关系。有的系统这种方法和系统的实现有一定的关系。有的系统(Windows)不管端口不管端口是否打开,都回复是否打开,都回复RST,这样,这种扫描方法就不适用了。并且这种方,这样,这种扫描方法就不适用了。并且这种方法在区分法在区分Unix和和Windows时,是十分有用的。时,是十分有用的。 隐蔽隐蔽第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描隐蔽扫描技术隐蔽扫描技术-TCP间接扫描间接扫描实现原理:利用第三方的实现原理

34、:利用第三方的IP(欺骗主机)来隐藏真(欺骗主机)来隐藏真正扫描者的正扫描者的IP。由于扫描主机会对欺骗主机发送回。由于扫描主机会对欺骗主机发送回应信息,所以必须监控欺骗主机的应信息,所以必须监控欺骗主机的IP行为,从而获行为,从而获得原始扫描的结果。得原始扫描的结果。扫描主机通过伪造第三方主机扫描主机通过伪造第三方主机IP地址向目标主机发地址向目标主机发起起SYN扫描,并通过观察其扫描,并通过观察其IP序列号的增长规律获序列号的增长规律获取端口的状态取端口的状态 (NMAP的的idle 扫描扫描)优点:隐蔽性好优点:隐蔽性好缺点:对第三方主机的要求较高缺点:对第三方主机的要求较高 第五章第五

35、章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描隐蔽扫描技术隐蔽扫描技术- TCP Xmas Tree扫描扫描FIN URG PUSH分组发送给目标端口分组发送给目标端口;目标系统应该向所有关闭目标系统应该向所有关闭端口回送端口回送RST。 -TCP Null扫描扫描该技术关闭所有的标识该技术关闭所有的标识;目标系统应该向所有关闭端口回送目标系统应该向所有关闭端口回送RST。RFC 793第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描端口扫描技术端口扫描技术 -UDP ICMP端口不能到达扫描端

36、口不能到达扫描这种方法与以上方法的区别是使用这种方法与以上方法的区别是使用UDP协议。由于这个协议。由于这个协议很简单,所以扫描变得相对比较困难。这是由于打协议很简单,所以扫描变得相对比较困难。这是由于打开的端口对扫描探测并不发送一个确认,关闭的端口也开的端口对扫描探测并不发送一个确认,关闭的端口也并不需要发送一个错误数据包。并不需要发送一个错误数据包。-But许多主机在你向一个未打开的许多主机在你向一个未打开的UDP端口发送一个数端口发送一个数据包时,会返回一个据包时,会返回一个ICMP_PORT_UNREACH错误。这错误。这样你就能发现哪个端口是关闭的。样你就能发现哪个端口是关闭的。-U

37、DP和和ICMP错误都不保证能到达,因此这种扫描器必错误都不保证能到达,因此这种扫描器必须还实现在一个包看上去是丢失的时候能重新传输。这须还实现在一个包看上去是丢失的时候能重新传输。这种扫描方法是很慢的,因为种扫描方法是很慢的,因为RFC对对ICMP错误消息的产生错误消息的产生速率做了规定。同样,这种扫描方法需要具有速率做了规定。同样,这种扫描方法需要具有root权限。权限。第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描分段扫描分段扫描实现原理:并不直接发送实现原理:并不直接发送TCP探测数据包,是将数据探测数据包,是将数据包分成两个较小

38、的包分成两个较小的IP段。这样就将一个段。这样就将一个TCP头分成头分成好几个数据包,从而包过滤器就很难探测到。好几个数据包,从而包过滤器就很难探测到。优点:隐蔽性好,可穿越防火墙优点:隐蔽性好,可穿越防火墙缺点:缺点:可能被丢弃;可能被丢弃;某些程序在处理这些小数据包时会出现异常。某些程序在处理这些小数据包时会出现异常。第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描栈指纹栈指纹OS识别技术识别技术根据各个根据各个OS在在TCP/IP协议栈实现上的不同特点,协议栈实现上的不同特点,采用黑盒测试方法,通过研究其对各种探测的响采用黑盒测试方法

39、,通过研究其对各种探测的响应形成识别指纹,进而识别目标主机运行的操作应形成识别指纹,进而识别目标主机运行的操作系统。根据采集指纹信息的方式,又可以分为主系统。根据采集指纹信息的方式,又可以分为主动扫描和被动扫描两种方式。动扫描和被动扫描两种方式。第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描被动扫描被动扫描通过通过Sniff收集数据包,再对数据包的不同特征收集数据包,再对数据包的不同特征(TCP Window-size、 IP TTL、IP TOS、DF位等参数)进行分析,来识别操作系统。位等参数)进行分析,来识别操作系统。被动扫描基本不

40、具备攻击特征,具有很好的隐蔽被动扫描基本不具备攻击特征,具有很好的隐蔽性,但其实现严格依赖扫描主机所处的网络拓扑性,但其实现严格依赖扫描主机所处的网络拓扑结构;和主动探测相比较,具有速度慢、可靠性结构;和主动探测相比较,具有速度慢、可靠性不高等缺点。不高等缺点。第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描主动扫描主动扫描采用向目标系统发送构造的特殊包并监控其应答采用向目标系统发送构造的特殊包并监控其应答的方式来识别操作系统类型。的方式来识别操作系统类型。主动扫描具有速度快、可靠性高等优点,但同样主动扫描具有速度快、可靠性高等优点,但同样

41、严重依赖于目标系统网络拓扑结构和过滤规则。严重依赖于目标系统网络拓扑结构和过滤规则。第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描FIN探测:发送一个探测:发送一个FIN包给一个打开的端口,一般的行为是不响应,包给一个打开的端口,一般的行为是不响应,但某些实现例如但某些实现例如 MS Windows, BSDI, CISCO,HP/UX,MVS,和和IRIX 发回一个发回一个RESET。BOGUS标记探测(标记探测(QUESO):设置一个未定义的):设置一个未定义的TCP 标记标记(64或或128)在)在SYN包的包的TCP头里。头里。L

42、inux机器到机器到2.0.35之前在回应中保持这之前在回应中保持这个标记。个标记。TCP ISN 取样:找出当响应一个连接请求时由取样:找出当响应一个连接请求时由TCP 实现所选择的初始实现所选择的初始化序列数式样。这可分为许多组例如传统的化序列数式样。这可分为许多组例如传统的64K(许多老(许多老UNIX机器),机器),随机增量(新版本的随机增量(新版本的Solaris,IRIX,FreeBSD,Digital UNIX,Cray,等),真,等),真“随机随机”(Linux 2.0.*,OpenVMS,新的新的AIX,等),等),Windows 机器(和一些其他的)用一个机器(和一些其他的

43、)用一个“时间相关时间相关”模型,每过一模型,每过一段时间段时间ISN就被加上一个小的固定数就被加上一个小的固定数第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描不分段位:许多操作系统开始在送出的一些包中设置不分段位:许多操作系统开始在送出的一些包中设置IP的的Dont Fragment位。位。TCP初始化窗口:检查返回包的窗口大小。如初始化窗口:检查返回包的窗口大小。如queso和和nmap保持对窗口保持对窗口的精确跟踪因为它对于特定的精确跟踪因为它对于特定OS基本是常数。基本是常数。ACK值:不同实现中一些情况下值:不同实现中一些情况下

44、ACK域的值是不同的。例如,如果你送域的值是不同的。例如,如果你送了一个了一个FIN|PSH|URG 到一个关闭的到一个关闭的TCP 端口。大多数实现会设置端口。大多数实现会设置ACK 为你的初始序列数,而为你的初始序列数,而Windows 会送给你序列数加会送给你序列数加1 。ICMP错误信息终结:一些操作系统跟从限制各种错误信息的发送率。例错误信息终结:一些操作系统跟从限制各种错误信息的发送率。例如,如,Linux 内核限制目的不可达消息的生成每内核限制目的不可达消息的生成每4 秒钟秒钟80个。测试的一种个。测试的一种办法是发一串包到一些随机的高办法是发一串包到一些随机的高UDP端口并计数

45、收到的不可达消息。端口并计数收到的不可达消息。第五章第五章 TCP/IPTCP/IP协议体系的安全协议体系的安全-TCP-TCP安全和扫描安全和扫描ICMP消息引用:消息引用:ICMP错误消息可以引用一部分引起错误错误消息可以引用一部分引起错误的源消息。对一个端口不可达消息,几乎所有实现只送回的源消息。对一个端口不可达消息,几乎所有实现只送回IP请求头外加请求头外加8个字节。然而,个字节。然而,Solaris 送回的稍多,而送回的稍多,而Linux 更多。更多。SYN洪水限度:如果收到过多的伪造洪水限度:如果收到过多的伪造SYN数据包,一些操作数据包,一些操作系统会停止新的连接尝试。许多操作系统只能处理系统会停止新的连接尝试。许多操作系统只能处理8 个包。个包。参考:参考:Nmap Remote OS Detection/nmap/nmap-fingerprinting-article.html 第五章第五章 TCP/

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论