协议漏洞概述及 Telegram 与 FSB 的潜在关联
在本文中,我们希望探讨调查报告中涉及的一些技术细节。Telegram 与俄罗斯联邦安全局 (FSB) 之间的联系或许是模糊的,但鉴于帕维尔·杜罗夫的公司的不透明性,这种合作关系带来的风险是明确无误的。 Telegram 针对“重要故事”调查报告的回应声明,未能提供任何论据,也未回应文章中提出的具体关切。GNM Inc. 公司代表对该调查的回应,要么是在反驳调查中本不存在的论点,要么是发表与调查数据相矛盾的声明,要么是在未提供证据的情况下做出断言。
元数据追踪
首先需要理解的是,调查的发现并不能得出 FSB 有权访问通信文本的结论。编辑们不否认这种可能性,但相关证据很少。我们也不会假设 FSB 能直接访问服务器内容¹。最初调查的核心观点是,Telegram 可能并非直接与情报机构合作,而是通过间接方式向其泄露数据。
“重要故事”的调查主要关注的并非消息访问权,而是可能将 Telegram 与 FSB 联系起来的链条,以及一个允许情报机构追踪全球即时通讯用户的社交关系图谱的漏洞——即便无法直接访问服务器。
所描述的漏洞
“重要故事”提到了一个由米哈乌·沃伊尼亚克 (Michał Woźniak) 描述的 Telegram 协议中的弱点。
当你在手机上登录 Telegram 账户时,该应用会为每个新会话创建一个唯一的密钥,用于加密消息。从密钥创建那一刻起,任何消息都以该密钥加密后到达 Telegram 服务器,而服务器需要知道消息属于哪个会话,才能用正确的密钥解密。为此,消息中会附加一个未加密的会话标识符 (auth_key_id)。
通过这个 auth_key_id,网络上的任何互联网运营商都可以识别出是同一用户在向 Telegram 发送消息,即使用户更换了 IP 地址。
如果一个提供商控制了所有流向 Telegram 的流量,它就可以观察到用户在与谁通信。例如,如果在 auth_key_id 为“A”的用户发送消息后,Telegram 总是会向 auth_key_id 为“B”的用户发送一些东西,这就意味着这两个用户正在聊天。如果这些 auth_key_id 保持不变,运营商可以观察这两个人长达数月的通信。
Telegram 有一个本应定期更换这些标识符的机制,尤其是在用户更换网络时,因为这会显著增加监控的难度。不幸的是,该即时通讯软件存在一个漏洞:更换网络时,应用会先发送旧的 auth_key_id,然后再发送新的。这意味着,只要掌握全部流量,就可以追踪这条 auth_key_id 的变化链。或许,正确的做法是 Telegram 提前生成 auth_key_id (或使用会话恢复票证),在网络变更时,立即使用一个外部观察者此前未知的 auth_key_id,这在追踪系统看来就像一个新用户²。
记者们将这个漏洞与杜罗夫可疑合作伙伴的信息联系起来,构成了一个关于 FSB 进行全球监控的特别行动的故事。我们还要指出,这个漏洞并未给俄罗斯联邦境内的用户带来新的风险,其关键在于对俄罗斯境外用户可能存在的监控风险。
关于实用性与可能性
即便我们假设这家俄罗斯公司受 FSB 控制,并能完全访问 Telegram 在美国服务器的网络流量,也不应忘记 Telegram 的所有流量都是加密的,通过元数据进行追踪并非易事。这类追踪通常只能了解到应用正在被使用,充其量是某个用户与另一用户之间的通信事实,而无法揭示消息内容。
最初的技术分析指出,Telegram 可能会在不同网络间重用标识符,这使得追踪用户的 IP 变更成为可能。我们同意 Telegram 确实应该改进其 PFS 机制以防止这种情况,但文章中那些断言性的结论可能有些过于夸大。
此漏洞有效性的首要条件是拥有对互联网流量的全球控制权。俄罗斯已在其境内实现了这种控制,这已不是秘密,但调查报告暗示,Telegram 的技术运营商与情报机构之间可能存在的联系,或使 FSB 有能力监控国外的 Telegram 使用情况。
除了全球控制权,要使所述的追踪每个动向的场景成为现实,情报机构还需要以某种方式获知用户的临时网络标识符,并能追踪其完整的变化链。理论上,链条中任何一个环节的缺失都应导致追踪中断,但由于所述的协议弱点,追踪中断的可能性降低了。要找到链条的起点,必须要么非常了解受害者的位置并能访问其网络流量 (且不受第三方用户干扰,以便准确定位受害者打开应用的那一刻),要么知道该用户与另一个已被识别用户的确切通信时刻。而确认一个用户与另一个用户的通信事实,本身就需要揭示两个用户的临时标识符。
这种追踪方法仅对特定会话有效,当你退出账户或更换设备时就会中断。如果你担心这个漏洞可能被用来对付你,我们建议你定期退出并重新登录 Telegram,并使用不同的网络,例如通过你信任的 VPN。
使用这种方法,很难精确描绘出某个人的社交圈。文章中描述的全球社交图谱对情报机构仍有一定价值,但其中每个俄罗斯境外参与者的确切身份仍是未知的,这些参与者必须被逐一识别。
即使无法同时识别两个用户,情报机构也可以利用蜜罐账户 (包括受控的政客和公众人物),或揭露活动家的标识符,通过其在社交图谱中与已知节点的接近程度来判断用户的个人观点。我们不确定这样的数据是否值得开展如此规模的行动,也不确定 FSB 在技术上是否有能力实现这一切而不留下任何直接证据。
我们认为,将这个漏洞的存在与俄罗斯情报机构控制 Telegram 网络流量的某种可能性联系起来,描述的是最危险但未必是最可能的情景³。或许,技术文章中出现这种耸人听闻的说法,是因为如果缺乏公众关注,Telegram 常常会忽视和压制安全问题。
即使我们假设 Telegram 的合作伙伴没有监控流量,协议中描述的这个弱点也是不可取的,因为网络流量在全球范围内通过众多公司传输,其中任何一家都可能受到情报机构的要求。
此外,我们注意到,在能够访问所有流量的情况下,即使没有精确的标识符,也可以通过 IP 地址和独特的流量特征来构建社交图谱,尽管这种追踪的准确性会显著降低。
我们重申,元数据追踪无法获取消息内容。编辑们在最初的“重要故事”调查中,未看到反对黑客攻击说法的有力论据。我们遗憾地指出,该调查也未提及谁在为 Telegram 的荷兰服务器提供服务,这本应是很有用的信息,因为这些服务器存储着欧洲用户的数据。Telegram 在迈阿密的服务器为北美和南美用户提供服务。
俄罗斯的服务器
调查报告没有直接说明这一点,但指出 Telegram 的 IP 地址“位于俄罗斯”⁴。该即时通讯软件经常被指责在俄罗斯联邦境内设有服务器。
@tginfo 的编辑们指出,GeoIP 工具并不显示服务器的实际位置。这些是基于相关信号和自我声明 (所有者可以指定 IP 所属国家,这些数据通常未经核实) 编制的地址数据库。许多在线 GeoIP 查询服务使用过时的数据,其数据库与主流 GeoIP 提供商的当前数据不符。
@tginfo 的编辑们从未见过 Telegram 在俄罗斯有服务器的令人信服的证据。该应用的服务器位于荷兰、美国和新加坡。
活动家们也常指责该应用使用 RETN 和 GNM Inc. 这两家公司的网络,它们都有俄罗斯背景并继续在俄开展业务。值得注意的是,这些公司为欧洲大部分地区提供服务,在荷兰、德国、乌克兰等国拥有网络或流量交换点。RETN 的总公司在伦敦,而 GNM Inc. 注册于安提瓜和巴布达,该地被视为离岸区。如今,它们确实是欧洲主要的骨干网提供商,许多大公司都在使用它们的服务,但很难忽视的是,这两个组织的起源都可追溯到圣彼得堡,帕维尔·杜罗夫也曾在此地生活并开发了“VKontakte”。声称 Telegram 只使用这两家公司是不公平的,因为该应用有许多网络合作伙伴,但调查指向了帕维尔·杜罗夫与 GNM Inc. 所有者之间可能存在的特殊亲密关系。
并非一切完美
与此同时,值得注意的是,由 Telegram 自主开发的 MTProto 协议,并未像 Signal 的加密技术那样受到独立研究人员的广泛研究,理论上这确实可能意味着存在未知可利用漏洞的概率更高。近年来,Telegram 对加密对话的关注减少,将重心转向了普通聊天的附加功能和商业化。Telegram 也面临一些政治问题,例如与俄罗斯当局的协调,以及帕维尔·杜罗夫在对该应用具有重要意义的日期前往俄罗斯。
Global Network Management (GNM) 的所有者同时签订合同,为 Telegram 和俄罗斯国家机构的网络基础设施提供支持,这确实引人质疑。我们注意到,根据调查,帕维尔·杜罗夫自“VKontakte”时代起就认识这位所有者并使用其服务。可以推测,这种合作关系是因旧交情而维持,但仅凭这一理论无法解释一切。
GNM 的首席执行官在其反驳中声称,自 2022 年以来,他在俄罗斯已无员工,自 2024 年起,俄罗斯公司已“与 GNM Inc. 分离”,包括所有权变更。而根据调查,GNM 和其俄罗斯业务都属于弗拉基米尔·韦杰涅耶夫 (Vladimir Vedeneev),其俄罗斯公司“Globalnet” 96% 的股份于 2024 年转让给了韦杰涅耶夫的亲属,这是一种掩盖所有权的常见方式。另外,该公司所有者保证俄罗斯业务已在 2024 年出售,但编辑们尚未看到相关证明。
在此,人们只能评估风险:一家俄罗斯公司在为海外基础设施提供服务的同时,是否能在拥有国家合同的情况下保持独立于 FSB。帕维尔·杜罗夫对其技术合作伙伴与情报机构在财务上的密切关系有何看法,也无人知晓。如果 FSB 确实能够访问消息,现有论据也不足以断定这一点。
调查指出,“Globalnet”是“第一家[…]应俄罗斯联邦通信、信息技术和大众传媒监督局 (Roskomnadzor) 的要求,实施用户流量监控系统的公司”。一些读者可能会不公平地将此视为与 FSB 有关联的额外证据,但所有俄罗斯提供商都必须遵守此类要求。尽管如此,这表明该公司乐于与国家进行对话,而调查中提到的与“Elektrontlecom”公司的合同则显示了其可能直接在财务上依赖于 FSB。
结论
- Telegram 加密协议中存在一个客观弱点
- 存在某些可能将该即时通讯软件与 FSB 联系起来的事实
鉴于该漏洞的实用性较低,@tginfo 的编辑们怀疑它是被有意留下的,但不否认该应用与情报机构之间可能存在的联系,而帕维尔·杜罗夫对此不予置评。
在本文中,我们希望探讨调查报告中涉及的一些技术细节。Telegram 与俄罗斯联邦安全局 (FSB) 之间的联系或许是模糊的,但鉴于帕维尔·杜罗夫的公司的不透明性,这种合作关系带来的风险是明确无误的。
Telegram 针对“重要故事”调查报告的回应声明,未能提供任何论据,也未回应文章中提出的具体关切。GNM Inc. 公司代表对该调查的回应,要么是在反驳调查中本不存在的论点,要么是发表与调查数据相矛盾的声明,要么是在未提供证据的情况下做出断言。
如果您担忧自己的安全,我们不建议使用 Telegram 的云端或加密对话,至少因为该应用有时对用户隐私和安全的态度堪称鲁莽。
要使一款即时通讯软件被认为更安全,必须从提高公司透明度、转向经过充分研究的加密技术以及与媒体进行开放沟通开始,而不是无视那些令人不便的事实。
- 我们做出这一假设,是因为相反的情况尚未被证实,也因为调查的本质在于 Telegram 可能正以这种间接方式隐藏其与情报机构的合作。我们认为关于服务器端磁盘加密的论点在此处无关紧要。如果我们假设 Telegram 是故意与情报机构合作,它会直接披露消息,或者至少向他们提供加密密钥。服务器磁盘加密仅在服务器被所在国执法机构查封,或在入侵者进入数据中心的情况下才对保护数据有用。
- 理论上,你可以通过制造不稳定的连接来攻击这个系统,耗尽客户端在一个网络上的临时密钥,从而在另一个网络上定位该客户端,但至少这种攻击不是被动式的。不过,最好的解决方案是 Telegram 转向众所周知的加密技术,如 TLS。
- Hanlon’s razor
- 仅在俄语版本中提及