IP欺骗原理精解和防范技术

IP欺骗原理精解和防范技术

ID:36495578

大小:44.50 KB

页数:7页

时间:2019-05-11

IP欺骗原理精解和防范技术_第1页
IP欺骗原理精解和防范技术_第2页
IP欺骗原理精解和防范技术_第3页
IP欺骗原理精解和防范技术_第4页
IP欺骗原理精解和防范技术_第5页
资源描述:

《IP欺骗原理精解和防范技术》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、IP欺骗原理精解和防范技术(1)即使是很好的实现了TCP/IP协议,由于它本身有着一些不安全的地方,从而可以对TCP/IP网络进行攻击。这些攻击包括序列号欺骗,路由攻击,源地址欺骗和授权欺骗。本文除了介绍IP欺骗攻击方法外,还介绍怎样防止这个攻击手段。    上述攻击是建立在攻击者的计算机(包括路由)是连在INTERNET上的。这里的攻击方法是针对TCP/IP本身的缺陷的,而不是某一具体的实现。    实际上,IP欺骗不是进攻的结果,而是进攻的手段。进攻实际上是信任关系的破坏。  IP欺骗原理    信任关系    在Unix领域中,信任关系能够很容易得到。假如在主机A和B

2、上各有一个帐户,在使用当中会发现,在主机A上使用时需要输入在A上的相应帐户,在主机B上使用时必须输入在B上的帐户,主机A和B把你当作两个互不相关的用户,显然有些不便。为了减少这种不便,可以在主机A和主机B中建立起两个帐户的相互信任关系。在主机A和主机B上你的home目录中创建.rhosts文件。从主机A上,在你的home目录中输入'echo"Busername">~/.rhosts';从主机B上,在你的home目录中输入'echo"Ausername">~/.rhosts'。至此,你能毫无阻碍地使用任何以r*开头的远程登录如:rlogin,rcall,rsh等,而无口令验证

3、的烦恼。这些命令将允许以地址为基础的验证,或者允许或者拒绝以IP地址为基础的存取服务。    这里的信任关系是基于IP地址的。    Rlogin    Rlogin是一个简单的客户/服务器程序,它利用TCP传输。Rlogin允许用户从一台主机登录到另一台主机上,并且,如果目标主机信任它,Rlogin将允许在不应答口令的情况下使用目标主机上的资源。安全验证完全是基于源主机的IP地址。因此,根据以上所举的例子,我们能利用Rlogin来从B远程登录到A,而且不会被提示输入口令。    TCP序列号预测    IP只是发送数据包,并且保证它的完整性。如果不能收到完整的IP数据包,

4、IP会向源地址发送一个ICMP错误信息,希望重新处理。然而这个包也可能丢失。由于IP是非面向连接的,所以不保持任何连接状态的信息。每个IP数据包被松散地发送出去,而不关心前一个和后一个数据包的情况。由此看出,可以对IP堆栈进行修改,在源地址和目的地址中放入任意满足要求的IP地址,也就是说,提供虚假的IP地址。    TCP提供可靠传输。可靠性是由数据包中的多位控制字来提供的,其中最重要的是数据序列和数据确认,分别用SYN和ACK来表示。TCP向每一个数据字节分配一个序列号,并且可以向已成功接收的、源地址所发送的数据包表示确认(目的地址ACK所确认的数据包序列是源地址的数据包

5、序列,而不是自己发送的数据包序列)。ACK在确认的同时,还携带了下一个期望获得的数据序列号。显然,TCP提供的这种可靠性相对于IP来说更难于愚弄。 序列编号、确认和其它标志信息    由于TCP是基于可靠性的,它能够提供处理数据包丢失,重复或是顺序紊乱等不良情况的机制。实际上,通过向所传送出的所有字节分配序列编号,并且期待接收端对发送端所发出的数据提供收讫确认,TCP就能保证可靠的传送。接收端利用序列号确保数据的先后顺序,除去重复的数据包。TCP序列编号可以看作是32位的计数器。它们从0至2^32-1排列。每一个TCP连接(由一定的标示位来表示)交换的数据都是顺序编号的。在

6、TCP数据包中定义序列号(SYN)的标示位位于数据段的前端。确认位(ACK)对所接收的数据进行确认,并且指出下一个期待接收的数据序列号。    TCP通过滑动窗口的概念来进行流量控制。设想在发送端发送数据的速度很快而接收端接收速度却很慢的情况下,为了保证数据不丢失,显然需要进行流量控制,协调好通信双方的工作节奏。所谓滑动窗口,可以理解成接收端所能提供的缓冲区大小。TCP利用一个滑动的窗口来告诉发送端对它所发送的数据能提供多大的缓冲区。由于窗口由16位bit所定义,所以接收端TCP能最大提供65535个字节的缓冲。由此,可以利用窗口大小和第一个数据的序列号计算出最大可接收的数

7、据序列号。    其它TCP标示位有RST(连接复位,Resettheconnection)、PSH(压入功能,Pushfunction)和FIN(发送者无数据,Nomoredatafromsender)。如果RST被接收,TCP连接将立即断开。RST通常在接收端接收到一个与当前连接不相关的数据包时被发送。有些时候,TCP模块需要立即传送数据而不能等整段都充满时再传。一个高层的进程将会触发在TCP头部的PSH标示,并且告诉TCP模块立即将所有排列好的数据发给数据接收端。FIN表示一个应用连接结束。当接收端接收到FI

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。