![CI]()
![Go ]()
![Release]()

全场景应用层/传输层代理工具, 支持任意方向、任意信道的隧道与代理。
rem 中没有 ser 的概念, 每个节点都是对等的 Agent。节点通过 -s (listener) 和 -c (dialer) 自由组合建立传输层连接, 通过 -l 和 -r 在连接两端提供应用层服务。
节点的角色完全由参数组合决定:
| 参数组合 | 角色 |
|---------|------|
| -s | 纯监听, 等待 agent 连入 |
| -c | 纯连接, 不开 serve |
| -c -l socks5://... | 本端开 SOCKS5, 流量从对端出去 |
| -c -r socks5://... | 对端开 SOCKS5, 流量从本端出去 |
| -c -l socks5://... -r socks5://... | 两端都开 SOCKS5, 互为出口 |
| -c -s | 中继节点 (relay): 连上游 + 监听下游 |
| -c -s -l socks5://... | 中继 + 本端开 SOCKS5 |
-s/-c 自由组合, 天然支持 relay 和多跳-l 和 -r 可同时指定, 两端各自开启 serve, 互为出口-x 串联多层代理, 支持 SOCKS5/HTTP/Shadowsocks 混合链up-/down- 前缀将上传和下载拆分到不同信道| 协议 | URL Scheme | 说明 |
|------|-----------|------|
| TCP | tcp:// | 标准 TCP 隧道 |
| UDP | udp:// | UDP 数据报隧道, 内置 KCP 可靠传输 |
| HTTP | http:// | HTTP 长轮询隧道 |
| HTTP/2 | h2:// | HTTP/2 多路复用隧道 |
| StreamHTTP | streamhttp:// | SSE 下行 + POST 上行, 适合 CDN 场景 |
| WebSocket | ws:// wss:// | WebSocket 全双工隧道 |
| DNS | dns:// | DNS 查询隧道 (需 -tags dns) |
| ICMP | icmp:// | ICMP Echo 隧道 (需 root 权限) |
| WireGuard | wg:// | WireGuard VPN 隧道 |
| Unix Socket | unix:// | Unix 域套接字 |
| Memory | memory:// | 进程内存隧道, 用于 C 库集成 |
通过 SR-ARQ 协议将不可靠的单工信道升级为可靠的全双工隧道:
| 信道 | URL Scheme | 说明 |
|------|-----------|------|
| DNS | simplex+dns:// | DNS TXT/CNAME 记录传输 |
| OSS | simplex+oss:// | 阿里云 OSS 对象存储传输 (需 -tags oss) |
| HTTP | simplex+http:// | HTTP 轮询传输 |
| 服务 | URL Scheme | 说明 |
|------|-----------|------|
| SOCKS5 | socks5:// | SOCKS5 代理, 支持认证 |
| HTTP Proxy | http:// | HTTP/HTTPS 正向代理 |
| Port Forward | port:// | TCP 端口转发 |
| Raw | raw:// | 原始 TCP 透传 |
| Shadowsocks | ss:// | Shadowsocks 代理 |
| Trojan | trojan:// | Trojan 协议 |
| External C2 | externalc2:// | 外部 C2 对接 |
| Wrapper | 参数 | 说明 |
|---------|-----|------|
| TLS | ?tls | TLS 加密 |
| Cryptor | ?wrapper=aes-128-cfb | 对称加密 |
| Snappy | ?compress | Snappy 压缩 |
| Padding | ?wrapper=padding | 流量填充 |
默认内置: AES, XOR
通过 build tag 启用: SM4, Twofish, 3DES, CAST5, Blowfish, TEA, XTEA
通过 -x 串联多层出站代理, 通过 -f 为 Console 连接指定代理:
流量路径: 本地 → -f 代理链 → Console → Tunnel → -x 代理链 → 目标
将上传和下载拆分到不同的信道, 适用于不对称网络环境:
up- 前缀标记上行信道 (client→server), down- 前缀标记下行信道 (server→client)。可混合使用不同协议, 如 TCP 上行 + UDP 下行, 或 HTTP 上行 + WebSocket 下行。
同时建立多条连接并进行负载均衡:
| 算法 | 说明 |
|------|------|
| random | 随机选择连接 |
| fallback | 优先第一条, 故障时降级 |
| round-robin | 轮询分发 |
通过 -d 指定目标 Agent, 实现流量在 Agent 网络中跨节点转发:
断线后自动重连, 支持指数退避:
编译为共享库后可被其他语言调用:
导出函数: InitDialer(), RemDial(), MemoryDial(), MemoryRead(), MemoryTryRead(), MemoryReadTimeout(), MemoryWrite(), MemoryClose(), CleanupAgent()
所有 URL 支持通过 query 参数配置:
可在编译时内置默认参数, 生成免配置的一键部署二进制:
| 项目 | 特点 |
|------|------|
| frp | 最常用的反向代理, 配置丰富但较复杂 |
| gost | 强大的正向代理, v3 支持反向 |
| iox | 轻量的端口转发工具 |
| Xray | 协议隐蔽性与密码学特性优秀 |
| chisel | HTTP 隧道工具 |
MIT
开发语言:Go
Star 数:274
该项目属于红蓝攻防方向的开源资源,代码结构清晰,适合安全研究人员学习参考。项目围绕proxy/tunnel everything for red team!展开,提供了可运行的实现,对理解相关安全机制、工具原理与攻防技术具有较高的研究价值。
从技术实现角度看,此类项目的核心在于对底层原理的深入理解与工程化落地。开发者在研究过程中可以结合官方文档与社区讨论,梳理项目的初始化流程、核心模块职责与数据流转,逐步掌握其中的技术细节与设计思路。
1. 下载源码压缩包,解压到本地环境。
2. 根据项目类型准备对应的运行环境与依赖。
3. 按照 README 中的步骤完成配置与部署。
4. 在隔离的测试环境中运行验证,避免影响生产系统。
本资源来源于开源社区,仅供安全研究、技术学习与合法授权范围内的攻防演练使用,请勿用于任何非法或侵害他人权益的用途。使用本项目产生的一切后果由使用者自行承担。
| 资源标题 | rem - proxy/tunnel everything for red team! |
| 所属分类 | 红蓝攻防 |
| 发布作者 | admin |
| 发布时间 | 2026-10-06 00:44:56 |
| 下载权限 | 免费下载 |
| 附件数量 | 2 个下载链接 |
| 浏览次数 | 318 |
| 讨论数量 | 0 |
| 主题状态 | 正常讨论中 |