文章总结: 本文揭示了WhatsApp在多设备端到端加密中存在的协议级元数据泄露漏洞。由于Android与iOS在密钥管理策略上的差异,攻击者可通过查询会话初始化信息识别目标操作系统,进而辅助精准攻击。尽管Meta已部分修复,但侧信道风险依然存在。建议在协议实现中统一状态机语义,并加强对元数据指纹化及统计特征的评估。 综合评分: 92 文章分类: 漏洞分析,网络安全,威胁情报
WhatsApp加密协议泄露用户信息
原创
suntiger
二进制空间安全
2026年1月9日 21:30 北京
将二进制空间安全设为”星标⭐️”
第一时间收到文章更新
事件背景
#
Meta旗下的WhatsApp拥有超过30亿月活跃用户,其使用端到端加密来保障消息安全。然而,安全研究人员发现WhatsApp在多设备端到端加密架构下, 存在协议级元数据泄露问题。
攻击者可在无需与目标交互、无需中间人、无需破坏加密内容的前提下,通过查询服务器返回的会话初始化信息,识别目标设备的操作系统类型(Android / iOS),并进一步为精准攻击与恶意Payload投递提供前置情报。
该问题并非传统意义上的“加密失效”,而是加密协议在多平台实现过程中产生的侧信道(Side-Channel)信息泄露。Meta已针对部分字段进行了修复,但研究表明,可区分性并未被完全消除,仍可被具备能力的攻击者在实战中利用。
系统和技术背景
WhatsApp的端到端加密基于Signal协议体系,该协议原理如下图:
Signal协议并不是“一个算法”,而是一个由多种密码学机制组合而成的协议体系,其核心目标是:在不可信服务器环境中,实现前向安全、后向安全、异步通信与最小信任假设。
在真实通信环境中, 协议必须同时满足: 1.服务器不可信、2.通信双方可能不同步在线、3.设备可能被攻破、4.历史消息不能被回溯解密、5.未来消息不能因一次泄露而全盘暴露。像传统的TLS/HTTPS是无法满足3、4、5条件的。
因此Signal的设计目标就是: 即使攻击者控制了服务器,拿到了某一时刻的密钥, 被动监听全部流量, 也无法解密历史或未来消息。
在工程实践中, 加密保护的是内容, 而协议运行所需的控制信息,也就是所谓的元数据不可避免的会被暴露,这些元数据可能会包括:密钥ID、会话状态、设备注册顺序、错误返回和注册码、Key生命周期与轮换策略等。主要这些信息在不同平台上表现不一致, 就具备被指纹化的可能性。
在WhatsApp使用的多设备模式下,每一台设备都是独立的加密端点, 每个设备都拥有:长期身份密钥、预密钥集合、预签名密钥。在会话建立过程中,由服务器负责分发密钥, 但不能解密消息内容, 只能负责连接和密钥协调, 并处理会话初始化元数据。
泄露根本原因分析
在WhatsApp的多设备协议实现中, Android和iOS在密钥管理策略上存在差异, 这些差异性直接反映在服务器可见的会话初始化元数据中。
以下从不同维度总结了不同平台上的典型差异:
| | | | | — | — | — | | 维度 | Android | iOS | | Signed PreKey ID 分配方式 | 大范围随机 | 单调递增 | | Key ID 变化特征 | 高熵、无序 | 低熵、顺序明显 | | 会话初始化返回模式 | 与iOS不同 | 与Android不同 |
这些特征并不是由单个字段决定, 而是多维度统计特征的组合结果。
加密协议泄露信息问题从技术上并不依赖破解加密算法、获取明文、注入或篡改流量, 而是依赖合法协议的行为、被动分析服务器响应以及统计学与模式识别。因此,该问题的本质要归结于: 协议行为本身泄露了其实现细节。
攻击技术路径分析
攻击者如果要利用该漏洞实施攻击,需要具备三个条件:
(1).一个可正常使用的WhatsApp客户端或协议实现。
(2).能向WhatsApp服务器发起合法的会话初始化查询。
(3).对Signal协议及WhatsApp实现细节有深入理解。
拥有了以上三个条件,攻击者不需要受害者点击任何东西,不需要目标在线,也不用进行社工交互以及中间人劫持。
攻击者在具备以上条件的前提下,可以按以下步骤实施攻击:
第一步: 获取目标标识, 例如:获取目标手机号或WhatsApp ID。
第二步: 会话初始化查询, 向服务器请求与目标设备建立会话所需的密钥信息。
第三步:元数据采集,收集服务器返回的:PreKey/Signed PreKey ID、Key生命周期相关字段、响应结构与顺序特征。
第四步: 指纹分析,对关键字段进行统计与模式判断, 区分Android,iOS,并可进一步推断设备状态、活跃度等信息,如图:
攻击者获取到用户设备指纹信息, 可应用于一些经典场景,例如: 对目标实施精准性监控、商业情报收集、高价值目标画像构建、与0-click漏洞链组合使用。
修复措施分析与局限性
目前Meta已采取的修复措施包括: Android端Signed PreKey ID改为24位随机值, 减弱ID与设备状态之间的强相关性, 提高简单统计分析难度。
但以上措施仍然存在一定的局限性,在iOS中仍保留了可预测特征, 协议中依然存在多字段联合指纹、状态机行为差异。攻击者同样可通过:多次采样、多维特征融合等手段继续实现操作系统识别。
因此,在多平台协议实现中必须统一状态机语义,消除平台特有行为, 安全评估应覆盖:元数据、错误路径、时序与统计特征。对于企业安全和研究人员,不应该只询问:是否加密, 而是要追问:是否可指纹化?是否可被静默侦察?
在真实对抗环境中,攻击者往往不需要破解最坚固的部分,而是利用最容易被忽视的实现细节。
(全文完)
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:二进制空间安全 suntiger《WhatsApp加密协议泄露用户信息》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。










评论