收藏 分享(赏)

TCP安全问题浅析.doc

上传人:hwpkd79526 文档编号:7135288 上传时间:2019-05-06 格式:DOC 页数:23 大小:148.50KB
下载 相关 举报
TCP安全问题浅析.doc_第1页
第1页 / 共23页
TCP安全问题浅析.doc_第2页
第2页 / 共23页
TCP安全问题浅析.doc_第3页
第3页 / 共23页
TCP安全问题浅析.doc_第4页
第4页 / 共23页
TCP安全问题浅析.doc_第5页
第5页 / 共23页
点击查看更多>>
资源描述

1、 西 安 翻 译 学 院XIAN FANYI UNIVERSITY毕业论文题 目: TCP 安全问题浅析 专 业: 计算机网络技术 班 级: 103120601 姓 名: 杨雪 指 导 教 师: 朱滨忠 2013 年 5 月学号:10312060101 院系:诒华学院成绩: 1目录第一章 TCP/IP 协议概述 11.1 TCP/IP协议定义 21.2 TCP/IP协议的主要特点 31.3 TCP/IP协议的总体概况 3第二章 各协议层存在的安全漏洞 .52.1 链路层存在的安全漏洞 .52.2 网络层漏洞 .52.3 IP漏洞 52.4 ARP欺骗 62.5 路由欺骗 .62.6 DNS欺骗

2、 72.7 拦截 TCP连接 .72.8 使用 TCP/SYN报文段淹没服务器 .7第三章 关于 TCP/IP协议族存在的脆弱性剖析 .93.1 TCP/IP协议族存在脆弱性 93.2 应用服务不容乐观 .93.2.1 文件传输协议 .93.2.2 Web服务 103.3 提高网络可信度 .10第四章 TCP/IP 状态转移 .124.1 TCP 状态转移图和定时器 124.2 网络入侵方式 .124.2.1 伪造 IP地址 .124.2.2 TCP状态转移的问题 144.2.3 定时器问题 .154.3 利用网络监控设备观测网络入侵 .164.3.1 伪造 IP地址 .164.3.2 虚假状

3、态转移 .16参 考 文 献: .192TCP 安全问题浅析杨雪(诒华学院计算机网络技术专业 103120601)摘 要: 随着计算机网络技术的发展,信息安全问题越来越受到国家的关注,网络安全已经成为计算机网络通信领域的重点。这篇论文的从目前使用的 TCP/IP 协议入手来研究问题,从 TCP/IP 协议的安全性进行较为全面的解析,从 TCP/IP 的总体概括、现在存在安全隐患、以及各个层次之间安全问题进行了比较深入的讨论。然后用现在最为流行的 Snifer 工具从实验的角度上来分析数据包的安全情况,最后从 SYN 的攻击代码来分析 TCP/IP 协议,并且实现了几种防御 SYN 的方法。本文

4、在介绍因特网中使用的 TCP/IP 协议的基础上,对 TCP/IP 协议的安全性进行了较为全面的讨论,从理论上分析了协议中几种主要的安全隐患。由于TCP/IP 协议一开始的实现主要目的是用于科学研究的,所以很少考虑安全性方面的东西。但随着其应用的普及,它已经成为了 Internet 网络通信协议的标准。希望本论文能对未来的信息社会中网络安全环境的形成有所帮助。关键词: TCP / IP 协议,安全协议,服务,协议层 第一章 TCP/IP 协议概述31.1 TCP/IP协议定义协议是互相通信的计算机双方必须共同遵从的一组约定。TCP/IP(传输控制协议/网际协议)就是这样的约定,它规定了计算机之

5、间互相通信的方法。TCP/IP 是为了使接入因特网的异种网络、不同设备之间能够进行正常的数据通讯,而预先制定的一簇大家共同遵守的格式和约定。该协议是美国国防部高级研究计划署为简历 ARPANET开发的,在这个协议集中,两个最知名的协议就是传输控制协议(TCP, Transfer Contorl Protocol)和网际协议(IP,Internet Protocol) ,故而整个协议集被称为 TCP/IP。之所以说TCP/IP是一个协议簇,是因为 TCP/IP包括了TCP、IP、UDP、ICMP、RIP、TELNET、FTP、SMTP、ARP 等许多协议,对因特网中主机的寻址方式、主机的命名机制

