在iOS取证中,当无法进行物理采集时,云端数据提取确实是一种可行
的替代方案。在即将发布的iOS 13版本中,苹果攻击附加了额外的安全措施,无疑将使物理访问变得更加困难。虽然下载iCloud备份的能力已经被很多人掌握了,但对于如何获取用户登录名和密码以及双因素身份验证,很多人是无法逾越这个门槛的。
早在2014年,就有研究人员介绍了如何使用身份验证令牌来访问没有密码的iCloud备份的方法,详情请参阅《破解iCloud:无需密码》。紧接着,就有研究人员研究出了如何使用身份验证令牌访问存储在iCloud中的其他类型的数据,包括用户的照片库、浏览历史记录、联系人、日历以及Apple在登录到的所有用户设备上同步的其他信息。
不过随着苹果的安防措施越来越到位,目前令牌已经不能再用于访问iCloud备份了,比如令牌不能用于访问密码(iCloud钥匙串)、屏幕时间、健康状况和消息。去年,苹果将认证令牌固定到特定的计算机上,使它们仅能从创建的PC或Mac上使用。不过,研究人员仅仅花了一年多的时间就找到了破解方案,该方法可以帮助研究人员从用户的计算机上转移出固定在设备上的身份验证令牌。即便放到现在,这种解决方法仅在用户拥有macOS计算机时才有效。你可能会问了,有了这么多限制,身份验证令牌仍然还可以用于获取云端的数据吗?还有是否可以从用户的iCloud帐户获得哪些身份验证令牌,以及可以使用登录名和密码访问哪些内容?双因素身份验证如何影响iCloud帐户中的可用内容?
iCloud备份安全性
说到iCloud备份,重要的是要了解虽然大多数备份都可以使用适当的凭据进行解密,但iCloud备份的某些内容将使用高度安全的基于硬件的加密密钥进行额外加密。加密发生在iOS设备内部(在iPhone或iPad本身),因此,这些内容只能完全恢复到备份时所在的硬件设备上。
不过以下内容永远不会包含在iCloud备份中:
1. 个人健康数据;
2. 家庭数据。
此外,如果用户为这两类数据启用了iCloud同步,那么某些内容还是会被排除在iCloud备份之外,这些内容包括:
1. iCloud照片;
2. 短信内容;
3. 即将发布的iOS 13还特别排除了以下两个类别的数据:
3.1通话记录;
3.2 Safari历史。
同步数据
自从2011年iCloud备份出现以来,苹果公司正逐渐取消原有的备份业务。 iCloud Photo Library的推出使照片通过iCloud中的专用服务在设备间同步。一旦用户启用了他们的云照片库,奇热图片将不再保存到iCloud备份中。同样,一旦用户启用了iCloud消息(需要iOS 11.4及更高版本),消息将不再保存在iCloud备份中,而是通过用户的iCloud帐户进行同步。 iOC 13将停止在iCloud备份中包含调用日志和Safari历史记录,这两个类别将仅作为同步数据提供。
身份验证令牌适用于提取同步数据(受保护类别除外)。以下总结了iCloud中同步信息的保护:
1. 要访问同步的iCloud数据,只需要用户的Apple ID,密码和双因素身份验证代码;
2. 你还可以使用身份验证令牌来访问已同步的数据;
3. Apple具有访问iCloud中同步数据的技术能力;
4. 在提供政府请求时提供同步数据;
5. 在提供GDPR请求时提供同步数据;
6. Elcomsoft Phone Breaker等第三方应用程序可以提取同步的iCloud数据。
一些iCloud数据是用密码加密的
某些数据类别会受到不同的处理,如果你知道使用相同Apple ID注册的设备的屏幕锁定密码或Mac系统密码,则只能解密以下类型的数据:
1. iCloud钥匙串,钥匙串包含用户从Safari浏览器和第三方应用程序以及一些身份验证令牌同步登录和密码。最重要的是,iCloud 钥匙串还存储了保护其他加密数据类型的加密密钥。如果不首先解密iCloud钥匙串,就无法解密消息等。
2. iCloud中的消息,这包括SMS和iMessage。
3. 与iOS 11相比,iOS 12中同步健康数据的保护已发生变化;
所以为了访问这些受保护的数据类别,你需要同时具备以下所有条件:
1. 用户的Apple ID和密码;
2. 双因素身份验证代码;
3. 已注册iCloud钥匙串的设备的密码或系统密码。
如果不满足以上条件,则:
1. 身份验证令牌不能用于访问任何以上这些类型的数据;
2. 一般情况下,用户在与iCloud同步钥匙串、健康状况或消息时不会遇到任何问题。当初始化新iPhone以接收同步数据时,他们只需要向旧iPhone(或任何启用iCloud钥匙串的设备,包括Mac电脑)提供屏幕锁定密码即可。
3. 苹果无法访问同步的密码、信息或健康数据。即使数据存储在苹果服务器上,苹果也无法解密。
4. 在提供政府请求或GDPR请求时,苹果不会提供属于受保护类别的任何数据(不过也有例外,以下会讲到)。
5. 第三方应用程序的提取是受限制的,但如果你知道设备密码/系统密码(用Elcomsoft Phone Breaker提取),还是有可能访问以上受保护的数据的。
例外情况:在iOS 11和iOS 12中保护和提取健康数据
从iOS 11开始,Apple就实现了与iCloud的健康数据同步。在iOS 11中,除了CDA记录之外的所有类型的数据都将与iCloud同步。
iOS 11中对iCloud中健康数据的保护
1. 要访问同步的健康数据,只需要用户的Apple ID,密码和双因素身份验证代码。
2. 苹果具有访问iCloud中的Health数据的技术能力;
3. 在提供政府请求时提供健康数据;
4. 在提供GDPR请求时提供健康数据;
5. 第三方应用程序,如Elcomsoft Phone Breakercan可以提取健康数据。
iOS 12和iOS 13中对iCloud中健康数据的保护
苹果在iOS 12中采用了一种非常特别的保护方法来保护iCloud中的健康数据,该方法采用了安全加密,将密钥存储在iCloud钥匙串中。与iOS 11相比,iOS 12中的数据现在存储在不同的加密容器中。有趣的是,在用户将最后一台设备更新到iOS 12之后,旧的(未加密的)容器可能会保留一段时间。
使用已经参与健康状态同步的设备的用户密码(屏幕锁定密码或系统密码)来保护加密密钥,这就确保了苹果不能访问存储在云中的健康数据。这意味着,苹果也不能访问iCloud钥匙串。同样,研究人员也认为这种保护机制能够提供足够的安全性。
为了让运行iOS 12或更新版本的设备能够访问与iCloud同步的健康数据,我们需要具备以下所有条件:
1. 用户的Apple ID和密码;
2. 一次性双因素身份验证代码(没有双因素身份验证就不可能实现iCloud同步);
3. 已注册健康iCloud同步的设备的密码或系统密码。
如果不同时满足以上条件,则对以下内容的访问将会受到限制:
1. 在初始化新iPhone时,用户需要提供旧iPhone的屏幕锁定密码或任何启用了iCloud 钥匙串的设备,以便接收同步的健康数据。
2. 苹果无权访问同步的健康数据,即使数据存储在Apple服务器上,重庆苹果也无法对其进行解密。
3. 苹果不会在服务政府请求或GDPR请求时提供健康数据。
4. 使用第三方应用程序进行提取仍受限制,不过使用Elcomsoft Phone Breaker却可以提取。
双因素身份验证的保护优势
在苹果目前的设备上,双因素身份验证会影响一切取证。如果用户在其帐户上启用双因素身份验证,则会获得一系列无法在没有双因素身份验证的帐户中使用的功能。取证人员只需使用密码即可立即从iPhone重置Apple ID密码。他们可以在不知道iCloud密码的情况下禁用“Find My iPhone”。取证专家在双因素身份验证方面找到了一些有用的功能,只有具有双因素身份验证的帐户才能执行以下操作:
1. 通过iCloud同步密码(iCloud 钥匙串);
2. 同步消息(SMS和iMessage);
3. 同步健康数据;
4. 同步屏幕时间数据。
在某种程度上,双因素身份验证对于取证人员来说是一种优势,因为与未受保护的帐户相比,具有双因素身份验证的帐户通过iCloud同步更多信息。通过双因素身份验证提示可以像获取用户的SIM卡一样简单,并在另一个设备中使用它来接收带有一次性代码的文本消息。或者,可以使用身份验证令牌完全跳过双因素身份验证提示,这就是取证人员取证时受到限制的地方。
使用令牌和双因素身份验证时的取证限制
最初研究人员在研究iCloud身份验证令牌时,可以使用它们来获取云中的所有内容(包括备份)都没有问题。可是目前,苹果限制了使用身份验证令牌。你无法再使用身份验证令牌来访问使用双因素身份验证的帐户的iCloud备份。虽然你仍然可以使用令牌从非双因素身份验证帐户下载iCloud备份,但这些令牌的生命周期仅限于创建令牌后的一小时。
无论双因素身份验证状态如何,你仍然可以使用身份验证令牌(没有明显的时间限制)来访问以下类别的同步数据:
1. 许多类别的同步数据,包括联系人、日历和笔记;
2. Safari浏览历史记录和打开标签页;
3. 钱包卡;
4. 通话记录;
5. iCloud的照片;
6. 来自iCloud Drive的文件包括许多第三方应用程序容器(1Password,WhatsApp,Viber等);
7. 用于filevailt2加密驱动器的恢复令牌;
8. 云端存储的邮件。
如果启用双因素身份验证,则无法使用令牌访问iCloud备份;如果未启用双因素身份验证,则可以使用令牌访问iCloud备份,但只能在令牌创建后的1小时内访问。
不过就算是使用身份验证令牌,以下内容也是不可访问的:
1. 密码(iCloud 钥匙串);
2. 健康数据;
3. Screen Time,苹果在iOS 12中推出了Screen Time,指在为您提供有关如何在iPhone和iPad上使用时间的信息;
4. 消息(SMS和iMessage)。
注意,如果未启用iCloud的消息同步设置,则消息将存储在iCloud备份中。
Windows与macOS的取证环境
虽然苹果为Windows和Mac用户提供相应版本的iCloud软件,但在这些平台上创建的身份验证令牌却不同。
在Windows计算机上,令牌被隐藏在文件系统中。另外它还使用用户凭据加密,因此你必须能够登录用户的帐户(或至少知道他们的登录名和密码)才能解密令牌。 Elcomsoft Phone Breaker可以自动完成令牌的获取工作,并令牌将保存到文本(XML)文件中,随时可以与EPB一起使用。
虽然你可以从Windows计算机中提取令牌,解密它并与Elcomsoft Phone Breaker一起使用以访问iCloud中的数据,但是你只能在创建令牌的同一台计算机上执行所有这些操作。你甚至无法从用户磁盘映像创建的虚拟机中使用它,所以研究人员将这些代令牌称为受限令牌。
如果用户使用的是Mac,除了受限令牌外,你还可以提取完整的,不受限制的令牌。在其受控制的生态系统中,Apple能够实施更强大的保护(对双因素身份验证帐户的令牌进行固定)。不过研究人员还是能够使用Elcomsoft Phone Breaker绕过这种保护,从而提取、发送和使用这些完整的身份验证令牌。
提取并使用身份验证令牌
目前,有5种方案可用于提取身份验证令牌:
1. Windows计算机,从当前登录的帐户中提取受限令牌;
2. Windows计算机,从其他帐户中提取受限令牌;
3. macOS计算机,从当前用户中提取受限和不受限制的令牌(需要钥匙串密码);
4. macOS计算机,从钥匙串数据库中提取受限和不受限制的令牌(需要钥匙串密码);
5. iOS设备,钥匙串可以从受密码保护的备份或通过物理方式获取。