hmgle / graftcp

A flexible tool for redirecting a given program's TCP traffic to SOCKS5 or HTTP proxy.
GNU General Public License v3.0
2.14k stars 179 forks source link

我注意到当上游sock5代理关闭时, mgraftcp会试图用非代理的方式继续连接. 这会导致信息泄露. #42

Closed flyhigao closed 3 years ago

flyhigao commented 3 years ago

验证方式: $ mgraftcp bash

$ curl ddns.oray.com/checkip 如果这时sock5代理被关闭了,那么上述curl应该运行失败, 而现在mgraftcp的处理方式是用非代理的方式连接. 在一些隐私要求高的场景中,这会导致信息泄露. 至少请提供一个选项可以让用户来进行选择是中断还是继续非代理连接.

hmgle commented 3 years ago

目前 graftcp-localmgraftcp--select_proxy_mode 选项默认参数是 auto,当上游代理失败时会尝试直接连接。可以在设置该选项参数为 only_socks5 来避免 SOCKS5 以外的连接。 考虑到大部分的使用场景及用户环境,也许把该选项默认值设置为 only_socks5 是个更好的选择,下个版本将对此进行更新。