iMessage 安全的内部工作原理?

信息安全 协议 即时通讯
2021-09-08 16:41:21

是一篇非常有趣的文章,介绍了苹果非常流行的通信设备中使用的 iMessage 技术。到目前为止,苹果还没有公布太多的技术细节。希望这里的人能够对此有所了解。

  • 使用了哪些安全技术和协议?

  • 消息是如何加密的?

  • 它真的是端到端的安全吗?苹果或其他任何人都可以绕过加密吗?

任何其他有趣的信息也欢迎。

2个回答

这是不完整的。但希望有一些用处。 https://wiki.imfreedom.org/wiki/IMessagehttps://github.com/meeee/pushproxy(尤其是文档部分)对苹果的专有协议进行了一些逆向工程。

似乎每个苹果设备都有一个 SSL/TLS 客户端证书用于身份验证,该证书设置为苹果推送服务器所知。这用于对您进行身份验证以及加密您的苹果设备和苹果推送服务器之间的连接。我没有看到任何有关检索您正在向其发送消息的用户的公钥的信息;因此,您的消息完全可以被苹果服务器上的某个人阅读/编辑。

具体回答三个问题:

  • 使用了哪些安全技术和协议?

标准 SSL/TLS 证书。 Apple 的自签名证书使用 RSA 2048 位公钥。

  • 消息是如何加密的?

SSL/TLS 加密苹果推送服务器和您的设备之间的连接。

  • 它真的是端到端的安全吗?苹果或其他任何人都可以绕过加密吗?

是的。据我所知,苹果服务器上的消息是明文形式的。


编辑:2013 年 8 月 26 日:我同意这与Apple 在撰写此答案几个月后发表的官方声明不一致,该声明指出:

例如,通过 iMessage 和 FaceTime 进行的对话受到端到端加密的保护,因此除了发送者和接收者之外,没有人可以看到或阅读它们。Apple 无法解密该数据。同样,我们不会以任何可识别的形式存储与客户位置、地图搜索或 Siri 请求相关的数据。

我们将继续努力在履行我们的法律责任和保护客户期望和应得的隐私之间取得适当的平衡。

就个人而言,我不太信任他们获得美国政府报告的这份声明。这与我对 Apple 的看法无关,但主要源于我个人对封闭源专有协议的信任度很低,该协议的内部运作和技术细节是保密的。

也许这种说法是完全正确的,但对于为什么允许对 Apple iMessages 进行加密,但LavaBit显然不得不在禁言令下关闭或秘密披露像斯诺登这样的人的电子邮件,这似乎很奇怪。根据他们不想遵守的法院命令,我是否会期望苹果突然停止允许 iMessages 原则上使用?

或者它在技术上可能是正确的,但没有提到根据政府命令安装的后门,允许他们从 Apple 设备远程检索私钥(可能只有在法院命令/政府请求的情况下)。 几位观察员已经提到当您获得新的 iOS 设备时,一旦您设置了您的帐户(通过知道您的密码或使用一些低熵安全问题进行密码重置),您的设备会自动从云中检索您过去的所有 iMessage。这意味着Apple肯定将您的消息和您的私钥存储在云端 - 允许消息可以加密并且您的私钥可以受密码保护(存储两次 - 一次带有密码,一次带有安全问题的答案) . 假设 Apple 端的任何人经常验证您的密码(例如,在您登录 Apple Store 的任何时候),大多数密码都很弱,Apple 不会登录或暴力破解密码。

或者它可能是一个完全错误的新闻稿,苹果被告知根据美国政府的命令发布,以便犯罪分子可以安全地使用 iMessage 进行非法活动。许多观察家质疑泄露的DEA 备忘录的真实性(以及当 DEA 特工似乎告诉毒贩如何在不受政府干预的情况下安全地发送信息时,为什么会泄露它)。

最近的 HITB 会议透露了很多关于 iMessage 的新信息。请参阅演讲者的官方博客文章

总结一下,

  • 与 Apple 服务器的所有通信都是通过 SSL/TLS 完成的。
  • 不使用证书固定。这意味着该设备可能会受到钥匙串中安装的恶意根 CA 证书的危害。
  • 256 位 ECDSA 密钥用于对消息进行签名。1280 位 RSA 密钥用于加密。
  • 密钥交换是通过 Apple 的 ESS 服务器完成的。

结论

iMessage 对传统攻击者的安全性出人意料。破坏加密所需的资源量很大。Apple拥有打破 iMessage 端到端加密属性的技术能力,因为它们控制了关键基础设施。如果您偏执,请自行交换密钥并使用 GPG。没有什么是非常令人惊讶的。

自插入链接,我的博客,我在这里讨论了更多关于此事的内容。http://www.infosecstudent.com/2013/10/apple-imessage-hitb/