俄亥俄州立大学(Ohio State)研究者公开了「Serpent」的细节,这是一次针对 macOS 26.0(Tahoe)上 Apple Intelligence 认证的攻击。论文在 arxiv 2604.15637。Apple 的认证设计使用两阶段令牌系统(Token Granting Tokens 与 One-Time Tokens,经 Privacy Pass 协议发行),本意是对 Apple Intelligence 服务进行匿名设备认证。Serpent 证明:这些令牌最终以明文保存在 login keychain,可以用标准 macOS 工具抽取,并在另一台设备上重放以冒充原始设备。

抽取路径是要掌握的工程细节。具备普通用户权限的 malware 运行在受害 Mac 上,可通过 SecItemCopyMatching API 或 /usr/bin/security CLI 从 login keychain 取出 TGT 与 OTT 值,前提是用户点过了例行的 keychain 访问提示。拿到令牌之后,攻击者用受害者的令牌覆盖自家本地 keychain,之后 Apple Intelligence 的请求便会把攻击者的设备识别为受害者。既不需要内核漏洞,也不需要提权访问。设计上的缺陷在于:令牌被存放在一个普通应用级 malware 就能触达的容器中,且可被导出到别处。

Apple 在 macOS 26.2 中进行了修补,把令牌从 login keychain 移到 iCloud keychain,并加入内核权限检查。研究者指出:这是部分修复,不是完整修复——足够特权的攻击者仍可通过内核扩展绕过 entitlements;而「每设备匿名认证令牌可从本地存储中被偷走」这一更大类别的问题是架构级别的,而非具体实现级别的。CVE-2025-43509 已分配。对任何在客户端平台上构建保护隐私的匿名认证流程的人而言,教训是:存储层与协议层同等重要。Privacy Pass 的保证在令牌可被从其签发设备上拿走时就失效。

给 builder 两点。其一,如果你的产品使用与设备身份绑定的匿名访问令牌(用于 AI 服务、DRM、API 限流等),Serpent 是你用来检验自身存储设计的模板。只把「令牌放进 OS 提供的 keychain」并不够——只要该 keychain 在一次例行同意提示之后就能被普通用户权限代码读取,就不够。其二,这篇俄亥俄州立的论文在同一周冒出来,伴着 Mozilla/Mythos 的 271 个零日与 Anthropic Glasswing 的泄漏报告。模式是连贯的:AI 平台安全正把重心压在模型访问控制(谁拿到权重、谁拿到 API),而经典的应用与操作系统认证层仍然是更软的目标。AI 部署的客户端这一侧,将会是未来一年实际攻击发生的地方。