原文标题:Categorically Analyzing the Network Traffic in the Snowflake Bridge of Tor

原文作者:Sibashreeta Dash, Neetu Kumari, Debanjan Sadhya, Bodhi Chakraborty

原文链接:https://doi.org/10.1109/COMSNETS63942.2025.10885604

发表会议:COMSNETS 2025

笔记作者:宋坤书@安全学术圈

主编:黄诚@安全学术圈

编辑:张贝宁@安全学术圈

1、研究背景

Tor是一种通过多层加密保护用户隐私和匿名性的技术,它通过遍布全球的志愿者中继路由用户流量,实现安全的互联网使用。然而,随着互联网审查的加强,许多政府和网络服务提供商(ISP)通过屏蔽已知的入口节点来限制用户访问Tor网络,这导致传统的Tor网络连接方式在高度审查环境下难以生效。为了应对越来越严格的审查制度,用户迫切需要像Snowflake这样的高级隐私工具,以绕过封锁并访问受限内容。

Snowflake通过将Tor流量伪装成普通的WebRTC通信,使其看起来像常见的视频通话,从而降低被检测和屏蔽的风险。Snowflake采用P2P代理机制,当用户连接到Snowflake时,他们的请求通过Snowflake代理进行中继(且代理无法访问用户数据),且用户和代理之间的通信会被伪装成合法的WebRTC连接,使其难以被审查系统识别。Snowflake不仅提升了Tor网络的可访问性,同时也增强了用户的匿名性,使用户能够在受限环境中安全自由地通信。

2、工作原理

Onion Routing采用多层加密技术,通过逐层加密数据,使其在传输过程中保持匿名性。Tor 客户端会随机选择一条由入口节点、中继节点和出口节点组成的通信路径,每个节点均从Tor网络的可用节点池中随机选取。数据在传输前会被多次加密,每层加密对应一个节点。数据传输时,每个节点只解密其对应的加密层,并将剩余数据转发至下一个节点,最终由出口节点解密并发送至目标地址。由于每个节点仅能看到相邻节点的信息,整个通信路径不会被单个节点完全掌握,从而有效保护用户身份和隐私。返回流量沿相同路径回传,并依次重新加密。Tor网络通信过程如下:

Snowflake是Tor网络中的一种可插拔传输(PT),用于在高度受限的地区绕过审查。Snowflake依赖志愿者运行浏览器扩展来充当临时代理,由中心化的broker负责匹配代理和用户,并建立P2P连接。一旦连接建立,流量会通过Snowflake代理传输至Tor Bridge或中继节点。由于WebRTC广泛应用于视频会议、在线游戏和协作工具,所以全面封锁WebRTC的成本较高,因此Snowflake具备较强的抗封锁能力,这使得Tor网络可以在受限环境中正常运作,为用户提供匿名性保护和不受审查的互联网访问。Snowflake代理工作过程如下:

3、实验设置

为了进行全面的网络流量分析,本文在Windows主机上使用VirtualBox部署了Kali Linux,并利用其中的Wireshark进行流量捕获与分析。实验环境中安装了Tor浏览器,并配置为使用Snowflake桥接,以实现匿名浏览和流量混淆。同时,使用Firefox进行网页访问,以收集流量与通过Snowflake传输的Tor流量进行比较。

实验过程中,通过Wireshark监控Tor浏览器的网络接口,捕获所有相关流量,并访问多个网站以分析Snowflake代理的流量特征。此外,在Tor浏览器中使用Zoom和Google Meet进行了五次基于WebRTC的视频通话,并在桌面端应用程序分别进行了相同测试,以比较浏览器与桌面应用的流量特征。实验设置的网络拓扑如下:

4、实验结果

本文分析了Tor浏览器使用Snowflake代理产生的网络流量特征,并与传统WebRTC应用(如Zoom和Google Meet)在浏览器端和桌面端的流量特征进行对比。实验捕获并分析了流量特征、协议使用情况及其在匿名性和实时通信中的影响,旨在研究Snowflake在规避审查和保障通信中的性能表现。

  • Firefox浏览器流量

