近期部分技术圈子的人员可能听说了一个名为HyeonSeungri的Github帐号在“中国大规模地封锁基于TLS的翻墙服务器”[1]帖子下发布关于网络流量识别与审查的相关“内部信息”。
该帐号声称自己是广州互联网交换中心[2][3]的审查员工,提到了一些流量识别系统工作的内部过程,并且推荐翻墙软件的开发者使用较老的TLS协议版本(主要包括SSL3.0、TLS1.0、TLS1.1)、使用自签名证书、并采用显示/可信代理方式设置代理服务器/VPN。该说法在论坛上引起了一些争执。
目前,该帐号已删除其在该贴中的评论,其帐号也已经被删除。并无法得知该帐号到底是自行注销还是被封号。
该帐号发布的相关言论仍然可以通过存档找到[4]。
接下来是我的结论:
大多数“应该怎么做”是在放屁,简直就是在害人。
借用贴内一个网友的回复:“它们(指HyeonSeungri声称的不会被识别出来的代理流量)不需要被识别出流量特征,它们本身就是特征。/They don't need fingerprinting to be distinguished. They are fingerprints per se.”
首先,使用旧版本的TLS协议是有很大风险的。暂且不提具有严重的已知安全问题[5]因此应当完全被废弃的SSL 3.0,TLS 1.0和1.1版本包含很多不安全的加密算法(如GOST、3DES、RC2、RC4)和不安全的密钥交换算法(如DH-ANON)[6][7],对此不了解的新手非常容易因为配置错误,导致安全问题。
类似的,使用自签名证书也很容易导致对此不了解的新手打开诸如“允许非安全连接”等会降低连接安全性的选项。
然后,无论是使用自签名的数字证书还是使用旧版本TLS协议,都会导致这个本来应该悯然众人的服务器在防火长城鹤立鸡群。根据Qualys SSL Labs的SSL Pulse报告[8],截至2022年9月,仅38.7%的服务器支持TLS 1.1,仅35.5%的服务器支持TLS 1.0,而SSL 3.0的支持率只有2.3%,TLS 1.2的支持率高达99.8%。这就是说,如果你按照这位HyeonSeungri的指示,把代理服务器配置成不支持TLS 1.2及以上的版本的话,你的服务器就成了非常显眼的0.2%。同样的,为了让现代化的浏览器接受,大多数网页服务器都有由证书颁发机构(CA)签发的证书,自签名证书一般是测试服务时才会用的。那么,一方是支持现代化加密、拥有正确的证书、看起来非常普通的网页服务器,另一方是固执地选择老旧的安全协议、使用会让浏览器告警的自签名证书的奇怪的网页服务器,哪边看上去更像是have something to hide的代理服务器呢?
而且,即使,出于某些原因,你的代理服务器没有被发现。你连接这种服务器所造成的流量,看起来也不会像是普通的浏览器访问网页的流量。2020年,Chrome浏览器在版本84移除了对于TLS 1.0和1.1的支持[9][10],Firefox在版本78默认禁用了TLS 1.0和1.1[11][12]。因此,现在在网络上传递的HTTPS流量,绝大多数都是使用TLS 1.2或1.3的。而即使在此之前,大多数浏览器也会默认选用服务器支持的最高版本的TLS协议来增强链路的安全性,老版本的TLS协议的使用率,本来就没有那么高。这种情况下,SSL3.0、TLS1.0或1.1的互联网流量,也是非常显眼的,毋庸置疑。
综上所述,HyeonSeungri的建议不但会严重降低通信的保密性和安全性,也让流量和代理服务器显得更加突出,这直接违背了v2ray等审查绕过软件的设计思路(使翻墙流量看起来像普通的网页访问流量),因此不应该采用。
[1] https://github.com/net4people/bbs/issues/129
[2] https://inflect.com/ix/chn-ix-guangzhou
[3] https://en.wikipedia.org/wiki/List_of_Internet_exchange_points
[4] http://archive.today/2022.10.09-065615/https://github.com/net4people/bbs/issues/129
[5] http://googleonlinesecurity.blogspot.com/2014/10/this-poodle-bites-exploiting-ssl-30.html
[6] https://datatracker.ietf.org/doc/html/rfc2246
[7] https://datatracker.ietf.org/doc/html/rfc4346
[8] https://www.ssllabs.com/ssl-pulse/
[9] https://chromestatus.com/feature/5654791610957824
[10] https://developer.chrome.com/blog/chrome-81-deps-rems/
[11] https://www.mozilla.org/en-US/firefox/78.0/releasenotes/
[12] https://hacks.mozilla.org/2020/02/its-the-boot-for-tls-1-0-and-tls-1-1/
#ssl #tls #v2ray #xtls #naiveproxy #clash #翻墙 #代理 #censorship #anticensorship #disinformation #debunk
Source: https://nya.one/notes/96yu1u2i73
该帐号声称自己是广州互联网交换中心[2][3]的审查员工,提到了一些流量识别系统工作的内部过程,并且推荐翻墙软件的开发者使用较老的TLS协议版本(主要包括SSL3.0、TLS1.0、TLS1.1)、使用自签名证书、并采用显示/可信代理方式设置代理服务器/VPN。该说法在论坛上引起了一些争执。
目前,该帐号已删除其在该贴中的评论,其帐号也已经被删除。并无法得知该帐号到底是自行注销还是被封号。
该帐号发布的相关言论仍然可以通过存档找到[4]。
接下来是我的结论:
大多数“应该怎么做”是在放屁,简直就是在害人。
借用贴内一个网友的回复:“它们(指HyeonSeungri声称的不会被识别出来的代理流量)不需要被识别出流量特征,它们本身就是特征。/They don't need fingerprinting to be distinguished. They are fingerprints per se.”
首先,使用旧版本的TLS协议是有很大风险的。暂且不提具有严重的已知安全问题[5]因此应当完全被废弃的SSL 3.0,TLS 1.0和1.1版本包含很多不安全的加密算法(如GOST、3DES、RC2、RC4)和不安全的密钥交换算法(如DH-ANON)[6][7],对此不了解的新手非常容易因为配置错误,导致安全问题。
类似的,使用自签名证书也很容易导致对此不了解的新手打开诸如“允许非安全连接”等会降低连接安全性的选项。
然后,无论是使用自签名的数字证书还是使用旧版本TLS协议,都会导致这个本来应该悯然众人的服务器在防火长城鹤立鸡群。根据Qualys SSL Labs的SSL Pulse报告[8],截至2022年9月,仅38.7%的服务器支持TLS 1.1,仅35.5%的服务器支持TLS 1.0,而SSL 3.0的支持率只有2.3%,TLS 1.2的支持率高达99.8%。这就是说,如果你按照这位HyeonSeungri的指示,把代理服务器配置成不支持TLS 1.2及以上的版本的话,你的服务器就成了非常显眼的0.2%。同样的,为了让现代化的浏览器接受,大多数网页服务器都有由证书颁发机构(CA)签发的证书,自签名证书一般是测试服务时才会用的。那么,一方是支持现代化加密、拥有正确的证书、看起来非常普通的网页服务器,另一方是固执地选择老旧的安全协议、使用会让浏览器告警的自签名证书的奇怪的网页服务器,哪边看上去更像是have something to hide的代理服务器呢?
而且,即使,出于某些原因,你的代理服务器没有被发现。你连接这种服务器所造成的流量,看起来也不会像是普通的浏览器访问网页的流量。2020年,Chrome浏览器在版本84移除了对于TLS 1.0和1.1的支持[9][10],Firefox在版本78默认禁用了TLS 1.0和1.1[11][12]。因此,现在在网络上传递的HTTPS流量,绝大多数都是使用TLS 1.2或1.3的。而即使在此之前,大多数浏览器也会默认选用服务器支持的最高版本的TLS协议来增强链路的安全性,老版本的TLS协议的使用率,本来就没有那么高。这种情况下,SSL3.0、TLS1.0或1.1的互联网流量,也是非常显眼的,毋庸置疑。
综上所述,HyeonSeungri的建议不但会严重降低通信的保密性和安全性,也让流量和代理服务器显得更加突出,这直接违背了v2ray等审查绕过软件的设计思路(使翻墙流量看起来像普通的网页访问流量),因此不应该采用。
[1] https://github.com/net4people/bbs/issues/129
[2] https://inflect.com/ix/chn-ix-guangzhou
[3] https://en.wikipedia.org/wiki/List_of_Internet_exchange_points
[4] http://archive.today/2022.10.09-065615/https://github.com/net4people/bbs/issues/129
[5] http://googleonlinesecurity.blogspot.com/2014/10/this-poodle-bites-exploiting-ssl-30.html
[6] https://datatracker.ietf.org/doc/html/rfc2246
[7] https://datatracker.ietf.org/doc/html/rfc4346
[8] https://www.ssllabs.com/ssl-pulse/
[9] https://chromestatus.com/feature/5654791610957824
[10] https://developer.chrome.com/blog/chrome-81-deps-rems/
[11] https://www.mozilla.org/en-US/firefox/78.0/releasenotes/
[12] https://hacks.mozilla.org/2020/02/its-the-boot-for-tls-1-0-and-tls-1-1/
#ssl #tls #v2ray #xtls #naiveproxy #clash #翻墙 #代理 #censorship #anticensorship #disinformation #debunk
Source: https://nya.one/notes/96yu1u2i73