6、、信息的传输规则,以及各种各样的服务功能均做了详细约定,这些约定一起称为 TCP/IP。TCP/IP协议和开放系统互连参考模型一样,是一个分层结构。协议的分层使得各层的任务和目的十分明确,这样有利于软件编写和通信控制。TCP/IP协议分为 4层,由下至上分别是网路接口层、网际层、传输层和应用层,如图 1-1所示4图 1-1 TCP/IP 协议层次图1.2 TCP/IP协议的主要特点 (1)开放的协议标准,可以免费使用,并且独立于特定的计算机硬件与操作系统;(2)独立于特定的网络硬件,可以运行在局域网、广域网,更适用于互联网中;(3)统一的网络地址分配方案,使得整个 TCP/IP设备在网中都具有

7、惟一的地址; (4)标准化的高层协议,可以提供多种可靠的用户服务。 1.3 TCP/IP协议的总体概况目前在 Internet上使用的是 TCP/IP协议。TCP/IP 协议叫做传输控制/网际协议,它是 Internet国际互联网络的基础。TCP/IP 是网络中使用的基本的通信协议。其中 IP(Internet Protocol)全名为“网际互连协议“,它是为计算机网络相互连接进行通信而设计的协议。TCP(Transfer Control Protocol)是传输控制协议。TCP/IP 协议是能够使连接到网上的所有计算机网络实现相互通信的一套规则,正是因为有了 TCP/IP协议,因特网才得以迅

8、5速发展成为世界上最大的、开放的计算机通信网络。从表面名字上看 TCP/IP包括两个协议,传输控制协议(TCP)和互联网际协议(IP),其实 TCP/IP实际上是一组协议的集合,它包括了上百个各种功能的协议。如:远程登录、文件传输和电子邮件等等,而 TCP协议和 IP协议是保证数据完整传输的两个基本的重要协议。IP 协议之所以能使各种网络互联起来是由于它把各种不同的“帧”统一转换成“IP 数据报”格式,这种转换是因特网的一个最重要的特点。所以 IP协议使各种计算机网络都能在因特网上实现互通,即具有“开放性”的特点。TCP/IP 协议的基本传输单位是数据包(datagram)。TCP 协议负责把

9、数据分成若干个数据包,并给每个数据包加上包头,包头上有相应的编号,以保证在数据接收端能将数据还原为原来的格式,IP 协议在每个包头上还要加上接收端主机地址,这样数据通过路由器中的 MAC地址来确定数据的流向,如果传输过程中出现数据丢失,数据失真等情况,TCP 协议会自动要求数据重新传输,并重新组。.总之,IP协议保证数据的传输,而 TCP协议保证数据传输的质量。TCP/IP 协议数据的传输基于 TCP/IP协议的 4层结构:应用层、传输层、网络层、接口层。6第二章 各协议层存在的安全漏洞2.1 链路层存在的安全漏洞我们知道,在以太网中,信道是共享的,任何主机发送的每一个以太网帧都会到达别的与该

10、主机处于同一网段的所有主机的以太网接口,一般地,CSMA/CD协议使以太网接口在检测到数据帧不属于自己时,就把它忽略,不会把它发送到上层协议(如 ARP、RARP 层或 IP层) 。如果我们对其稍做设置或修改,就可以使一个以太网接口接收不属于它的数据帧。例如有的实现可以使用杂错接点,即能接收所有数据帧的机器节点。解决该漏洞的对策是:网络分段、利用交换器,动态集线器和桥等设备对数据流进行限制、加密(采用一次性口令技术)和禁用杂错接点。2.2 网络层漏洞几乎所有的基于 TCP/IP的机器都会对 ICMP echo请求进行响应。所以如果一个敌意主机同时运行很多个 ping命令向一个服务器发送超过其处

