We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
出于该改动可能有部分兼容和安全等影响,开此新置顶 issue 用作通知。原 issue 虽然已经解决,但可能近期仍有部分讨论故移动至 v2ray/discussion。
TL;DR: 正在使用 TLS 和 WebSocket 功能的用户且担心使用环境中有潜在的指纹识别风险的,应当升级 TLS 客户端侧到 v4.23.2 或更高版本。
客户端代码中使用了一个固定的 TLS 密码套件列表进行握手,这个固定列表可能在 V2Ray 客户端发送 TLS 握手包时被防火墙用作识别 V2Ray 客户端的特征。
v2ray-core 项目在 2018 年中的版本(v3.23.1)中引入了 TLS 底层配置的功能,此后这个列表便一直存在于代码中。2019 年的版本(v4.18.1)中因为加入 TLS 1.3 的支持,列表增加了一些项目。
Golang 标准库的 crypto/tls 也在活跃的维护当中,已经有完善了密码套件的选择机制,标准库会根据运行的硬件平台性能选择适当的密码套件顺序。
新版本(v4.23.2+)去掉列表,设为空值(nil),由 Golang 底层处理。
进一步避免指纹被侦测的另外一个思路是把 TLS 配置成跟常见浏览器一致(注:浏览器不同版本的 TLS 指纹都有所区别)。目前有项目 (如 tlsfingerprint.io) 在关注这个问题。
对 V2Ray 项目而言,这属于功能性加强,会在后续版本中引入由 uTLS 库提供的伪装指纹功能。
The text was updated successfully, but these errors were encountered:
see #2542.
Sorry, something went wrong.
No branches or pull requests
出于该改动可能有部分兼容和安全等影响,开此新置顶 issue 用作通知。原 issue 虽然已经解决,但可能近期仍有部分讨论故移动至 v2ray/discussion。
TL;DR: 正在使用 TLS 和 WebSocket 功能的用户且担心使用环境中有潜在的指纹识别风险的,应当升级 TLS 客户端侧到 v4.23.2 或更高版本。
“漏洞”到底“漏”了什么?
客户端代码中使用了一个固定的 TLS 密码套件列表进行握手,这个固定列表可能在 V2Ray 客户端发送 TLS 握手包时被防火墙用作识别 V2Ray 客户端的特征。
“漏洞”存在多长时间?
v2ray-core 项目在 2018 年中的版本(v3.23.1)中引入了 TLS 底层配置的功能,此后这个列表便一直存在于代码中。2019 年的版本(v4.18.1)中因为加入 TLS 1.3 的支持,列表增加了一些项目。
目前处理方法?
Golang 标准库的 crypto/tls 也在活跃的维护当中,已经有完善了密码套件的选择机制,标准库会根据运行的硬件平台性能选择适当的密码套件顺序。
新版本(v4.23.2+)去掉列表,设为空值(nil),由 Golang 底层处理。
后续改进?
进一步避免指纹被侦测的另外一个思路是把 TLS 配置成跟常见浏览器一致(注:浏览器不同版本的 TLS 指纹都有所区别)。目前有项目 (如 tlsfingerprint.io) 在关注这个问题。
对 V2Ray 项目而言,这属于功能性加强,会在后续版本中引入由 uTLS 库提供的伪装指纹功能。
The text was updated successfully, but these errors were encountered: