信息来源:
uTLS 曝出指纹泄露漏洞:可被GFW利用高效识别代理流量
被广泛用于模拟真实浏览器指纹的 uTLS 库存在一个严重的指纹泄露漏洞,进而对主流的代理工具构成了严重威胁。
该漏洞会导致 uTLS 在模仿浏览器时,有 50% 的概率创造出一个矛盾的 TLS 指纹:即外部连接声称优先使用 AES 加密,但其内部 ECH 功能却使用了 ChaCha20。这种矛盾的指纹组合在真实浏览器中绝不会出现,因此可以被立即识别。此漏洞存在于 2023年12月至2025年10月之间的所有 uTLS 版本。
依赖 uTLS 进行指纹模拟的代理工具均受此影响。例如,在 Xray 中 uTLS 功能无法被关闭,且其 fingerprint 默认设置为 chrome,这会直接导致指纹泄露。用户需要手动将其修改为 firefox 或其他浏览器指纹以作规避。
此漏洞可被 GFW 等审查系统利用,从而极大地提高识别效率。虽然单个连接的泄露概率是50%,但由于代理工具会持续产生大量连接,审查系统识别出用户流量的成功率几乎可以达到100%。比较讽刺的是,如果你不使用 uTLS 伪装,GFW反而很难识别代理流量,因此如果没有必要请勿开启 uTLS 伪装。
啥事?
最近是不是感觉节点连接困难,疯狂丢包,或者干脆直接连不上了?这不是偶然,你很可能是被精准识别了。
简单说,现在有个新方法能认出你的流量是不是在“伪装”。特别是如果你用的 REALITY 协议,并且 指纹 (fingerprint) 设置的是 chrome,那就非常危险。
一旦被识别,轻则连接被干扰、疯狂丢包导致奇慢无比,重则IP或端口被临时拉黑,节点直接GG。
这事影响所有用 REALITY 的兄弟们,赶紧动手改一下保平安。
怎么办?
长话短说,解决办法就一句话:
赶紧把你客户端里所有节点的 TLS 指纹(fingerprint)从
chrome换成firefox或者random!
⚠️ 核心原理,必看防晕:
这个修复动作,最终是在你的客户端上生效的。因为“指纹”是你电脑/手机发出的第一个信号,服务器本身没法改变它。下面的两种方法,都是为了让你的客户端用上新的配置。
具体怎么操作?
看你是怎么加的节点,两种情况:
情况一:用订阅链接的懒人办法(强烈推荐)
这是最高效的办法,让专业的人干专业的事。
去戳你家机场:直接给机场客服或者老板发消息,提醒他 uTLS 指纹出事了,请他从后台,把你订阅链接里的配置内容统一修改掉,把所有节点的
fingerprint参数从chrome改成firefox。- (说清楚:他改的是你下载到的那个“配置文件”,而不是去动服务器本身。服务器不用动。)
你只管更新:等机场那边通知你改好了,你就在客户端里手动点一下“更新订阅”,客户端下载了新的配置,自然就用上了新指纹。一秒钟所有节点就都修复了,完事儿。👍
情况二:自己手动一个个加节点的苦力活
如果机场不给力,或者你是手动党,那就只能自己动手了。
- 在你的客户端软件里,找到节点列表。
- 选中一个节点,右键 -> “编辑”或者“修改”。
- 在配置详情里,仔细找找“流设置 (Stream Settings)”或者“传输”相关的选项。
- 点进去找到 TLS 设置,就能看到“指纹 (Fingerprint)”或者“uTLS”了。
- 把
chrome换成firefox(首选)或者random。 - 保存!然后对你列表里每一个节点都重复一遍这个操作。
别嫌烦,为了能继续愉快地玩耍,这点操作是必须的。
高手进阶玩法 🚀
你要是懂怎么导配置,可以把所有节点导出成一个 json 或 yaml 文件,用 VS Code 这类编辑器打开,一个“查找并全部替换”功能:
- 查找:
"fingerprint": "chrome" - 替换为:
"fingerprint": "firefox"
一键搞定,再把改好的配置文件导回去,效率起飞!
好了,就这么多,赶紧去检查修改吧!
评论 (0)