11、理能力的 ICMP echo请求时,就可以淹没该服务器使其拒绝其他的服务。另外,ping命令可以在得到允许的网络中建立秘密通道从而可以在被攻击系统中开后门进行方便的攻击,如收集目标上的信息并进行秘密通信等。解决该漏洞的措施是拒绝网络上的所有 ICMP echo响应。2.3 IP漏洞IP包一旦从网络中发送出去,源 IP地址就几乎不用,仅在中间路由器因某种原因丢弃它或到达目标端后,才被使用。这使得一个主机可以使用别的主机的 IP地址发送 IP包,只要它能把这类 IP包放到网络上就可以。因而如果攻击者把自己的主机伪装成被目标主机信任的友好主机,即把发送的7IP包中的源 IP地址改成被信任的友好主机的

12、 IP地址,利用主机间的信任关系(Unix 网络软件的开发者发明的术语)和这种信任关系的实际认证中存在的脆弱性(只通过 IP确认) ,就可以对信任主机进行攻击。注意,其中所说的信任关系是指一个被授权的主机可以对信任主机进行方便的访问。所有的r*命令都采用信任主机方案,所以一个攻击主机把自己的 IP改为被信任主机的 IP,就可以连接到信任主机并能利用 r*命令开后门达到攻击的目的。解决这个问题的一个办法是,让路由器拒绝接收来自网络外部的 IP地址与本地某一主机的 IP地址相同的 IP包的进入。2.4 ARP欺骗ARP协议在对 IP地址进行解析时,利用 ARP缓存(也叫 ARP表)来做。ARP缓存

13、的每一条目保存有 IP地址到物理地址的映射。如果在 ARP表中没有这样的对应条目,ARP 协议会广播 ARP请求,获得对应于那个 IP地址的物理地址,并把该对应关系加入到 ARP表中。ARP 表中的每一个条目都有一个计时器,如果计时器过期,该条目就无效,因而被从缓存中删除。显然,如果攻击者暂时使用不工作的主机的 IP地址,就可以伪造 IP-物理地址对应关系对,把自己伪装成象那个暂时不使用的主机一样。克服此问题的方法是,让硬件地址常驻内存,并可以用 ARP命令手工加入(特权用户才可以那样做) ;也可以通过向 RARP服务器询问来检查客户的 ARP欺骗。因为 RARP服务器保留着网络中硬件地址和

14、IP 的相关信息。2.5 路由欺骗在路由协议中,主机利用重定向报文来改变或优化路由。如果一个路由器发送非法的重定向报文,就可以伪造路由表,错误引导非本地的数据报。另外,各个路由器都会定期向其相邻的路由器广播路由信息,如果使用 RIP8特权的主机的 520端口广播非法路由信息,也可以达到路由欺骗的目的。解决这些问题的办法有,通过设置主机忽略重定向信息可以防止路由欺骗;禁止路由器被动使用 RIP和限制被动使用 RIP的范围。2.6 DNS欺骗网络上的所有主机都信任 DNS服务器,如果 DNS服务器中的数据被攻击者破坏,就可以进行 DNS欺骗。2.7 拦截 TCP连接攻击者可以使 TCP连接的两端进

15、入不同步状态,入侵者主机向两端发送伪造的数据包。冒充被信任主机建立 TCP连接,用 SYN淹没被信任的主机,并猜测 3步握手中的响应(建立多个连接到信任主机的 TCP连接,获得初始序列号 ISN(Initial Serial Number)和 RTT,然后猜测响应的 ISN,因为序列号每隔半秒加 64000,每建立一个连接加 64000) 。预防方法:使所有的 r*命令失效,让路由器拒绝来自外面的与本地主机有相同的 IP地址的包。RARP查询可用来发现与目标服务器处在同一物理网络的主机的攻击。另外ISN攻击可通过让每一个连接的 ISN随机分配配合每隔半秒加 64000来防止。2.8 使用 TC

