这个项目能做什么
NaïveProxy 是一款利用 Chromium 网络栈来伪装流量的代理工具,旨在提供强大的抗审查能力和极低的检测率。它通过流量多路复用、Chrome 的 TLS 栈、应用前端化以及填充与分片技术,有效缓解了网站指纹识别、TLS 参数指纹、主动探测和基于长度的流量分析。
架构:浏览器 → Naïve 客户端 → 审查系统 → 前端 → Naïve 服务端 → 互联网。前端可以使用带有 forwardproxy 插件的 Caddy 或 HAProxy,根据授权头路由 HTTP/2 流量。Naïve 服务端则作为带有数据包长度填充层的转发代理运行。
支持平台:Windows、Android(通过 Exclave、husi、NekoBox)、Linux、macOS 和 OpenWrt。用户应始终使用最新版本,以保持与 Chrome 一致的签名。
服务端设置使用 Caddy forwardproxy 的分支版本,并包含 NaïveProxy 填充功能。Caddyfile 示例配置了 TLS、基本认证、隐藏 IP/Via 以及 443 端口的探测防御。
客户端设置在本地运行 SOCKS5 代理(默认端口 1080),通过 HTTPS 或 QUIC 连接到服务端。配置通过包含 listen 和 proxy 字段的 JSON 文件完成。
填充协议:每个双向流的前 8 次读/写操作会填充 0-255 字节的随机数据。RST_STREAM 帧被填充以模拟 HEADERS 帧。CONNECT 请求/响应的 HEADERS 帧包含伪随机填充头。填充功能通过 CONNECT 请求/响应中是否存在填充头来选择开启。
与 Chromium 上游的区别:精简了源代码(仅为原始代码的 0.3%),禁用了异常/RTTI(Mac/Android 除外),增加了 OpenWrt 支持、内置证书验证器、AIA PKCS#7 处理、更高的套接字限制、强制隧道、HTTP/2/3 CONNECT Fast Open 以及 RST_STREAM 填充。
评论
0 评分人数达到10人后显示
登录后参与讨论。