ICMP协议分析

ICMP(Internet Control Message Protocol,互联网控制报文信息)

ICMP用于IP主机、路由器直接传递控制信息,控制信息是指网络通不通、主机是否可达、路由是否可用等网络本身信息。ICMP不传输用户信息。

ICMP安全

1)死亡之ping。ICMP数据包最大尺寸不能超过64KB,死亡之ping的攻击原理就是发送超过64KB上限的ICMP数据包,使得主机内存分配出错、TCP/IP堆栈崩溃,导致死机。

2)ICMP风暴。长时间、连续、大量地发送ICMP数据包,使得系统瘫痪。

典型应用

ping工具用于发送ICMP echo请求包。与之对应的,ICMP echo响应包。

ICMP也可用于traceroute路由追踪,tracert命令,识别一个设备到另一个设备的网络路径。通过路由追踪功能,找出网络故障的位置。

ICMP首部

ICMP协议分析

类型为8,回显请求;类型为0,回显响应;类型为11,超时;类型为3,目标主机不可达。

当请求超时或目标不可达时,可变域就是全0(00 00 00 00)。

当超时时,会在ICMP数据包中IP数据包信息的TTL字段数据域中填写1,表示告诉源主机所发送的数据包是不会到达目的主机的。

分析ICMP数据包

1、2为控制报文,3、4为差错报文
ICMP协议分析
1、Echo(ping) request

ICMP协议分析
2、Echo(ping) response

ICMP协议分析

ICMP协议分析

3、请求超时数据包 Time-to-live exceeded
ICMP协议分析

4、目标主机不可达数据包 Destination unreachable
ICMP协议分析