这是在 20CN网络安全小组第一代论坛 的论坛 编程破解 中的主题 IP 欺骗原理及实现! (1)


要查看这个主题,请使用这个 URL:
http://www.20cn.net/cgi-bin/ubb/ultimatebb.cgi?ubb=get_topic;f=5;t=000232

阿 坤 (编号: 2624) 发表于 :
 
IP欺骗技术比较复杂,并不是简单的再造一个相同IP就能进行欺骗.很多朋友不知道IP欺骗的原理,在此我作一个简单的介绍,以便大家能理解这种攻击手段, 但我任然希望大家能好好的学习TCP/IP原理及实现方法,这样能更好的理解本文.废话不多说,开始我们的第一课 ---TCP连接的建立过程
######

先来解释一下本文中的一些名词:
rlogin:这是远程登录协议,将计算机登录到网络的协议,对于本地计算机则自动提供用户名登录.
ISN:Sequence number(顺序字)的初始值.
SYN:同步控制符,在同步时序通讯中选用的字符,使发送和接受方设备保持相同的时序.
ACK:这是确认抱文的缩写.是接受设备向发送设备发送的一种抱文,指明该设备以为接收传输做好 准备,或指明所传输的内容已正确无误的收到.
RPC:远程过程调用的缩写.被调用的过程执行任务并返回执行结果.

######

我们先来看看一个TCP连接是如何建立的.假设B机客户运行rlogin与A机的rlogind通讯:

1. 首先B发送带有SYN的数据包通知A自己需要建立TCP连接,同时设置TCP的ISN.
2. A回送B一个带有SYN+ACK标志的数据段,并告知自己的ISN,以确认B发送来的第一个数据包,并将 确认数值设置成B的ISN+1.
3. B向A发送ACK以确认收到A的数据包,并将确认值设置成A的ISN+1.
过程如图所示:

B ----SYN----> A
B <--SYN+ACK-- A
B ----ACK----> A

以上就是一个TCP建立的基本过程---三次握手.其中使用的顺序字是一个32位的计数器,计数范围为0--4294957295.TCP会为每一个连接选择一个初试序列号I SN,为了防止因为延迟,重传等因素扰乱三次握手,ISN不随便选取,不同的系统采用不同的算法.掌握TCP如何分配ISN及ISN随时间变化的规律, 对成功实施IP欺骗攻击是很重要的.在UNIX系统中诸如rlogin,rcp,rsh等基于RPC的命令是根据/etc/hosts.equiv以及/home/.rhosts文件设定进行安全校验, 但其实质是根据信源IP地址及信任关系进行用户身份确认,以便允许或拒绝用户的RPC.

######

今天就讲到这里,希望对大家有所帮助.
 






Powered by Infopop Corporation
UBB.classic™ 6.5.0
NetDemon修改版 1.5.0, 20CN网络安全小组 版权所有。