第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > 【Pingtunnel工具教程】利用ICMP隧道技术进行ICMP封装穿透防火墙

【Pingtunnel工具教程】利用ICMP隧道技术进行ICMP封装穿透防火墙

时间:2018-12-05 14:34:17

相关推荐

【Pingtunnel工具教程】利用ICMP隧道技术进行ICMP封装穿透防火墙

文章目录

前言一、ICMP隧道概念二、复现前的准备工作&相关环境介绍三、复现步骤三、总结

前言

web搞太多了,发现csdn上面很少内网的内容,所以今天来整点内网的隧道技术,ICMP隧道。

由于网络上很多人用的是老工具Ptunnel,现在最新的是Pingtunnel了,所以我就打算用最新的Pingtunnel工具来做这个ICMP隧道技术实验。

提示:以下是本篇文章正文内容,下面案例可供参考

一、ICMP隧道概念

在一些网络环境中,如果不经过认证,TCP和UDP数据包都会被拦截。如果用户可以ping通远程计算机,就可以尝试建立ICMP隧道,将TCP数据通过该隧道发送,实现不受限的网络访问。用户需要在受限制网络之外,预先启动该工具建立代理服务器。再以客户端模式运行该工具,就可以建立ICMP隧道。为了避免该隧道被滥用,用户还可以为隧道设置使用密码。

一、imcptunnel可以将IP流量封装进ICMP的ping数据包中,旨在利用ping穿透防火墙的检测,因为通常防火墙是不会屏蔽ping数据包的。

二、请求端的ping工具会在ICMP数据包后面附加上一段随机的数据作为payload,而响应端则会拷贝这段payload到ICMP响应数据包中返还给请求端,用于识别和匹配ping请求。

三、在使用pingtunnel进行内网穿透时,客户端会将IP帧封装在ICMP请求数据包汇总发送给服务端,而服务端则会使用相匹配的ICMP响应数据包进行回复。这样子在旁人看来,网络中传播的仅仅只是正常的ICMP数据包。

二、复现前的准备工作&相关环境介绍

首先,先看网络拓扑图:

假设,主机A是黑客主机,A与B能通信,B与C能通信,但是A与C不能,这里我在主机C上放了一个hello文件,当访问它时,就会显示以下内容:

为了方便复现,我选择了3台kali系统的虚拟机来做测试,从左往右,分别代表拓扑图里的主机A、B、C。

访问C主机的80端口,hello文件,会出现

hello this is : 192.168.25.138

这些内容,而192.168.25.138就是C主机的ip地址。

所以到这里来做个小结:

kali_主机A(左边第一台):192.168.25.130

kali_主机B(左边第二台):192.168.25.137

kali_主机C(左边第三台):192.168.25.138

主机B成功访问C的80端口hello文件:

主机A则访问不到:

怎么样设置主机A不能访问主机C呢?下面的命令就是禁止主机A通过tcp协议来访问主机C的命令。

-s 参数后面的ip地址是主机A的地址

iptables -A INPUT -p tcp -s 192.168.25.130 -j DROP

查看当前防火墙策略:

iptables -L

清空还原默认的防火墙策略:

iptables -F

因为ICMP隧道的核心就是防火墙没有拦截ICMP协议,所以可以用ping命令来做测试,如果A能ping通C,则可以使用ICMP隧道。

各个主机之间的测试:

A与B(通):

B与C(通):

A与C(通):

三、复现步骤

由于三者之间都能ping通的,说明防火墙没有拦截ICMP协议。接下来就要用到ICMP协议的工具,pingtunnel

这个工具是github上面的项目,支持多种系统版本,只需要找到自己版本的下载就行:

/esrrhs/pingtunnel/releases/tag/2.6

下载完成之后,就可以进行后续的操作了。

在主机B上执行:

./pingtunnel -type server -key 1234 #设置密码

-key参数后面跟的是密码,我设置的是1234

在主机A上执行:

pingtunnel.exe -type client -l :4455 -s 192.168.25.137 -t 192.168.25.138:80 -tcp 1 -key 1234 #监听本地的 4455 端口,发送到4455端口的流量将通过 ICMP 隧道转发到 47.244.96.168 服务器的 80 端口

所以所以所以,在执行完上面两条命令之后,在主机A上访问http://localhost:4455即可访问C的目标80端口。

nice!没毛病,这个时候加上hello文件试试:

完美。这样我们就突破了防火墙的限制,直接访问到了。

三、总结

隧道是一个非常有魅力的技术,无论是我刚学那会还是我现在做总结,两次给我的感觉都非常美妙,ICMP隧道是所有隧道里面最简单理解登录,后面我还会写一些dns的和其他协议的隧道,当做补充吧。

文章原创,欢迎转载,请注明文章出处: 【Pingtunnel工具-隧道技术】利用ICMP隧道技术进行ICMP封装穿透防火墙.。百度和各类采集站皆不可信,搜索请谨慎鉴别。技术类文章一般都有时效性,本人习惯不定期对自己的博文进行修正和更新,因此请访问出处以查看本文的最新版本。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。