16、P/SYN报文段淹没服务器利用 TCP建立连接的 3步骤的缺点和服务器端口允许的连接数量的限制,窃取不可达 IP地址作为源 IP地址,使得服务器端得不到 ACK而使连接处于半开状态,从而阻止服务器响应响应别的连接请求。尽管半开的连接会被过期而关闭的,但只要攻击系统发送的 spoofed SYN请求的速度比过期的快就可以达到攻击的目的。这种攻击的方法一直是一种重要的攻击ISP(Internet Service Provider)的方法,这种攻击并不会损害服务,而9是使服务能力削弱。解决这种攻击的办法是,给 Unix内核加一个补丁程序或使用一些工具对内核进行配置。一般的做法是,使允许的半开连接的数

17、量增加,允许连接处于半开状态的时间缩短。但这些并不能从根本上解决这些问题。实际上在系统的内存中有一个专门的队列包含所有的半开连接,这个队列的大小是有限的,因而只要有意使服务器建立过多的半开连接就可以使服务器的这个队列溢出,从而无法响应其他客户的连接请求。10第三章 关于 TCP/IP协议族存在的脆弱性剖析3.1 TCP/IP协议族存在脆弱性IP层的主要曲线是缺乏有效的安全认证和保密机制,其中最主要的因素就是 IP地址问题。TCP/IP 协议用 IP地址来作为网络节点的惟一标识,许多 TCP/IP服务,包括 Berkeley中的 R命令、NFS、X Window 等都是基于 IP地址对用户进行认

18、证和授权。当前 TCP/IP网络的安全机制主要是基于 IP地址的包过滤(Packet Filtering)和认证(Authentication)技术,它的有效性体现在可以根据 IP包中的源 IP地址判断数据的真实性和安全性。然而 IP地址存在许多问题,协议的最大缺点就是缺乏对 IP地址的保护,缺乏对 IP包中源 IP地址真实性的认证机制与保密措施。这也就是引起整个 TCP/IP协议不安全的根本所在。由于 UDP是基于 IP协议之上的,TCP 分段和 UDP协议数据包是封装在IP包中在网络上传输的,因此同样面临 IP层所遇到的安全威胁。现在人们一直在想办法解决,却仍然无法避免的就是根据 TCP连

19、接建立时“三次握手”机制的攻击。3.2 应用服务不容乐观3.2.1 文件传输协议 FTP经久不衰的原因在于它可以在互联网上进行与平台无关的数据传输,它基于一个客户机/服务器架构。FTP 将通过两个信道(端口)传输,一个传输数据(TCP 端口 20),另一个传输控制信息(TCP 端口 21)。在控制信道之上,双方(客户机和服务器)交换用于发起数据传输的命令。一个 11FTP 连接包含 4个步骤:用户鉴权建立控制信道建立数据信道关闭连接。FTP 的连接控制使用 TCP (Transmission Control Protocol, 传输控制协议),它保障了数据的可靠传输。因此,FTP 在数据传输中

20、不需要关心分组丢失和数据错误检测。 匿名 FTP作为互联网上广泛应用的服务,安全等级的低下受到了黑客的频繁光顾。匿名 FTP 是真的匿名,并没有记录谁请求了什么信息,谁下载了什么文件,上传了什么东西(有可能是木马)。FTP 存在着致命的安全缺陷,FTP 使用标准的用户名和口令作为身份验证,缺乏有效的访问权限的控制机制,而其口令和密码的传输也都是明文的方式。 3.2.2 Web服务 Web服务器位于宿主基础结构的前端,它与 Internet直接相连,负责接收来自客户端的请求,创建动态 Web页并响应请求数据。最初 WWW服务只提供静态的 HTML页面,为改变人们对网络互动请求的愿望,开始引入了

21、CGI程序,CGI 程序让主页活动起来。CGI 程序可以接收用户的输入信息,一般用户是通过表格把输入信息传给 CGI程序的,然后 CGI程序可以根据用户的要求进行一些处理,一般情况下会生成一个 HTML文件,并传回给用户。很多 CGI 程序都存在安全漏洞,很容易被黑客利用做一些非法的事情。现在很多人在编写 CGI程序时,可能对 CGI软件包中的安全漏洞并不了解,而且大多数情况下不会重新编写程序的所有部分,只是对其加以适当的修改,这样很多 CGI程序就不可避免的具有相同的安全漏洞。很多 SQL Server 开发人员并没有在代码编写开始的时候就从安全防护基础开始,这样就无法确保您开发的代码的安全

22、性,其结果就造成了无法将应用程序的运行控制在所需的最低权限之内。123.3 提高网络可信度前面的 IPv4存在的弊端,很多安全防范技术被忽略了,它不可避免地被新一代技术 IPv6取代。IPsec 安全协议就是事后 发展的一种协议(如图3-1),而 NAT(网络地址转换,Network Address Translation)解决了 IP地址短缺的问题,却增加了安全风险,使真正的端到端的安全应用难以实现。端到端安全性的两个基本组件鉴权和加密都是 IPv6协议的集成组件;而在 IPv4中,它们只是附加组件,因此,采用 IPv6安全性会更加简便、一致。在现在的网络环境中,尤其是园区网当中,由于不存在

23、 NAT地址转换的问题,所以 IPSec具备允许部署可信计算基础架构的基本特征。IPSec 数据包验证能够确保整个 IP报头、下一层协议(例如 TCP、UPD 或 ICMP)报头以及数据包有效负载的数据完整性。 华夏网管 ofAdmin.Com 另外,针对数据包的单向 Hash算法用以提供校验和。通信发起方计算校验和并在发送之前将其附加到数据包中;响应方则在收到数据包后为其计算校验和。如果响应方所计算出的校验和与数据包中附带的校验和完全匹配,则证明数据包在传输过程中未被修改。校验和的单向计算特性意味着其取值无法在传输过程中进行修改,这也就保证了端到端的数据传输过程的可信程度。 13第四章 TC

24、P/IP 状态转移4.1 TCP状态转移图和定时器应于连接建立或终止、流量控制和数据传输。几类主要的定时器及其功能如下 TCP状态转移图控制了一次连接的初始化、建立和终止,该图由定义的状态以及这些状态之间的转移弧构成。TCP 状态转移图与定时器密切相关,不同的定时器:连接定时器:在连接建立阶段,当发送了 SYN包后,就启动连接定时器。如果在 75秒内没有收到应答,则放弃连接建立。 FIN-WAIT-2 定时器:当连接从 FIN-WAIT-1状态转移到 FIN-WAIT-2状态时,将一个 FIN-WAIT-2 定时器设置为 10分钟。如果在规定时间内该连接没有收到一个带有置位 FIN的 TCP包

25、,则定时器超时,再定时为 75秒。如果在该时间段内仍无 FIN包到达,则放弃该连接。 TIME-WAIT 定时器:当连接进入 TIME-WAIT状态时,该定时器被激活。当定时器超时时,与该连接相关的内核数据块被删除,连接终止。 维持连接定时器:其作用是预测性地检测连接的另一端是否仍为活动状态。如果设置了 SO-KEEPALIVE套接字选择项,则 TCP机状态是ESTABLISHED或 CLOSE-WAIT。4.2 网络入侵方式 4.2.1 伪造 IP地址14入侵者使用假 IP地址发送包,利用基于 IP地址证实的应用程序。其结果是未授权的远端用户进入带有防火墙的主机系统。 假设有两台主机 A、B

26、 和入侵者控制的主机 X。假设 B授予 A某些特权,使得 A能够获得 B所执行的一些操作。X 的目标就是得到与 B相同的权利。为了实现该目标,X 必须执行两步操作:首先,与 B建立一个虚假连接;然后,阻止 A向 B报告网络证实系统的问题。主机 X必须假造 A的 IP地址,从而使 B相信从 X发来的包的确是从 A发来的。 我们同时假设主机 A和 B之间的通信遵守 TCPIP 的三次握手机制。握手方法是: A:SYN(序列号=M) BA:SYN(序列号N) ,ACK(应答序号=M+1) AB:ACK(应答序号N+1) 主机 X伪造 IP地址步骤如下:首先,X 冒充 A,向主机 B发送一个带有随机序

