Skip to content

Changelog

roadmap

stage 0

  • 正向端口转发, 将端口从本机转发到远程
  • 反向端口转发, 将端口从远程转发到本机
  • 正向代理, 搭建socks5/http代理
  • 反向代理, 通过服务器, 将流量代理至客户端. (rem中实际上并不一定有服务端与客户端之分, rem中可以将流量代理至任意节点)
  • 代理, 通过其他服务提供的代理协议, 例如socks5/http代理, 转发rem协议本身的流量
  • 转发, 通过其他服务提供的代理协议, 将出方向的流量转发到指定目标
  • 级联, 能通过rem自身的协议, 形成多级的节点的连接关系
  • 多级端口转发, 将端口从本机通过rem转发到任意rem网络中的节点
  • 多级代理转发, 将流量通过rem转发到任意rem网络中的节点
  • RPORTFWD_LOCAL, (多级端口转发的特例), 将本机的的端口通过rem转发至
  • PORTFWD_LOCAL, (多级端口转发的特例), 将rem节点的端口转发至本机

特性:

  • 传输层, 支持TCP, UDP, ICMP, WIREGUARD等各种场景传输层协议
  • 加密层, TLS/MTLS或者任意自定义的加密协议
  • 混淆层, 模拟特定协议
  • 连接复用

stage 1

  • 调整主体文件结构
  • 调整函数,文件,变量命名
  • 重构代理逻辑
  • 代码解耦
  • 重构monitor与流量控制
  • 重新设计cli ui
  • 支持rportfwd
  • 重新设计msg
  • 重新设计wrapper
  • 支持neoregeorg, 将半双工信道升级为全双工
  • 支持云函数, cdn等
  • 支持配置任意数量的多级透明socks5/socks4a/socks4/http/https代理
  • 支持tls协议 (working)
  • 支持级联 (working)
  • 支持端口复用(搁置)
  • 支持端口敲门(搁置)
  • RPORTFWD_LOCAL与PORTFWD_LOCAL
  • 重构proxyclient
  • 支持clash订阅
  • 支持shadow-tls
  • 支持对外暴露多种类型的协议
  • socks5
  • http/https
  • trojan
  • v2ray

高级功能

  • Proxy as a service, 提供一套流量协议标准以及多语言跨平台sdk, 无性能损耗的转发流量 (working)
  • 心跳代理, 使用非长连接的方式建立代理, 实现更复杂的流量与统计学特征混淆
  • P2P式的多级代理, 类似STUN协议
  • 重载任意C2的listener, 最终目的将listener从C2中解耦出来
  • 实现编译期, 自定义templates. 实现随机流量特征与最小文件体积
  • 通过ebpf与raw packet实现更高级的信道建立与隐蔽

log

v0.2.2

  • [feat] 新增clash config的自动网段配置
  • [feat] 新增cobaltstrike external c2 demo
  • [feat] 新增流量全局压缩, -c tcp:///?compress=true
  • [feat] 新增tlsintls , -c tcp:///?tlsintls=true
  • [feat] 新增build.sh的-t,-a,-o参数

v0.2.1

  • [feat] support cmdline from stdin
  • [feat] add rem lib release, dll/so/a
  • [fix] unaligned int panic
  • [fix] buffer close panic
  • [fix] socks5 parse ipv6 error

v0.2.0

  • [feat] add cmd/export as FFI ABI
  • [feat] add build.sh
  • [feat] add as package api
  • [fix] xor/aes wrapper bug
  • [fix] cio Read not full
  • [improve] refactor metrics and log
  • [improve] add connect mod, just connect ,no serving.

v0.1.1

  • [feature] inbound: 支持 tcp+socks5 协议或memory+socks5, 允许inbound协议在不同的传输层上搭建
  • [feature] proxyclient: 实现内存代理功能
  • [feature] proxyclient:实现 rem proxyclient
  • [feature] tunnel: 实现内存通道
  • [feature] kcp: 实现 KCP ICMP 传输
  • [feature] kcp: 实现 HTTP/ICMP KCP 传输
  • [feature] kcp: 实现 HTTP 通道
  • [feature] kcp: 解耦 simplex 和 HTTP 传输
  • [feature] cmd: 添加 no-sub 标志以禁用订阅功能
  • [refactor] kcp: 重构 KCP 替换 kicmp 和 KCP-GO
  • [refactor] tunnel: 重构tunnel,拆分为 dialer 和 listener
  • [refactor] tunnel: 重构agent ID 和bridge ID 生成
  • [enhance] proxyclient: ssh代理连接复用
  • [enhance] tunnel: 提升缓冲区性能
  • [fix] 大量bug修复

v0.1.0

彻底重构

  • 正向端口转发, 将端口从本机转发到远程
  • 反向端口转发, 将端口从远程转发到本机
  • 正向代理, 搭建socks5/http代理
  • 反向代理, 通过服务器, 将流量代理至客户端. (rem中实际上并不一定有服务端与客户端之分, rem中可以将流量代理至任意节点)
  • 代理, 通过其他服务提供的代理协议, 例如socks5/http代理, 转发rem协议本身的流量
  • 转发, 通过其他服务提供的代理协议, 将出方向的流量转发到指定目标
  • 级联, 能通过rem自身的协议, 形成多级的节点的连接关系
  • 多级端口转发, 将端口从本机通过rem转发到任意rem网络中的节点
  • 多级代理转发, 将流量通过rem转发到任意rem网络中的节点
  • RPORTFWD_LOCAL, (多级端口转发的特例), 将本机的的端口通过rem转发至
  • PORTFWD_LOCAL, (多级端口转发的特例), 将rem节点的端口转发至本机

特性:

  • 传输层, 支持TCP, UDP, ICMP, WIREGUARD等各种场景传输层协议
  • 加密层, TLS/MTLS或者任意自定义的加密协议
  • 混淆层, 模拟特定协议
  • 连接复用