[工具分享] yuze - 一款纯C实现的基于socks5协议的轻量内网穿透工具
字数 1061 2025-08-22 12:22:15

yuze - 基于SOCKS5协议的轻量内网穿透工具教学文档

工具简介

yuze是一款纯C实现的基于socks5协议的轻量内网穿透工具,由P001water开发。该工具最初使用Go语言实现,后因编译体积问题改用纯C实现,支持EarthWorm(ew)的全部数据转发方式。

主要特点

  • 支持正向、反向代理
  • 支持多种数据转发方式,可穿透复杂网络环境
  • 支持任意基于TCP协议的服务
  • 体积小巧(仅25KB)
  • 轻量级内网穿透解决方案

使用场景与模式

1. 正向代理模式 (s_server)

适用场景:可控主机有公网IP且可开启任意监听端口

使用方法

./yuze -m s_server -l [监听端口]

示例

./yuze -m s_server -l 7878

示意图

HackTools -> Host_One:7878 (SOCKS5代理)

2. 反向代理模式

适用场景:可控主机无公网IP但可出网,通过主动连接建立反向SOCKS代理

使用方法

  1. 在公网主机上:
./yuze -m yuze_listen -s [接收端口] -e [转交端口]
  1. 在内网主机上:
./yuze -m r_server -r [公网主机IP] -s [转交端口]

示例

# 公网主机
./yuze -m yuze_listen -s 7878 -e 9999

# 内网主机
./yuze -m r_server -r 127.0.0.1 -s 9999

示意图

HackTools -> Host_One:7878 -> Host_Two反向连接

3. yuze_tran模式

适用场景

  • 获得目标网络内两台主机A、B的权限
  • A主机:有公网IP,可监听任意端口,但无法访问特定资源
  • B主机:内网主机,可访问特定资源,但无法访问公网
  • A主机可直连B主机

使用方法

  1. 在B主机上:
./yuze -m s_server -l [B监听端口]
  1. 在A主机上:
./yuze -m yuze_tran -s [A监听端口] -d [B主机IP] -e [B监听端口]

示例

# Host_Two (B主机)
./yuze -m s_server -l 9999

# Host_One (A主机)
./yuze -m yuze_tran -s 7878 -d 127.0.0.1 -e 9999

示意图

HackTools -> Host_One:7878 -> Host_Two:9999

4. yuze_slave模式

适用场景

  • 获得目标网络内两台主机A、B的权限
  • A主机:边界主机,无公网IP,无法访问特定资源
  • B主机:内网主机,可访问特定资源,但无法回连公网
  • A主机可直连B主机

使用方法

  1. 在公网主机上:
./yuze -m yuze_listen -s [接收端口] -e [转交端口]
  1. 在B主机上:
./yuze -m s_server -l [B监听端口]
  1. 在A主机上:
./yuze -m yuze_slave -r [公网主机IP] -s [转交端口] -d [B主机IP] -e [B监听端口]

示例

# Host_One (公网主机)
./yuze -m yuze_listen -s 7878 -e 8888

# Host_Three (B主机)
./yuze -m s_server -l 9999

# Host_Two (A主机)
./yuze -m yuze_slave -r 127.0.0.1 -s 8888 -d 127.0.0.1 -e 9999

示意图

HackTools -> Host_One:7878 -> Host_Two:8888 <-> Host_Three:9999

参数说明

参数 描述
-m 指定运行模式 (s_server/r_server/yuze_listen/yuze_tran/yuze_slave)
-l 本地监听端口
-s 源端口/接收端口
-e 目标端口/转交端口
-d 目标主机IP
-r 远程主机IP

开发计划 (TODO)

  1. 跨平台功能支持(主要是API替换)
  2. 通信流量加密
  3. 欢迎社区贡献更多功能想法

致谢

yuze的很多灵感来自于对EarthWorm(ew)的逆向分析,开发者向前辈致敬。工具更新的动力来自社区反馈,如果对您有所帮助,请多多star支持。

总结

yuze是一款功能强大且轻量级的内网穿透工具,特别适合在复杂网络环境中建立代理隧道。通过不同的模式组合,可以应对各种网络限制场景,是渗透测试和内网穿透的有力工具。

yuze - 基于SOCKS5协议的轻量内网穿透工具教学文档 工具简介 yuze是一款纯C实现的基于socks5协议的轻量内网穿透工具,由P001water开发。该工具最初使用Go语言实现,后因编译体积问题改用纯C实现,支持EarthWorm(ew)的全部数据转发方式。 主要特点 支持正向、反向代理 支持多种数据转发方式,可穿透复杂网络环境 支持任意基于TCP协议的服务 体积小巧(仅25KB) 轻量级内网穿透解决方案 使用场景与模式 1. 正向代理模式 (s_ server) 适用场景 :可控主机有公网IP且可开启任意监听端口 使用方法 : 示例 : 示意图 : 2. 反向代理模式 适用场景 :可控主机无公网IP但可出网,通过主动连接建立反向SOCKS代理 使用方法 : 在公网主机上: 在内网主机上: 示例 : 示意图 : 3. yuze_ tran模式 适用场景 : 获得目标网络内两台主机A、B的权限 A主机:有公网IP,可监听任意端口,但无法访问特定资源 B主机:内网主机,可访问特定资源,但无法访问公网 A主机可直连B主机 使用方法 : 在B主机上: 在A主机上: 示例 : 示意图 : 4. yuze_ slave模式 适用场景 : 获得目标网络内两台主机A、B的权限 A主机:边界主机,无公网IP,无法访问特定资源 B主机:内网主机,可访问特定资源,但无法回连公网 A主机可直连B主机 使用方法 : 在公网主机上: 在B主机上: 在A主机上: 示例 : 示意图 : 参数说明 | 参数 | 描述 | |------|------| | -m | 指定运行模式 (s_ server/r_ server/yuze_ listen/yuze_ tran/yuze_ slave) | | -l | 本地监听端口 | | -s | 源端口/接收端口 | | -e | 目标端口/转交端口 | | -d | 目标主机IP | | -r | 远程主机IP | 开发计划 (TODO) 跨平台功能支持(主要是API替换) 通信流量加密 欢迎社区贡献更多功能想法 致谢 yuze的很多灵感来自于对EarthWorm(ew)的逆向分析,开发者向前辈致敬。工具更新的动力来自社区反馈,如果对您有所帮助,请多多star支持。 总结 yuze是一款功能强大且轻量级的内网穿透工具,特别适合在复杂网络环境中建立代理隧道。通过不同的模式组合,可以应对各种网络限制场景,是渗透测试和内网穿透的有力工具。