27、列号的 SYN包。主机 B响应,向主机 A发送一个带有应答号的SYN+ACK包、该应答号等于原序列号加 1。同时,主机 B产生自己发送包序列号,并将其与应答号一起发送。为了完成三次握手,主机 X需要向主机B回送一个应答包,其应答号等于主机 B向主机 A发送的包序列号加 1。假设主机 X与 A和 B不同在一个子网内,则不能检测到 B的包,主机 X只有算出 B的序列号,才能创建 TCP连接。其过程描述如下: XB:SYN(序列号=M) ,SRC=A BA:SYN(序列号=N) ,ACK(应答号=M+1) XB:ACK(应答号N+1) ,SRCA 15同时,主机 X应该阻止主机 A响应主机 B的包。

28、为此,X 可以等到主机A因某种原因终止运行,或者阻塞主机 A的操作系统协议部分,使它不能响应主机 B。 一旦主机 X完成了以上操作,它就可以向主机 B发送命令。主机 B将执行这些命令,认为他们是由合法主机 A发来的。 4.2.2 TCP状态转移的问题 上述的入侵过程,主机 X是如何阻止主机 A向主机 B发送响应在的,主机调通过发送一系列的 SYN包,但不让 A向调发送 SYN-ACK包而中止主机 A的登录端口。如前所述,TCP 维持一个连接建立定时器。如果在规定时间内(通常为 75秒)不能建立连接,则 TCP将重置连接。在前面的例子中,服务器端口是无法在 75秒内作出响应的。 下面我们来讨论一

29、下主机 X和主机 A之间相互发送的包序列。X 向 A发送一个包,其 SYN位和 FIN位置位,A 向 X发送 ACK包作为响应: XA:SYN FIN(系列号=M)AX:ACK(应答序号M+1)从上面的状态转移可以看出,A 开始处于监听(LISTEN)状态。当它收到来自 X的包后,就开始处理这个包。值得注意的是,在 TCP协议中,关于如何处理 SYN和 FIN同时置位的包并未作出明确的规定。我们假设它首先处理 SYN标志位,转移到 SYN-RCVD状态。然后再处理 FIN标志位,转移到 CLOSE-WAIT状态。如果前一个状态是 ESTABLISHED,那么转移到 CLOSE-WAIT状态就是

30、正常转移。但是,TCP 协议中并未对从 SYN-RCVD状态到 CLOSE-WAIT状态的转移作出定义。但在几种 TCP应用程序中都有这样的转移,例如开放系统 SUN OS4.2, SUR4 和 ULTRX4.3因此,在这些 TCP应用程序中存在一条 TCP协议中未作定义的从状态SYN-RCVD到状态 CLOSE-WAIT的转移弧,在上述入侵例子中,由于三次握手16没能彻底完成,因此并未真正建立 TCP连接,相应的网络应用程序并未从核心内获得连接。但是,主机 A的 TCP机处 CLOSE-WAIT状态,因此它可以向X发送一个 FIN包终止连接。这个半开放连接保留在套接字侦听队列中,而且应用进程

31、不发送任何帮助 TCP执行状态转移的消息。因此,主机 A的 TCP机被锁在了 CL0SE-WAIT状态。如果维持活动定时器特征被使用,通常 2小时后 TCP将会重置连接并转移到 CLOSED状态。当 TCP机收到来自对等主机的 RST时,就从 TABLISHED,FINWAIT-1 和 FIN-WAIT-2状态转移到 CLOSED状态。这些转移是很重要的,因为它们重置 TCP机且中断网络连接。但是,由于到达的数据段只根据源 IP地址和当前队列窗口号来证实。因此入侵者可以假装成已建立了合法连接的一个主机,然后向另一台主机发送一个带有适当序列号的 RST段,这样就可以终止连接了!从上面的分析我们可

32、以看到几种 TCP应用程序中都存在外部状态转移。这会给系统带来严重的安全性问题。4.2.3 定时器问题正如前文所述,一旦进入连接建立过程,则启动连接定时器。如果在规定时间内不能建立连接,则 TCP机回到 CLOSED状态。我们来分析一下主机 A和主机 X的例子。主机 A向主机 X发送一个 SYN包,期待着回应一个 SYN-ACK包。假设几乎同时,主机 X想与主机 A建立连接,向 A发送一个 SYN包。A 和 X在收到对方的 SYN包后都向对方发送一个SYN-ACK包。当都收到对方的 SYN-ACK包后,就可认为连接已建立。在本文中,假设当主机收到对方的 SYN包后,就关闭连接建立定时器。XA:

