iOS中的锁定代码:Apple如何从防御中的防御转向守卫单一边界

在上一篇文章中,我讨论了在运行iOS的设备中限制对配件的访问的模式。 在本文中,我重点介绍了iOS的功能,该功能使用户数据的安全性取决于唯一的“不可逾越的”保护线:屏幕锁定代码。 几乎所有保护措施都以某种方式与锁定代码相关联。 苹果会定期(按照复杂的时间表)禁用iPhone中的生物识别功能,从而迫使用户输入密码来解锁屏幕。 打开或重新启动手机-您需要输入密码。 使用的SOS模式-锁定代码。 电话已使用了几个小时-再次输入密码。 连接到计算机-并再次输入锁密码。 要设置备份密码吗? 从iOS 13开始,在这里您需要一个锁码。

看来用户只需要设置一个长而复杂的锁码就可以完全保护设备。 但是,此行为与建筑物的假定安全系统没有什么不同,在安全系统中,只有入口受到保护-办公室的门始终敞开,办公室中的计算机上没有密码,并且您可以通过连接到网络从任何设备无限访问内部网络Wi-Fi(当然也完全开放)。

科幻小说? 确实,所描述的听起来很奇怪,但是iOS安全系统处于这种状态。 实际上,所有保护完全基于单道防线,即屏幕锁定代码-只有一个小条件:用户帐户受两因素身份验证保护。

如果我知道iPhone锁码怎么办


如果知道屏幕锁密码,那么几乎所有数据都可以从iPhone中提取,包括帐户密码。 怎么做? 通过使用密码保护创建备份。 锁码是做什么用的? 以下是创建此类备份的步骤顺序:

  1. 我们将iPhone连接到计算机。 从iOS 11开始,要连接到iPhone上的计算机,您不仅需要单击“同意”以进行连接请求,还需要输入锁定代码
  2. 启动iTunes或iOS取证工具包,然后查看是否设置了备份密码。 没有安装? 太好了,自己安装并创建备份! (为什么要设置密码-我将单独编写密码;简而言之,只有诸如钥匙串之类的数据和其他一些数据才使用密码进入备份副本)。 只有一件事可以干扰:从iOS 13开始,您需要输入锁定代码来设置备份密码。 已设置密码,但您不知道吗? 没关系:从iOS 11开始,可以通过在iPhone上输入屏幕锁定密码来重置备份密码!

锁码可用于从iPhone本身上的钥匙串中完全无限制地访问密码。 此外,了解了锁码后,您可以轻松地在“钥匙串”和连接到iOS自动填充系统(例如Roboform)的第三方密码管理器中查看所有用户保存的密码。

知道了锁码后,您就可以轻松地将被盗手机从iCloud上解开。 为此,只需直接在手机设置中更改iCloud密码即可; 输入iPhone所有者的原始密码,这是不必要的。 以最小的灵活性,iCloud密码会在几秒钟内更改,此后,“查找我的iPhone”立即关闭。

使用锁定代码,可以解密iCloud中的用户密码数据库,其SMS和iMessage消息以及运行状况数据。 这里有一个微妙的要点:要访问此数据,必须通过两因素身份验证保护用户帐户。

两因素身份验证与它有什么关系?


好吧,我们弄清楚了学习了锁码的攻击者到底可以访问什么。 但是,两因素身份验证与它有什么关系?

事实是,只有包含了双重身份验证,iCloud的某些高级功能才可用。 同时,整个智能手机变成了……所必需的非常重要的因素。

  1. 在iCloud中重设密码(与Apple ID帐户的密码匹配)。 他们重设了iCloud的密码,然后按了拇指:断开连接找到我的iPhone,将iPhone从iCloud锁上解开; 从云中拖动照片(您可以在此处google Celebgate),提取备份,通话列表等。
  2. 访问iCloud云中的密码。 在这里,我只是注意到,iCloud钥匙串云钥匙串的密码使用取决于锁码的钥匙加密。 顺便说一下,该锁码适用于参与同步的任何设备。 如果没有两因素身份验证,密码将根本不会同步到云,因此此项目就在这里。
  3. 健康数据。 这包括有关用户活动的数据-步数,心律(如果使用了手表或跟踪器)等等。 如果您能胜任管理,则非常有用的信息。 同样,仅当启用了双重身份验证时,运行状况数据才会落入云中,要解密它们,您将需要输入锁码。
  4. “放映时间。” 有关用户及其孩子使用所有设备的限制和统计信息。 同样,没有2FA,云同步将无法正常工作。
  5. SMS和iMessage。 您只能使用两因素身份验证在iCloud中启用它们的同步,传统上,您需要使用锁码来解密。

“太恐怖了! 不,我绝对不会包括两步验证,这很危险!” 逻辑推理? 老实说,不是真的:知道iPhone的锁码后,使用iPhone启用双重身份验证将非常非常简单,这使我们回到了第一点。 但是今天关闭2FA非常困难,几乎是不可能的。

保护锁代码免受暴力攻击


使用阻止代码,攻击者(或执法机构)可能会对用户造成许多不良影响。 锁码几乎是唯一也是最后一道防线。 如果崩溃,攻击者几乎可以使用iPhone本身或云中的数据进行任何操作-建筑物的完全类似物,其整个安全系统仅限于入口处的数字锁。 您可以沿着链条走得更远:“钥匙串”帐户的密码将帮助您登录社交网络; 如果您找到了Google帐户的密码,则可以使用Android访问已累积用户设备的数据。