Firefox主要通过Google的DNS服务器解析目标网站的IP地址,并使用TCP和TLS进行安全通信。收集到的流量主要由网页加载和资源请求组成,其中TCP流量占比87.3%,而33.8%的流量采用了TLS进行加密。Firefox浏览器流量分布如下:

  • Zoom浏览器端流量

Zoom在浏览器端使用STUN进行NAT穿越,随后是TCP和TLS握手,并使用由DTLS加密的UDP进行视频通话。在采集到的流量中,UDP占比57.4%,其中55.4%采用DTLS加密,这表明在浏览器端Zoom依赖UDP进行实时通信,而TCP则主要用于信令交换和控制任务。Zoom浏览器端流量分布如下:

  • Zoom桌面端流量

Zoom桌面端的通信模式与浏览器端类似,但未观察到采用DTLS,因此其可能使用其他加密方法。收集到的Zoom桌面端流量中UDP和TCP数据包的比例接近 1:1,这表明在桌面端仍然依赖UDP来进行实时音视频通信,而TCP则主要负责信令交换和控制任务。Zoom桌面端流量分布如下:

  • Snowflake流量

Snowflake代理的流量模式与其他基于WebRTC的应用程序相似,包括DNS查询、STUN连接、DTLS握手和UDP传输。但Snowflake流量的99.9%由UDP组成,其中98.9%采用DTLS加密,DTLS加密的UDP保证了传输数据的机密性、完整性和身份验证,从而平衡实时性能和安全性(抗审查能力)的需求。Snowflake流量分布如下:

4.1 实验结果总结

在本文分析的流量类型中,协议使用情况差异显著。Firefox 主要使用 TCP(87.3%),而 Snowflake 几乎完全依赖 UDP(99.9%)。Zoom的UDP使用率分别为57.4%(浏览器端)和54.2%(桌面端)。Snowflake和Zoom浏览器端都广泛采用了DTLS,但Zoom桌面端未检测到DTLS。TLS主要用于Firefox(33.8%),但在Snowflake流量中则没有使用。这些特征表明,Snowflake流量的高度UDP依赖性可能使其更易被审查者检测到。

5、Snowflake匿名性分析

Snowflake通过UDP上的DTLS提供数据加密和完整性保护,并利用WebRTC优化数据传输。尽管UDP无法保证数据可靠性,Snowflake仍选择它以增强抗审查能力。在实时音视频通信中,WebRTC采用UDP主要是为了降低延迟,因此可以容忍一定的数据丢失。而Snowflake主要用于网页浏览,相较于实时应用,浏览更依赖稳定的数据传输。然而,Snowflake的核心目标并非是数据可靠传输,而是规避审查,因此它在数据传输可靠性上做出让步,以换取更强的抗审查能力。

同时,Snowflake通过WebRTC的机制部分弥补UDP传输的不可靠性。例如,WebRTC采用否定确认(NACK)和选择性重传等技术,在必要时请求丢失的数据包。此外,Snowflake通过建立多个多路复用的WebRTC数据通道,在部分通道受干扰时快速切换,确保连接的稳定性。通过这些策略,Snowflake在牺牲部分数据可靠性的同时,提高了绕过审查的能力,使用户能够更自由地访问互联网。

6、本文贡献

本文的贡献在于对Tor+Snowflake的网络流量进行详细分析,并将其与其他基于WebRTC的服务(如 Zoom)进行比较。实验表明,Snowflake的流量模式更接近WebRTC视频通话,而非普通网页流量,但其仍具有独特的流量特征,使其可以被区分。通过使用Wireshark进行数据抓取和分析,本文深入探讨了 Snowflake的流量混淆机制,并评估了其流量特征在匿名性和抗审查能力方面的有效性。此外,研究还指出了Snowflake在抵抗流量分析和检测方面的改进空间。本研究强调了网络流量分析在评估匿名通信工具隐蔽性和抗审查能力中的重要作用,为改进Snowflake及其他PT提供了参考。

安全学术圈招募队友-ing

有兴趣加入学术圈的请联系 secdr#qq.com

声明:本文来自安全学术圈,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。