【Pingtunnel工具教程】利用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上面的项目,支持多种系统版本,只需要找到自己版本的下载就行:
https://github.com/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封装穿透防火墙.。百度和各类采集站皆不可信,搜索请谨慎鉴别。技术类文章一般都有时效性,本人习惯不定期对自己的博文进行修正和更新,因此请访问出处以查看本文的最新版本。

  • 12
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

归去来兮-zangcc

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值