投递文章投递文章 投稿指南 RSS订阅RSS订阅

关于TCP欺骗的一些知识

来源:iT堂整理 发布时间:2008-01-04 收藏 投稿 字体:【

    TCP协议是基于IP协议建立的一条面向连接的、可靠的字节流。一个攻击者可以通过发送IP源地址属于另一台机器的IP数据报来实施欺骗,而那台具有该合法IP源地址的机器也在运行,攻击者并不在意是否得到这些数据报的答复,其他机器将接受这些伪造的数据报,认为他们来自报文IP源地址的合法拥有者。然后执行并不是由真正合法机器用户发出的请求。


1 TCP的端到端握手
  1) TCP连接的建立
TCP的连接是三次握手,客户发送带有SYN标志的TCP头,SYN是关于初始序号的同步。TCP为连接上的发送的每个数据字节分配自己的顺序号。每个TCP头包含一个顺序号域,对应于第一个数据字节的顺序号。初始的顺序号是随机的,他的随机性时非常重要。然后服务器用一个包含SYN和ACK标志的头答复对方的SYN头。最后客户用一个带有ACK标志的TCP头响应服务器。
 2) TCP数据交换
  在正常的TCP数据交换中,一方发送一个或者多个TCP/IP数据报;另一方不时的发回一个TCP/IP数据报,其TCP头带有ACK标志,通知发送者发出的数据报已收到。在连接建立期间,双方还互通各自接受缓冲区的大小。TCP利用发送数据报TCP头中的窗口域传送可用的缓冲空间,告诉发送者在接受缓冲区填满之前还能发送多少数据。当接受方的程序排空接受缓冲区时,窗口域中的数目就相应的增加。确认号说明了期望接受的数据字节的最低序号。确认号加上窗口域中的数字值正好说明了接受时将放在输入缓冲区中的数据字节的最大序号。
  IP数据报在到达时候可能会乱了次序。当一组数据报比期望的数据报早到达目标时,早到达的数据报讲被放到接受方的输入缓冲区,但接受方并不立即确认他。在期望的数据报到达后,接受方可以一次确认两组TCP数据。然而,此时,接受方程序应该有能力读这两组数据,而不是等待发送方的任何动作。


2 伪造的TCP/IP数据报
   要想成功的伪造成一个数据报并作为现有连接的一方被接受,攻击者只需要估计合法发送者分配给下一发送数据字节的顺序号。这时只需要考虑下列三种情况:估计值正好等于下一顺序号,估计值小于顺序号,估计值大于顺序号。

  如果攻击者知道或者成功的猜出下一发送字节的精确顺序号,则攻击者就能伪造一个TCP/IP数据报,其包含的数据将被放置在接收者输入缓冲区的可用位置。如果伪造的数据保迟于合法数据报到达,其包含的数据少于合法数据报,则接受方将完全丢弃该伪造的数据报。但是,如果伪造的数据报包含的数据多于合法数据报,则接收者仅仅丢弃前面序号重叠的一部分数据,伪装数据报中顺序号大于早到合法数据报中数据的那部分数据将被接受方放在输入缓冲区中。如果伪造的数据报早于合法数据报到达,则合法数据报将会被接受方丢弃(至少部分丢弃)。
  如果攻击者猜测的顺序号低于发送的下一个顺序号,伪造的TCP/IP数据报中的前面部分数据肯定不会去出放在接收者的输入缓冲区。然而,如果伪造数据报包含了足够多的数据,那么接受方将把伪造数据报的后面数据放入其输入缓冲区。
  如果攻击者猜测的顺序号大于发送的下一顺序号,接受方将简单的认为这是没按顺序到达的数据,就把他放在输入缓冲区中。伪造数据报后面部分一些数据字节的顺序号也许不适应当前窗口尺寸,因此,接受方将丢弃他们。稍后,合法数据报的到达,将填补下一期望顺序号与第一个伪装数据字节之间的空隙。


3 窥探的TCP/IP伪造
  在TCP连接上获得顺序号估计值的一种途径是在客户与服务器之间的某处窥探网络.攻击者可能控制着这条途径上的不止一台机器,因此进行窥探的机器不一定就是做伪装的机器.
     如果作为相同物理网络上合法发送者的机器进行伪装,则路由器没有多少机会能阻止伪造的数据报.唯一能停止伪造数据报可能的地点是伪造者所在的路由器,因为路由器或许能检测到合法发送者与伪造者硬件地址上的差异. 
     如果一台机器作为同一物理网络上接收者进行伪造,接受方同样有机会检测出上述地址差异.如果伪造不是发生在两个端点网络,则阻止伪造数据报的机会就会减少.然而,在多数情况下,攻击者的物理网络只能连接到只有一个合法源网络的路由器上.配置这些路由器,使他们不能转发具有不可能IP网络地址的数据报可以避免你的网络成为伪造者的攻击源.
     一种特殊的情况值得特别注意.如果两个端点处于同一物理网络,攻击者足以勇敢到从另一个物理网络伪造一个数据报.由于传送数据报时只需要检查目标地址,数据报可以通过正常的路由机制到达接收者.然而,路由器有机会检测出伪造数据报,只要注意到IP源网络地址是否匹配IP目标地址.源网络地址与目标网络地址一致的数据报不应该经过路由器,如果该路由器的网络地址与内部网络的地址相匹配的话.

顶一下
(116)
100%
踩一下
(0)
0%
本文Tags:
  • 表情:
  •    
  • 评价:
用户名: 密码: 匿名 注册
最新评论 查看所有评论
About iTtang - 联系我们  - 专题列表 - 友情链接  -  高级搜索  -  帮助中心  -  您的意见