最好用的内网穿透工具合集


1、ngrok

ngrok 是一个反向代理,通过在公共的端点和本地运行的 Web 服务器之间建立一个安全的通道。

官网地址:

https://ngrok.com

使用步骤:

(1)进入 ngrok 官网注册账号,并下载 ngrok。

(2)在目标机器上,填写授权码,运行 ngrok。

./ngrok authtoken 授权码

(3)将 HTTP 隧道转发到本地端口 80,如下图,通过外网域名即可访问到本地 80 端口。

./ngrok http 80

img

2、frp

frp 是一个高性能的反向代理应用,可以帮助您轻松地进行内网穿透,对外网提供服务,支持 tcp, http, https 等协议类型,并且 web 服务支持根据域名进行路由转发。

git 项目地址:

https://github.com/fatedier/frp

使用步骤:

(1)将 frps 及 frps.ini 放到有公网 IP 的机器上,修改 frps.ini 文件,配置一个名为 ssh 的反向代理:

# frps.ini[common]bind_port = 7000
[ssh]listen_port=6000auth_token=123

(2)启动 frps:

./frps -c ./frps.ini

(3)将 frpc 及 frpc.ini 放到处于内网环境的机器上,修改 frpc.ini 文件,设置 frps 所在服务器的 IP 为 x.x.x.x:

# frpc.ini[common]server_addr = 192.168.172.131server_port = 7000auth_token =123
[ssh]type = tcplocal_ip = 127.0.0.1local_port = 22remote_port = 6000

(4)启动 frpc:

./frpc -c ./frpc.ini

(5)通过 ssh 访问内网服务器,假设用户名为 test:

ssh -p 6000 test@x.x.x.x

3、Sunny-Ngrok

一条命令解决的外网访问内网问题,无需任何配置,一条命令让外网访问您的内网不再是距离。Ngrok 客户端,支持 Windows、Linux、Mac,提供 python、PHP 等版本。

官网地址:

https://www.ngrok.cc

使用步骤:

(1) 开通 http 隧道,设置隧道协议、本地端口等信息。

img

(2)通过隧道 id 启动隧道。

img

(3)在公网上访问域名,即可访问到内网的网站。

img

4、Natapp

基于 ngrok 的内网映射工具,免费版本提供 http,tcp,udp 全隧道穿透、随机域名/随机 TCP,UDP 端口、不定时强制更换域名/端口和自定义本地端口。

下载地址:

https://natapp.cn

(1)购买隧道,设置隧道协议和本地端口。

img

(2)下载客户端,到目标主机,运行 natapp。

img

(3)将 natapp 分配的网址复制下来,在浏览器中访问,可以看到内网穿透成功了!

img

5、Earthworm 内网穿透

EW 是一套便携式的网络穿透工具,具有 SOCKS v5 服务架设和端口转发两大核心功能,可在复杂网络环境下完成网络穿透。

支持 Windows、Linux、MacOS、Arm-Linux。

项目地址:

http://rootkiter.com/EarthWorm

使用方法:

(1)正向 SOCKS v5 服务器,适用于目标网络边界存在公网 IP 且可任意开监听端口。

./ew -s ssocksd -l 1080

(2)反弹 SOCKS v5 服务器,适用于目标网络边界不存在公网 IP,需要通过反弹方式创建 socks 代理

 a) 先在一台具有公网 ip 的主机A上运行以下命令: ./ew -s rcsocks -l 1080 -e 8888
 b) 在目标主机B上启动 SOCKS v5 服务 并反弹到公网主机的 8888端口  ./ew -s rssocks -d 1.1.1.1 -e 8888

(3)多级级联,适用于多层级的复杂网络环境,将内网深层的服务转发到外网。

复制代码

## 二级级联测试用例

# 方式一:利用lcx_tran $ ./ew -s ssocksd  -l 9999 $ ./ew -s lcx_tran -l 1080 -f 127.0.0.1 -g 9999
# 方式二: $ ./ew -s lcx_listen -l 1080 -e 8888 $ ./ew -s ssocksd    -l 9999 $ ./ew -s lcx_slave  -d 127.0.0.1 -e 8888 -f 127.0.0.1 -g 9999

## 三级级联测试用例
  $ ./ew -s rcsocks -l 1080 -e 8888  $ ./ew -s lcx_slave -d 127.0.0.1 -e 8888 -f 127.0.0.1 -g 9999  $ ./ew -s lcx_listen -l 9999 -e 7777  $ ./ew -s rssocks -d 127.0.0.1 -e 7777

复制代码

6、reDuh

ReDuh 是一个通过 HTTP 协议建立隧道传输各种其他数据的工具,通过在服务器上传 JSP/PHP/ASP 脚本,就可以轻易地连接到服务器后面的主机。

github 项目地址:

https://github.com/sensepost/reDuh

(1)上传服务端 jsp 脚本到目标机器

img

(2)使用 reDuh 客户端连接服务端脚本上传后的地址。

java -jar reDuhClient.jar http://192.168.172.1/reDuh.jsp

img

7、reGeorg

reGeorg 是 reDuh 的继承者,利用了会话层的 socks5 协议,结合 Proxifier 使用效率会更高。

下载地址:

https://github.com/sensepost/reGeorg

使用方法:

(1)将 tunnel 脚本(aspx | ashx | jsp | php)上传到 Web 服务器,访问显示“Georg says, ‘All seems fine’“,表示脚本运行正常。

img

(2)在攻击者机器上,启动 reGeorgSocksProxy.py,监听 9999 端口,看到 Checking if Georg is ready,确认正常运行。

img

8、Tunna

Tunna 是一款神奇的工具,它可以通过 HTTP 封装隧道通信任何 TCP,以及用于绕过防火墙环境中的网络限制。

github 项目地址:

https://github.com/SECFORCE/Tunna

img

9、sSocks

sSocks 是一个 socks 代理工具套装,可用来开启 socks 代理服务,支持 socks5 验证,支持 IPV6 和 UDP,并提供反向 socks 代理服务,即将远程计算机作为 socks 代理服务端,反弹回本地,极大方便内网的渗透测试。

下载地址:

http://sourceforge.net/projects/ssocks/

使用方法:

(1)正向代理

./ssocksd --bind 192.168.172.131 --port 1234

(2)反向代理

## 监听6020端口转发到6010./rcsocks -l 6020 -p 6010 -vv
## 反向连接代理主机6010端口./rssocks -s 192.168.172.131:6010 -vv


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM