Loading... # ICMP ICMP(Internet Control Message Protocol)Internet控制报文协议。它是TCP/IP协议簇的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。 主要概念: 1. 确认Ip数据包是否成功到达目的地。 2. 通知源主机发送IP数据包丢失原因。 3. ICMP基于IP协议工作 4. ICP 作用于IPV4,IPV6下使用ICMPv6 ICMP数据帧格式 ![](https://www.irohane.top/usr/uploads/2022/06/1847340220.png) 类型何代码字段决定了ICMP报文类型。 ![](https://www.irohane.top/usr/uploads/2022/06/2730260390.png) ## ICMP隧道技术原理 ICMP报文自身可以携带数据,ICMP报文由系统内核处理,不使用任何端口,因此具有很高隐蔽性。 通常ICMP隧道技术采用ICMP的ICMP_ECHO何ICMP_ECHOREPLY两种报文,把数据隐藏在ICMP数据包包头的选项域中,利用Ping命令建立隐蔽通道。 ![](https://www.irohane.top/usr/uploads/2022/06/3528719525.png) 进行隐蔽传输的时候,肉鸡运行接受外部端ICMP_ECHO数据包,攻击端把需要的执行命令隐藏在ICMP_ECHO数据包中,肉鸡接受到数据包之后,解出其中隐藏的命令并运行,再把执行结果隐藏在ICMP_ECHOREPLY数据包中,发送给外部攻击端。 ![](https://www.irohane.top/usr/uploads/2022/06/2036448445.png) 优点: 1. 防火墙默认对ICMP_ECHO数据包放行,并且内部主机不会检查ICMP数据包所携带的数据内容,高隐蔽。 缺点: 1. ICMP传输无连接,传输不稳定,隐蔽通道带宽低。 2. 利用隧道传输时,需要接触更底层的协议,需要高级用户权限 ## 代码 https://blog.csdn.net/earbao/article/details/21972657 【当前未实现只参考其他代码】 # DNS隧道 最后修改:2022 年 06 月 14 日 © 允许规范转载 赞 2 如果觉得我的文章对你有用,请随意赞赏