33、SYN(序列号=M) AX:SYN(序列号=N) 17XA:SYN(序列号=M) ,ACK(应答号=N+1)AX:SYN(序列号=N) ,ACK(应答号M+1)主机 X向主机 A发送一个 FTP请求。在 X和 A之间建立起一个 TCP连接来传送控制信号。主机 A向 X发送一个 SYN包以启动一个 TCP连接用来传输数据,其状态转移到 SYN-SENT状态。 当 X收到来自 A的 SYN包时,它回送一个 SYN包作为响应。主机 X收到来自 A的 SYN-ACK包,但不回送任何包。主机 A期待着接收来自 X的 SYN-ACK。由于 X不回送任何包,因此 A被锁在 SYN-RCVD状态。这样,X 就

34、成功地封锁了 A的一个端口。4.3 利用网络监控设备观测网络入侵我们在局域网上安装一个网络监控设备观测通过网络的包,从而判断是否发生了网络入侵。下面我们将讨论在几种入侵过程中网络监控设备可观测到的序列包。4.3.1 伪造 IP地址最初,网络监控设备会监测到大量的 TCP SYN包从某个主机发往 A的登录端口。主机 A会回送相应的 SYN-ACK包。SYN 包的目的是创建大量的与主机 A的半开放的 TCP连接,从而填满了主机 A的登录端口连接队列。大量的 TCP SYN包将从主机 X经过网络发往主机 B,相应地有 SYN-ACK包从主机 B发往主机 X。然后主机 X将用 RST包作应答。这个 S

35、YNSYN-ACKRST 包序列使得入侵者可以知道主机 B的 TCP序列号发生器的动作。主机 A向主机 B发送一个 SYN包。实际上,这是主机 X发送的一个“伪造”包。收到这个包之后,主机 B将向主机 A发送相应的 SYN-ACK包。主机18A向主机 B发送 ACK包。按照上述步骤,入侵主机能够与主机 B建立单向TCP连接。4.3.2 虚假状态转移当入侵者试图利用从 SYN-RCVD到 CLOSE-WAIT的状态转移长时间阻塞某服务器的一个网络端口时,可以观察到如下序列包: 从主机 X到主机 B发送一个带有 SYN和 FIN标志位置位的 TCP包。主机 B首先处理 SYN标志,生成一个带有相应

36、 ACK标志位置位的包,并使状态转移到 SYN-RCVD,然后处理 FIN标志,使状态转移到 CLOSE-WAIT,并向 X回送 ACK包。主机 X不向主机 B发送其它任何包。主机的 TCP机将固定在 CLOSE-WAIT状态。直到维持连接定时器将其重置为 CLOSED状态。因此,如果网络监控设备发现一串 SYN-FINACK 包,可推断入侵者正在阻塞主机 B的某个端口。 4.3.3 定时器问题 如果一入侵者企图在不建立连接的情况下使连接建立定时器无效,我们可以观察到以下序列包:主机 X从主机 B收到一个 TCP SYN包。主机 X向主机 B回送一个 SYN包。主机 X不向主机 B发送任何 A

37、CK包。因此,B 被阻塞在 SYN-RCVD状态,无法响应来自其它客户机的连接请求。1920参 考 文 献:1 韦卫,王德杰, Interne 网络层安全协议理论研究与实现 ,计算机学报 1999 年 22期2 谢正均, IP 欺骗原理及其对策 ,电信快报 1999 年 2期3 林敏, 网络互连安全技术及解决方案 ,中国金融电脑 1999 年 3期4 胡英伟等, 网络认证技术及其发展 ,微型机与应用 1999 年 12期5 陈永军.什么是 TCP/IP协议 J.化工管理.2000年08期. 21西安翻译学院诒华学院毕业论文(设计)评语表姓 名 杨雪 班 级 103120601 学 号 10312060102论文题目 TCP 安全问题浅析专 业 计算机网络技术 成 绩22指导教师评语:指导教师签字:年 月 日

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报