icmp隧道搭建(ICMP隧道通信原理与通信特征)

原创:Neiko合天智汇

一、ICMP 隧道技术解析

ICMP协议

ICMP(Internet Control Message Protocol)Internet控制报文协议。它是TCP/IP协议簇的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。

主要概念有:

1.确认ip数据包是否成功到达目的地

2.通知源主机发送ip数据包丢失的原因

3.ICMP是基于IP协议工作的

4.icmp只能作用于IPV4,IPV6下,使用ICMPv6

ICMP帧格式如下所示


icmp隧道搭建(ICMP隧道通信原理与通信特征)(1)

其中,类型和代码字段决定了ICMP报文的类型,如下图所示

icmp隧道搭建(ICMP隧道通信原理与通信特征)(2)

ICMP隧道技术原理

由于ICMP报文自身可以携带数据,而且ICMP报文是由系统内核处理的,不占用任何端口,因此具有很高的隐蔽性。

通常ICMP隧道技术采用ICMP的ICMP_ECHO和ICMP_ECHOREPLY两种报文,把数据隐藏在ICMP数据包包头的选项域中,利用ping命令建立隐蔽通道。

icmp隧道搭建(ICMP隧道通信原理与通信特征)(3)

进行隐蔽传输的时候,肉鸡(防火墙内部)运行并接受外部攻击端的ICMP_ECHO数据包,攻击端把需要执行的命令隐藏在ICMP_ECHO数据包中,肉鸡接收到该数据包,解出其中隐藏的命令,并在防火墙内部主机上执行,再把执行结果隐藏在ICMP_ECHOREPLY数据包中,发送给外部攻击端。

icmp隧道搭建(ICMP隧道通信原理与通信特征)(4)


简单的说就是,利用ICMP的请求和应答数据包,伪造ping命令的数据包形式,实现绕过防火墙和入侵检测系统的阻拦。

ICMP隧道优缺点

优点:

1.防火墙对ICMP_ECHO数据包是放行的,并且内部主机不会检查ICMP数据包所携带的数据内容,隐蔽性高。

缺点:

1.ICMP隐蔽传输是无连接的,传输不是很稳定,而且隐蔽通道的带宽很低

2.利用隧道传输时,需要接触更低层次的协议 ,这就需要高级用户权限

二、ICMP隧道攻击实现以及流行工具展示

icmpsh

这一工具简单并且便携。受控端(客户端)使用C语言实现。只能运行在目标Windows机器上,而主控端(服务端)由于已经有C和Perl实现的版本,而且之后又移植到了Python上,因此可以运行在任何平台的攻击者机器中。

icmpsh建立隧道及数据包分析

icmp隧道搭建(ICMP隧道通信原理与通信特征)(5)

可以看到已经实现成功。

抓包,可以看到我们输入的命令

icmp隧道搭建(ICMP隧道通信原理与通信特征)(6)

icmptunnel

icmptunnel是通过创建虚拟网卡,将所有流量都经过这个虚拟网卡。即ICMP隧道

  1. icmptunnel建立隧道及数据包分析

客户端主机上的所有用户流量都路由到虚拟网卡tun0。icmptunnel在此接口上侦听IP数据包。这些数据包封装在ICMP回显数据包中。

icmp隧道搭建(ICMP隧道通信原理与通信特征)(7)

建立ICMP隧道

icmp隧道搭建(ICMP隧道通信原理与通信特征)(8)

此时所有流量都通过虚拟网卡,即icmp隧道

icmp隧道搭建(ICMP隧道通信原理与通信特征)(9)

icmp隧道搭建(ICMP隧道通信原理与通信特征)(10)

ptunnel

ptunnel支持大多数具有libpcap的操作系统,从版本0.7开始,ptunnel也可以在Windows上编译。

前提是需要装WinPcap

  1. petunnel 建立隧道及数据包分析

icmp隧道搭建(ICMP隧道通信原理与通信特征)(11)

icmp隧道搭建(ICMP隧道通信原理与通信特征)(12)

使用命令建立ICMP隧道

icmp隧道搭建(ICMP隧道通信原理与通信特征)(13)

三、检测icmp隧道通信特征

icmp会话中数据包的总数

一个正常的 ping 每秒最多只会发送两个数据包,而使用 ICMP隧道的浏览器在同一时间会产生大量 ICMP 数据包。

icmp隧道搭建(ICMP隧道通信原理与通信特征)(14)

隧道数据通常比较大

ICMP隧道 数据包中DATA 往往大于 64 比特

icmp隧道搭建(ICMP隧道通信原理与通信特征)(15)

请求包和响应包内容不一致

icmp隧道搭建(ICMP隧道通信原理与通信特征)(16)

icmp隧道搭建(ICMP隧道通信原理与通信特征)(17)

而正常的icmp数据包里,请求和回应部分数据是一致的

icmp隧道搭建(ICMP隧道通信原理与通信特征)(18)

icmp隧道搭建(ICMP隧道通信原理与通信特征)(19)

部分隧道工具会显示tun的标志

icmp隧道搭建(ICMP隧道通信原理与通信特征)(20)

看完文章,可以上合天网安实验室学习哦!

Wireshark数据抓包分析之互联网控制报文协议:

http://www.hetianlab.com/expc.do?ec=ECID172.19.104.182015072017274900001

声明:笔者初衷用于分享与普及网络知识,若读者因此作出任何危害网络安全行为后果自负,与合天智汇及原作者无关!

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页