ICMP隐蔽隧道通信与检测
技术背景
在一些网络环境中,如果攻击者使用各类上层隧道(例如HTTP隧道,DNS隧道,正反向端口转发等)进行操作均失败。那么可以尝试使用ICMP建立隧道,ICMP协议不需要端口的开放,因为其基于IP工作的,所以我们将其归结到网络层,ICMP消息最为常见的就是ping命令的回复,将TCP/UDP数据包封装到ICMP的ping数据包中,从而穿过防火墙**(通常防火墙是不会屏蔽ping数据包的)**
技术原理
由于ICMP报文自身可以携带数据,而且ICMP报文是由系统内核处理的,不占用任何端口,因此具有很高的隐蔽性。
通常ICMP隧道技术采用ICMP的ICMP_ECHO和ICMP_ECHOREPLY两种报文,把数据隐藏在ICMP数据包包头的选项域中,利用ping命令建立隐蔽通道。
进行隐蔽传输的时候,防火墙内部主机运行并接受外部攻击端的ICMP_ECHO数据包,攻击端把需要执行的命令隐藏在ICMP_ECHO数据包中,被攻击者接收到该数据包,解出其中隐藏的命令,并在防火墙内部主机上执行,再把执行结果隐藏在ICMP_ECHOREPLY数据包中,发送给外部攻击端。

优缺点
- 优点:防火墙对ICMP_ECHO数据包是放行的,并且内部主机不会检查ICMP数据包所携带的数据内容,隐蔽性高。
- 缺点:ICMP隐蔽传输是无连接的,传输不是很稳定,而且隐蔽通道的带宽很低。利用隧道传输时,需要接触更低层次的协议 ,这就需要高级用户权限。
icmptunnel
服务器暴露在外网上,可以访问外部网络,但是服务上有防火墙,拒绝了敏感端口的连接(比如22端口,33

ICMP隐蔽隧道利用ICMP协议的特性进行数据传输,避开防火墙限制,具有高隐蔽性但稳定性差、带宽低。icmptunnel工具可建立ICMP隧道,绕过对特定端口的封锁。检测方法包括分析异常ICMP流量和检查协议标签。文章还提供了设置与使用ICMP隧道的快速入门指南。
最低0.47元/天 解锁文章
1456

被折叠的 条评论
为什么被折叠?



