加密流量分析
了解即使经过加密的流量也会泄露元数据,包括时间、大小和流量模式
加密流量分析 是 CoddyKit 上的免费 Cryptology Academy 课时。 这是第 3 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Cryptology Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Cryptology Academy 课程共包含 4 节课。
加密无法隐藏时间特征
加密网络流量可以保护消息内容,但数据包的时间信息仍然完全可见。监控加密连接的攻击者可以测量数据包之间的延迟、连接持续时间以及突发传输的时间模式。这些时间特征可以揭示正在使用的应用程序类型、用户是在输入还是接收数据,并且在某些情况下,仅凭时间信息就能重构敏感内容。
数据包大小会暴露数据量
即使无法读取内容,数据包大小也会传递信息。文件下载会产生接近最大传输单元的大数据包,而聊天消息会产生较小的数据包。加密会话中传输的数据总量可以揭示是否共享过大文件。视频通话的质量设置会产生具有特征性的数据包大小分布,训练有素的观察者可以识别这些分布。
流量分析:通信模式
流量分析研究谁与谁通信、何时通信、通信频率以及持续时间,而不检查通信内容。即使通信经过完全加密,也会暴露社交关系图谱。无论谈话内容是什么,得知某位记者以不规则的时间间隔联系某位特定政府官员的 IP 地址,都属于有价值的情报。自电报通信时代以来,流量分析一直被用于监视。
TLS SNI 会泄露主机名
当浏览器建立 TLS 连接时,它会在加密开始之前,在初始 ClientHello 消息中发送服务器名称指示扩展。SNI 包含客户端想要连接的域名。网络路径上的任何观察者都可以读取 SNI,准确知道您正在访问哪个网站,即使后续的 HTTP 请求已经加密。SNI 以明文传输,因为服务器需要根据它选择正确的证书。
QUIC 与加密的 ClientHello
QUIC 是由 Google 开发、运行在 UDP 之上的现代传输协议。它使用 ECH 机制从一开始就加密包括 SNI 在内的 TLS 握手。ECH 会将包含真实主机名的内部 ClientHello 加密封装在发往 CDN 入口节点的外部 ClientHello 中。这避免了基于 TCP 的经典 TLS 1.3 中无法避免的主机名泄露。
通过流量模式进行网站指纹识别
网站指纹识别攻击利用了这样一个事实:每个网站都会产生具有特征的资源请求模式,包括特定数量、特定大小的对象,并按特定顺序加载。通过在这些模式上训练分类器,攻击者可以仅凭流量模式识别用户访问过哪个网站,即使流量经过加密的 VPN。研究表明,针对常见网站时,识别准确率可以超过 90%。
Tor 对全球范围对手的局限性
Tor 通过三个志愿者中继节点转发流量,并在每一跳进行加密,从而隐藏源端与目的地之间的连接。然而,能够同时观察 Tor 入口节点和出口节点的对手可以利用流量关联:即使内容已经加密,入口和出口处的时间与流量大小模式仍然会相互对应。具备大范围互联网监视能力的国家级对手可以实施这种关联攻击。
视频流分辨率推断
Netflix 和 YouTube 会根据可用带宽调整视频质量,而不同分辨率会产生不同的数据包速率和大小分布。研究人员已经证明,观察者可以将观测到的流量模式与不同质量级别的已知视频指纹数据库进行匹配,从而推断正在播放的视频标题。即使使用 HTTPS,这种方法仍然有效,因为内容长度和时间模式仍然可见。
VPN 元数据泄露
VPN 会加密用户与 VPN 服务器之间的流量,使本地 ISP 无法看到目的地。不过,VPN 提供商可以看到所有目的地,每个目的地的总流量也对提供商可见;此外,在 VPN 隧道启动之前发出的 DNS 查询仍可能泄露给 ISP。另外,除非明确阻止,否则浏览器中的 WebRTC 即使在 VPN 启用时也可能暴露用户的真实 IP 地址。
TLS 之前的 DNS 查询仍会暴露目的地
建立 TLS 连接之前,浏览器会执行 DNS 查询,将域名解析为 IP 地址。如果 DNS 未加密(没有 DoH 或 DoT),DNS 查询会以明文传输,并向本地解析器、ISP 以及网络上的任何观察者暴露目的地。即使后续的 TLS 连接已经加密,ECH 隐藏了 SNI,DNS 查询也早已泄露了目的地。
流量分析的应对措施
防御流量分析需要加入掩护流量来隐藏真实模式,使用配备流量整形的匿名网络,并通过 DoH 或 DoT 加密 DNS。HTTPS 填充可以隐藏对象大小。配合可插拔传输的 Tor 可以混淆流量模式,以抵抗基于审查的检测。没有任何单一应对措施能够抵御所有流量分析攻击;有效的保护需要叠加使用多种技术。
流量元数据
即使 TLS 1.3 对 HTTP 请求进行加密,网络观察者仍能看到哪一项元数据?
加密流量分析:关键要点
加密可以保护内容,但不能保护元数据。时间、数据包大小和通信模式会暴露大量信息。TLS SNI 会以明文泄露主机名;QUIC 的 ECH 可以防止这种泄露。网站指纹识别可以根据流量模式识别访问过的网站。Tor 容易受到全球范围对手发起的流量关联攻击。除非使用 DoH 或 DoT,否则 TLS 之前的 DNS 查询会暴露目的地。
常见问题解答
「加密流量分析」课时是免费的吗?
是的 — 「加密流量分析」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Cryptology Academy 课程的其余内容,请升级到 CoddyKit PRO。 Cryptology Academy 课程共包含 4 节课。
「加密流量分析」这节课中我会学到什么?
了解即使经过加密的流量也会泄露元数据,包括时间、大小和流量模式 你通过在浏览器中直接运行的动手代码来练习 Cryptology Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Cryptology Academy 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Cryptology Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 3 节课,共 4 节。
「加密流量分析」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Cryptology Academy 课中编写并运行代码吗?
能。每节 Cryptology Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。