绕过“失窃设备保护”:安装提取代理的替代方法
直截了当地说:iOS Forensic Toolkit取证工具包现在可以绕过“失窃设备保护”(Stolen Device Protection,SDP)设置。但有一个前提,必须一开始就说明白:这并非神奇的解锁方法,任何将其作为万能解锁方案来推销的人都是在兜售不实之物。Elcomsoft 实现的是一种无需通过 USB 端口将 iPhone 与工作站配对的代理安装方式。由于 SDP 对取证工作流程最大的干扰,在于它要求在配对步骤前进行面容 ID 或触控 ID 验证,因此绕开配对步骤就等于绕过了这道关卡。用户仍然需要提供设备密码、付费的 Apple Developer 账户,以及拥有合法检查权限的设备。只要具备这些条件,SDP 便不再是以前那般难以逾越的障碍。
本文主要介绍该方法的作用、适用的场景,以及它是否会引起非取证人员的不安(简而言之:不会)。
常规提取方式如何运作
从 iPhone 提取信息有多种方法,除了 bootloader 漏洞(仅兼容部分硬件)外,其他方法均受 SDP 阻挡。低级提取是首选方法,可获取设备钥匙串的副本和完整的文件系统镜像。在较新设备上,这需要先将一个提取代理(extraction agent)侧载到设备上。需要对一个小应用进行签名,安装到手机上,让其运行(如果该构建版本存在可用漏洞的话)。而代理也是 SDP 首次造成麻烦的地方,因为在它执行任何操作之前,必须先安装到手机上——而这在过去意味着需要先进行配对。
另一种方法是扩展逻辑提取——这是一种适用范围最广但深度最浅的方法。它会产生一个 iTunes/Finder 风格的本地备份(无论是否加密),同时还会提取相机胶卷中的媒体、共享应用文件、崩溃日志和 Apple 统一日志。它几乎适用于任何设备和任何 iOS 版本,因此取证人员常常首先尝试这种方法。但它完全依赖于与电脑建立的可信配对——因此,SDP 对其的阻止就像阻止代理安装一样直接。
因此,上述方法都会直接撞上 SDP 的“配对”大门;只有 checkm8 漏洞通过运行于 iOS 底层之下才能绕过它。这扇“大门”正是本文接下来要探讨如何跨越的障碍。
障碍所在:代理安装需要可信配对
正常安装提取代理,首先需要将手机与电脑配对——即“信任此电脑”的握手、输入密码,以及让两者通信的密钥交换。SDP 改变了这一步骤。在非熟悉位置,“信任”提示现在要求进行生物识别验证,且没有密码后备选项(准确地说:默认情况下,在非熟悉位置有此要求;若机主启用了“始终”选项,则任何位置均有此要求)。
一句话概括了所有问题。在机主不在场或不配合的情况下,或因法律或程序原因无法使用生物识别时,已知的设备密码不再能创建新的配对。没有配对,就无法安装代理。
解决方法一直都存在,但每种都有其局限:
- 有效的配对记录(来自机主自己的电脑)。查获嫌疑人的 Mac 或 PC,恢复有效的 lockdown 记录,即可在不触发 SDP 的情况下连接。问题在于:这些记录过期很快,这更像是一场与时间的赛跑,而非万全之策。
- 将设备带到熟悉位置。将手机放在嫌疑人的厨房桌上,SDP 的大部分限制便会解除。但你必须知道某个熟悉位置,能够到达那里,并且希望机主没有启用“始终”选项——否则连这扇门也会关闭。
当以上条件均不满足时,便会陷入僵局。这正是 Elcomsoft 着手解决的技术空白。
替代方案
思路很简单:完全不使用 USB 配对。实现这一目标有多种途径。其一,Apple 自身提供了一条将开发者签名应用直接传送到设备的通道,而该通道不依赖可信配对握手。这是真正的 OTA(无线)方法。Elcomsoft 使用了这一方法。此外,还有一种有线传输方法——同样无需配对。
无论哪种方式,流程都类似:工具包会建立一个临时的本地 Web 服务器,并附带其自己的证书。取证人员在 iPhone 的 Safari 浏览器中打开该服务器,并安装证书,以便设备信任即将安装应用的来源。代理(使用你的 Apple ID 在你的机器上签名)会从该本地服务器安装。安装完成后,代理会启动,并通过本地网络连接(通过适配器有线连接,或通过隔离的 Wi-Fi 接入点)与你的电脑通信,而不是通过 USB 配对。之后的流程就和以前一样——在存在漏洞的构建版本上,获取完整的文件系统和钥匙串数据。
之所以可以称之为“绕过”,是因为:从读取设备的 UDID 到最终的数据提取,没有任何一个步骤依赖于受 SDP 保护的可信配对。
应用远不止于绕过 SDP
SDP 是头条新闻,但基于网络的安装路径在其他方面也很有价值:
- 数据端口故障或磨损时。当难以建立稳定的 USB 会话时,代理仍可通过 Wi-Fi 连接到你的机器,无需可靠的物理连接。
- 无法使用生物识别的情况。取证专家拥有密码,但因正当理由无法提供指纹或面部扫描。
- 没有配对记录,也没有熟悉位置。两种经典的变通方法都不可行,你需要另一条途径。
前提条件
使用该方法的前提要求:
- 一个付费的 Apple Developer 账户,用于对代理进行签名。
- 设备密码,以及你可以物理接触的、已解锁的设备。安装证书、信任描述文件以及启用开发者模式(iOS 16 及以上版本需要,重启后需密码确认)等操作都必须在手机上完成。没有远程或无接触版本。
- 设备不受 MDM(移动设备管理)限制。在受 MDM 监管的手机上,描述文件可能直接拒绝安装,只有监管者才能更改此设置。
- 所有操作具备合法的法律依据——这是不言而喻的,但这里还是要强调一下。
简而言之,这是为拥有合法授权和密码的取证人员设计的工具——而不是为拿着他人手机的陌生人准备的。
请勿连接互联网
有一个注意事项贯穿所有基于代理的工作:在整个过程中,让取证设备远离开放网络。代理只需要访问你的电脑和某一个特定的 Apple 服务器;它不应接入更广泛的互联网,否则远程锁定、远程擦除或 iCloud 同步可能会悄悄破坏提取过程。我们推荐使用硬件防火墙——一个小型专用盒子(树莓派就足够了)远比软件防火墙更难配置错误,并能杜绝手机意外联网的可能性。
这会让 iPhone 的安全性降低吗?
简而言之:不会。原因如下。
SDP 是为应对特定威胁而设计的:窃贼窥视到你输入密码,抢走手机,然后利用密码和你输入的密码这两条信息,在你反应过来之前重置你的 Apple 账户密码、禁用“查找”功能,并盗取你存储的密码。SDP 的所有功能都针对此类人员。
该方法对这类窃贼毫无帮助。它不涉及 Apple 账户,也不会将机主锁在门外。它利用的是 Apple 自身的开发者分发机制,并且受到窃贼恰恰缺乏的条件的限制:付费的 Apple Developer 账户以及我们的软件。一个扒手不会为了读取他人的信息而去注册 Apple Developer Program。因此,该方法并未扩大 SDP 旨在封堵的漏洞。它只是为合法的取证人员提供了一条替代安装途径,仅此而已。
附注:为什么没有提到 iPad?
这确实是个奇怪的现象。SDP 仅适用于 iPhone。截至 iPadOS 26.4,仍然没有相应的功能,尽管知道密码的 iPad 同样面临账户被接管的风险。Apple 并未解释这一遗漏,因此以下仅为猜测:《华尔街日报》报道的“肩窥后抢夺”的场景多见于 iPhone。人们较少在公共场合携带 iPad,在 iPad 上输入密码的场景也较少,而且 SDP 所依赖的“重要地点”和蜂窝网络上下文在平板电脑上也较不完整。这个解释听起来合理,但未经证实。无论如何,如果你有一台 iPad,SDP 并不是你需要考虑的问题。