苹果公司意识到了这一切。 在很长一段时间内,设置iPhone或iPad时,系统都会提示您输入6位数字的锁码(以前只有4位)。 是的,您可以启用4位数字的锁码,但是此步骤的安全性令人怀疑:使用特殊工具的4位数字的锁码可以在半小时内破解。 但是搜索包含6位数字的密码可能需要长达19年的时间-这是非常安全的。 但是,我们所知道的解决方案使用了特殊的解决方法:在某些情况下,前几十万个密码(AFU,某些世代的硬件)的分类速度要快得多,并且使用了频率词典而不是穷举搜索。

硬件过度杀伤防护如何? 所有64位iOS设备均具有Secure Enclave安全子系统,其硬件通常为Secure Element,这限制了尝试速度和尝试次数。 迄今为止,除基于SoC A12的iPhone和iPad以外,所有版本的iPhone和iPad都已或多或少规避了Secure Enclave保护。 在“安全”型号中-iPhone Xs,Xs Max和Xr。 在这些型号中,搜索速度将在10分钟内限制为一个密码。 据我所知,黑客工具的制造商尚未能够规避这一限制。 但是对于较旧的型号,尤其是在AFU模式下(首次解锁后,即在开机状态下从用户手中取下手机,并且用户在开机后至少解锁了一次),搜索速度要快几倍。

事实是,您可以在不知道iCloud密码的情况下关闭iCloud Lock?


正确-但仅适用于在帐户中注册的具有有效两因素身份验证的设备。 令人惊讶的是:也许是最强大的机制,一种先进的威慑力,在iPhone盗窃的现象减少几次之后,您可以将其关闭,只知道锁码,仅此而已。

怎么做? 我需要iPhone本身及其锁定代码。 启动查找iPhone系统应用程序。 在应用程序中-带有题词“必填”的密码输入字段。 通过单击“忘记Apple ID或密码?”来忽略它,我们将看到一个电话锁密码请求:


我们输入锁码,然后在下一步中为iCloud设置新密码:


问题已解决:我们现在知道来自Apple ID / iCloud的密码; 可以通过系统设置禁用iCloud锁定。

一种替代方法不需要使用“查找我的电话”应用程序。 我们进入设备设置中的Apple ID,然后打开“密码和安全性”项:


接下来是更改密码。 将要求输入设备锁定代码:


之后,更改iCloud / Apple ID的密码:


即使这样,原始所有者仍可以通过发送恢复请求并指定受信任的电话号码来重新获得对帐户的控制。


“受信任的电话号码”设置指示用于进行两因素身份验证的SMS将发送到的电话号码。 如果攻击者更改了他的Apple ID密码,所有者可以使用此号码来恢复对该帐户的访问。

您无法删除单个号码,但这不会阻止攻击者。 第一步是添加新的“受信任的电话号码”,第二步是删除属于原帐户持有人的旧电话号码。 从那一刻起-几乎所有内容:从设备的原始所有者快速恢复对帐户的访问将失败。 最好的情况是,在进行冗长的验证过程后,将有可能丢失被盗设备的痕迹。

怎么会这样


从我的角度来看,iOS安全系统现在还有很多不足之处。 唯一的防线是完全没有足够的保护。 (在这里,我将提到“屏幕时间”的密码保护;它不是完美的,但总比没有好。以某种方式,我将更多地讨论这种保护。

如何增强安全性? 我建议采取以下措施。

  1. “返回,就像在iOS 10中一样”:在iOS 11之前,没有人可以将密码重置为本地备份。 忘记密码了? 您可以在iCloud中备份并将手机重置为出厂设置。 备份密码已重置。 但是不可能简单地删除iPhone,找出锁码并删除备份:备份的密码可能设置得很长而且非常困难(在安装过程中您仍然必须输入一次密码,在恢复设备时仍然需要输入第二次密码),并且破解速度非常慢,每秒使用GPU上的硬件加速进行数百次尝试。
  2. 未经iCloud密码确认,请勿添加或删除受信任的电话号码。 现在,要添加一个新的可信任号码以获取2FA代码,只需输入iPhone锁定代码即可。
  3. 防止使用锁定代码重置Apple ID / iCloud的密码。 尝试以某种方式更改或重置您的Google帐户的密码-确保访问恢复系统既方便又安全。
  4. 更重要的是,重设密码后,请勿断开查找我的iPhone的连接。 再一次,我将其发送给Google:足以更改(甚至不重置,只需更改!)Google帐户密码并禁用FRP(恢复出厂设置保护)保护三天:这段时间足以花时间做某事关于被盗设备。 鉴于抢劫者现在不仅从受害者手中夺走了智能手机,而且还迫使他们将锁定代码告知他们,立即从云中更改了密码并从iCloud中取消了设备的绑定,这一刻具有特殊的意义。

是否有可能以某种方式加强iOS的安全性? 企业用户可以使用Apple Configurator系统,您可以在其中设置帐户操作的限制。 最终用户可以设置“屏幕时间”密码。 如果您不因自我限制而感到厌烦,那么使用设备的体验将不会受到影响,但是您将无法重置备份密码:除了屏幕锁定密码,系统还会要求您输入“屏幕时间”密码。 另外,您可以通过以下方式配置限制:没有“屏幕时间”密码,您将无法更改帐户密码或从iPhone中删除该密码。

Source: https://habr.com/ru/post/zh-CN462271/


All Articles