恶意软件可以读取 iOS 设备上的钥匙串条目吗?

信息安全 移动的 恶意软件 IOS
2021-08-20 23:55:58

第 3 方应用程序的钥匙串条目根据其“保护等级”受到保护。例如,将类“kSecAttrAccessibleWhenUnlocked”分配给钥匙串条目意味着只有在设备解锁时才能访问该条目。

关于这种情况,我有以下问题:

  • 我是否正确假设 iOS 中的沙盒原则确保每个第 3 方应用程序只允许访问由该应用程序创建的钥匙串条目?
  • iOS 是否会在设备解锁后立即自动解密具有该保护等级的所有钥匙串条目(即,拥有该条目的应用实际上不要求访问)?

  • 如果是上述问题的答案,这是否意味着在越狱设备上,恶意应用程序(即木马)可以在设备解锁时读取每个钥匙串条目?(越狱设备上没有沙箱意味着访问每个钥匙串条目,并且在设备解锁时钥匙串条目是明文的)。

提前致谢。

3个回答

我看到了这个问题,并决定对该主题进行一些研究。我实际上是(前)Apple 的 iOS 技术支持高级顾问,现在为 Apple 的子公司 FileMaker, Inc. 工作。我的 iOS 设备已越狱。因此,我决定使用 iFile 对文件系统进行一些嗅探,以仔细查看钥匙串应用程序,钥匙存储在哪里以及它如何处理它们。

现在,在我给出答案之前,我确实想明确一点,iOS 设备上的“恶意软件”几乎是不可能的。也就是说,您的答案实际上取决于您是否使用 iOS 4.x(或更高版本)以及(为此做好准备)您的设备上是否有密码。

当您的设备上有密码时,操作系统实际上将其视为钥匙串中的第二层安全性。更具体地说,它是一个加密密钥。

答案是肯定的。但仅在您有足够弱的密码来解密的情况下。

这是确认这一点的页面的链接:

https://stackoverflow.com/questions/3558252/ios-keychain-security

我想向您推荐百事可乐对本页上一个非常相似的主题的回答。他提供了已完成研究的链接,并解释了该主题的详细信息。

任何 chroot 规避都会让你变得脆弱,期间。
恶意软件在 iOS 设备上的可能性要小得多,但是是的,您是正确的,通过是至关重要的。希望有帮助,冰山

是的,有 iOS 恶意软件。没有必要证明。谷歌搜索 2 秒会发现很多。

是的,可以使用 iOS 设备远程或物理地完全绕过密码和/或钥匙串凭据。

密码将在技术上保护数据保护存储(这称为“iOS 数据保护”,与钥匙串存储不同),但前提是它非常大(14 个字符或更多)且非常复杂(大量数字雪崩) , 符号,加上大小写字符)。

最好不要在钥匙串上存储任何敏感信息,而是将其用作噱头,就像 iOS 平台上的其他安全功能一样。

还可以尝试用谷歌搜索 KeychainViewer 和 keychain-dumper。