导语:iMessage是苹果公司推出的即时通信软件,可以发送短信、视频等,其拥有非常高的安全性。不同于运营商短信/彩信业务,用户仅需要通过WiFi或者蜂窝数据网络进行数据支持,就可以完成通信。但是iMessage真的安全吗?
iMessage是苹果公司推出的即时通信软件,可以发送短信、视频等,其拥有非常高的安全性。不同于运营商短信/彩信业务,用户仅需要通过WiFi或者蜂窝数据网络进行数据支持,就可以完成通信。
毫无疑问,iMessage是最受欢迎的即时通讯平台之一,原因很明显,它内置在iOS系统中,默认情况下,每台iPhone都配有iMessage。由于iMessage不需要复杂的设置,因此iMessage用户的数量与iPhone用户的数量非常接近。苹果每年销售约2亿部iPhone,目前销售的iPhone总数超过10亿部。
但是iMessage真的安全吗?
让我们从Apple的隐私设置方法来讨论这个问题,苹果的开发人员使用端到端加密来保护用户的所有设备上的iMessage和FaceTime对话。通过watchOS和iOS,用户的消息在用户的设备上被加密,因此没有密码就无法访问。苹果的研究人员设计了iMessage和FaceTime,所以当用户的数据在设备之间传输时,其他人员是无法解密用户的数据。另外,用户可以选择在30天或一年之后自动从用户的设备上删除苹果的研究人员的消息,或者将它们永久保存在用户的设备上。
再谈谈iCloud的安全,iCloud在传输过程中对用户的消息进行加密,以加密的格式存储在iCloud中,并使用安全令牌进行身份验证,从而保护用户的消息。对于某些敏感消息,苹果使用端到端加密。这意味着只有用户才能访问用户的消息,而且只能在用户登录iCloud的设备上访问。没有任何人,可以访问端到端的加密消息。
端到端加密提供了最高水平的数据安全。用户的数据由一个密钥保护,该密钥来自用户的设备特有的消息,并与只有用户知道的设备密码相结合。其他人不能访问或读取这些数据。
iCloud中的消息也使用端到端加密。如果用户打开了iCloud备份,用户的备份包括保护用户消息的密钥副本,这可确保用户在无法访问iCloud钥匙串和可信设备时恢复消息。当用户关闭iCloud备份时,系统会在用户的设备上生成一个新密钥,以保护以后生成的消息,且Apple不会存储该密钥。
如果用户不太相信,可以看看iOS安全指南,安全指南是这样说的:当用户在设备上打开iMessage时,设备会生成两对密钥供该服务使用,这两对密钥分别是用于加密的RSA 1280位密钥和用于签名的NIST P-256曲线上的ECDSA 256位密钥。这两个密钥对的私钥都保存在设备的钥匙串中,而公钥则被发送到Apple身份服务(Apple identity service,IDS),它们会在IDS中,与用户的电话号码或电子邮件地址以及设备的APN地址相关联。
iCloud中的消息还使用CloudKit端到端加密,并使用由iCloud钥匙串同步保护的CloudKit服务密钥。如果用户启用了iCloud备份,则用于iCloud容器中消息的CloudKit服务密钥将被备份到iCloud中,从而允许用户恢复其消息,即使苹果的研究人员已经失去了对iCloud钥匙串和其受信任设备的访问,当用户关闭iCloud备份时,还是会生成此iCloud的服务密钥。
iMessage的安全与隐私
在我们讨论iCloud安全之前,让我们先检查一下没有与iCloud同步的消息。根据我现在所掌握的知识,iMessage协议中没有已知的漏洞可以解密拦截的消息,并且在iPhone和Apple服务器之间嗅探流量并不容易。访问消息的唯一方法是通过iTunes创建本地备份,从设备本身获取消息。问题是,用户必须持有设备,而且用户必须知道它的密码(以便与计算机配对)。如果备份是受密码保护的,那么这就是一个问题,如果手机运行的是iOS 11或12,你可以简单地重置那个密码,那么这就不是一个问题了。
以下是几篇关于iMessage安全的文章:
那么iCloud备份呢?如果备份存在,则消息就会出现。不过需要用户的Apple ID、密码和一次性代码来通过双因素身份验证(或者用户可以使用身份验证令牌)。虽然iCloud备份是加密的,但加密密钥与数据是一起存储的(从技术上讲,存储在不同的服务器上,但任何拥有适当凭证的人都可以访问)。如果用户成功地访问了iCloud备份,那解密消息就不是那么困难了。
正如用户所看到的,没有与iCloud同步的iMessage的安全性,则有些不足。
然而,如果用户启用iCloud消息,则下一个(以及所有后续)iCloud备份将永远不会包含任何消息。而使用额外的AES 256加密,在安全性上,则是一个很大的改进:
消息同步
让我们接着谈iCloud备份,如果用户使用云备份,那么此时他们的设备被打开,锁定并连接到电源,则会每天会创建备份。请注意,它只适用于Wi-Fi。只需进入 Settings | [your name] | iCloud | iCloud Backup来打开或关闭该功能,用户还可以手动备份(手动备份不需要连接电源)完成此步骤。
但是数据同步呢?出于各种原因,许多用户不会启用iCloud备份。其中一个原因是空间的大小,一般用户只会获得5 GB的空间,这对于消息备份来说显然是不够的。但是,同步是默认启用的,而且非常非常方便。
大多数数据几乎是实时同步的,其中就包括联系人、通话记录、笔记、Safari浏览历史等,但不包括iMessage的消息。之所以这么肯定,是因为研究人员在各种各样的设备(从iPhone 5S到iPhone Xs Max,还有iPad和一些不同的mac电脑)上进行了调取测试。研究人员所测试的设备分别运行了不同版本的iOS,从iOS 11.4(第一个支持iCloud中消息的iOS版本)到iOS 12.1.1(撰写本文时还只是测试版),通过Wi-Fi和LTE连接,只有苹果公司知道消息何时以及如何与云同步。因为有时即时消息(iMessage和SMS)会被上传到iCloud,然后同步到连接到账户的其他设备上,此过程通常需要5到10分钟,但有时甚至需要几个小时来同步。而在研究人员的一个测试帐户中,同步消息的时间竟然达到了4天。尽管实现这个功能的版本整整测试了一年,但看起来这个实现仍然存在缺陷。
消息附件的安全性分析
消息附件指的是照片、视频、语音消息、笔记、联系人、位置信息等任何非文本内容,如果用户的消息与iCloud同步,那么所有消息附件也会同步。此时,用户发送或接收到的所有东西也会被上传到iCloud上,除非用户禁用消息同步或者完全禁用iCloud,不过我建议最好不要这样做。
如上所述,如果消息同步处于打开状态,则文本消息不包括在iCloud备份中。那消息附件呢?它们也不包括在iCloud备份中,消息附件仅在设备本身和云中的某个安全容器中可用(仅用于同步)。
关于消息附件,还有一件至关重要的事情,用户需要知道。在iOS中,当用户发送一个重定向到某个网页或特定文件的链接时,iMessage会生成一个缩略图预览。对于大多数文档来说,它只是一个应用程序图标;对于图像,它是一个缩略图;对于视频,通常会显示第一帧;对于网站来说,它是一个预览,或者是HTML标签中的一个图像,甚至是视频(这同样取决于HTML标签)。此外,预览作为附件保存在设备本身和云上(如果启用了云同步)。顺便说一下,如果用户在Dropbox上发送或接收到一个图片链接,那么图片本身就会被保存。如果用户使用苹果地图共享一个位置,那么地图的实际部分就会作为图像,也被保存下来,而对于所有链接,favicon也会被保存(如果存在的话),Favicon是favorites icon的缩写,亦被称为website icon(网页图标)、page icon(页面图标)或urlicon(URL图标),Favicon是与某个网站或网页相关联的图标。
其他内容(如支持imessage的应用程序)也值得被保存,例如,即使在调查时链接本身不再可用,自动生成的附件也可能包含有价值的内容。
已经删除的数据的安全性
删除邮件时会发生什么(如果该邮件已经与iCloud同步)?在研究人员过去的进行的一项测试中,他们发现苹果并不会删除已经与iCloud同步的照片、网页浏览记录和笔记的。
所以下面,我会向大家介绍如何从iCloud中正确删除消息(连同附件消息)。目前,虽然苹果已经吸取了研究人员的改进建议,但目前删除消息后仍有一些蛛丝马迹留下,且仍然可以在云中停留一段时间,甚至几天。研究人员分析,很可能是一些连接到该账户的设备可能在用户按下“删除”键时处于离线状态。另外,删除的数据仍然可以从本地设备备份中恢复,因为所有数据都存储在SQLite数据库中,但绝对不能从iCloud中恢复,至少研究人员做不到这些。
这到底是怎么回事?让我们再次回到iMessage隐私和安全的话题,虽然iCloud中的消息是加密的,但并不能完全做到端到端的加密。从技术上讲,它们是使用存储在iCloud钥匙串中的密钥加密的。如果用户能先提取iCloud钥匙串的话,那他们就可以访问包括图片、视频、位置、联系人、笔记等非文本内容的消息。但要访问iCloud 钥匙串并不容易,用户不仅需要用户的凭证,还需要一个受信任设备的密码。
除了以上这些,用户还需要什么才能获取消息(以及消息附件,即非文本内容)?需要Elcomsoft Phone Breaker (从iCloud下载所有内容)和Elcomsoft Phone Viewer (浏览数据),还需要知道如何读取iCloud中的消息,比如如何提取完整的内容,包括媒体文件,位置和文件的更多细节。
总结
通过以上分析,可以知道iMessage并不是百分百安全,无懈可击的。不过与其他即使软件相比,iMessage的消息和附件都具有更好的保护和加密级别。比如,要解密它们,首先需要获取钥匙串,光这个过程,就很复杂。
那有没有一种可能,就是苹果公司自己可以读取用户的消息?通过研究,这个可能是不存在的,苹果的研究人员是真的无法访问用户的iCloud钥匙串和用户的消息,这就是苹果的研究人员为什么不将它们包含在Apple ID数据和隐私中的“获取你的数据副本”所提供的大量数据中的原因(谢谢到GDPR)。那执法部门呢,他们会截获用户的消息吗?答案是,只有当他们使用专门的工具破获用户的登录凭据和密码时才可以进行取证,或者是雇佣专门的取证人员来进行取证,目前,取证人员可以使用Apple ID、登录密码、第二身份(second authentication)验证因子和密码,将取证设备连接到要调查的账户上,然后启用iCloud 钥匙串,等待设备完全同步,设置iTunes备份密码,创建本地备份,最后用取证软件打开备份进行分析。