原文标题:Snowflake, a censorship circumvention system using temporary WebRTC proxies
原文作者:Cecylia Bocovich, Arlo Breault, David Fifield, Serene, Xiaokang Wang
原文链接:https://www.usenix.org/conference/usenixsecurity24/presentation/bocovich
发表会议:USENIX Security
笔记作者:宋坤书@安全学术圈
Snowflake作为一个抗审查的网络通信系统的设计和效果。其主要特点是通过大量低成本、临时的代理服务器(例如WebRTC代理)来绕过审查,使得审查者无法轻易封锁整个系统。系统的核心目标是增加审查者的封锁成本,使其在封锁时面临过度封锁或无法有效封锁的困境。Snowflake通过分散的、可替换的代理来实现这一点,每个代理的可靠性较低,但可以通过多个代理池来保障用户的连通性。
本文还介绍了Snowflake如何解决技术挑战(例如如何提供良好的用户体验,尽管每个代理可能不稳定),并讨论了Snowflake在X罗斯、X朗、X国和X曼斯坦等国家的实地测试案例。总的来说,本文主要评估了Snowflake的设计思路、实施效果及其在抗审查中的作用。
Snowflake代理连接的包括三个阶段:对接阶段(Rendezvous),客户端向中心服务器(称为 "broker")发送请求以匹配一个临时代理;连接建立(Connection Establishment),客户端和代理通过 WebRTC 建立连接,使用对接阶段交换的信息完成连接;数据传输(Data Transfer),代理将客户端的数据传输到桥接节点(bridge),而桥接节点则将数据定向到最终目标(如 Tor 网络)。下图是Snowflake代理连接过程:
Snowflake代理连接的包括三个阶段,以此实现稳定的网络规避能力:
Snowflake 旨在通过模仿合法WebRTC流量的特征绕过审查。然而,由于WebRTC协议的复杂性,它容易暴露特定指纹,本文总结了主要风险与应对策略。
Snowflake在遭遇审查时,用户数量通常是增加而不是减少,因为随着审查的加强,用户从弹性较弱的系统转移到弹性较强的系统。下面是Snowflake在X国、X罗斯、X朗和X曼斯坦的封锁经历:
网络审查和封锁形式因国家不同而异,成功的抗封锁需要与用户沟通,并根据审查者的技术和资源制定策略。封锁抵抗是一个相对过程,不是绝对的。虽然Snowflake可以被封锁,但其目标是提升抗封锁能力,使更多审查者无法轻易封锁。
[1]Sergey Frolov and Eric Wustrow. The use of TLS in censorship circumvention. In Network and Distributed System Security. The Internet Society, 2019. https://dx.doi.org/10.14722/ndss.2019.23511.
[2]Kyle MacMillan, Jordan Holland, and Prateek Mittal. Evaluating Snowflake as an indistinguishable censorship circumvention tool. CoRR, abs/2008.03254, 2020. https://arxiv.org/abs/2008.03254.
[3]Junqiang Chen, Guang Cheng, and Hantao Mei. F-ACCUMUL: A protocol fingerprint and accumulative payload length sample-based Tor-Snowflake traffic-identifying framework. Applied Sciences, 13(1), 2023. https://www.mdpi.com/2076-3417/13/1/622.
安全学术圈招募队友-ing
有兴趣加入学术圈的请联系 secdr#qq.com