翻译:360代码卫士
投稿方式:发送邮件至linwei#360.cn,或登陆网页版在线投稿
概要
攻击者能把安卓TrustZone技术的组件版本降级到存在已知漏洞的旧版本,并利用这些漏洞攻击运行最新操作系统版本的智能手机。
据佛罗里达州立大学和百度X-Lab团队的四名计算机科学家介绍,问题在于ARM TrustZone技术的设计,广泛应用于当今绝大多数的Android设备。
利用TrustZone设计缺陷
ARM TrustZone技术是一种片上系统(System on Chip, SoC),是安卓智能手机主处理器中的一个安全区域。ARM TrustZone是Android内核中的一个特殊部分,运行自家操作系统,即TrustZone OS,它与主Android OS是分开运行的。
TrustZone旨在创建一个安全区域,供Android OS运行最重要和最敏感的操作,比如处理加密数据等。这些操作以特殊app(也就是trustlet)的身份在TrustZone OS中运行。
当TrustZone OS加载了一个trustlet时,它首先会检查数字签名来查看是否由正确实体签名。这种完整性检查旨在消除加载被篡改过的trustlet的风险。
TrustZone并不具备版本回滚保护功能
今年夏天,研究人员发现攻击者能够将trustlet降级到旧版本,从而使其遭受多个漏洞的影响。问题出在trustlet缺乏版本回滚阻止功能,并且为不同的固件版本使用了相同的密钥对。也就是说,攻击者能够用新的trustlets替换掉旧版本的trustlets,而TrustZone OS对此毫不知情,原因就在于它们的密钥是相同的。研究人员Yue Chen通过电子邮件告诉Bleeping Computer。
能成功攻击多数智能手机
研究人员在运行ARM TrustZone技术的设备上测试并验证了攻击的可行性。这些设备包括三星Galaxy S7、华为Mate 9、谷歌Nexus 5和谷歌Nexus 6。
他们用一个易受CVE-2015-6639漏洞影响的旧版本替换了当前的Widevine trustlet更新版本。该漏洞存在于安卓的高通安全执行环境 (QSEE) 中,能让攻击者以root权限访问TrustZone OS,从而完全控制手机。
研究人员指出,这个威胁存在于几乎所有的安卓设备中,如三星Galaxy S7、谷歌Pixel、谷歌Nexus、华为Mate 9 (Pro)、以及这些厂商的其他旧版本中。其他小规模的手机厂商也受影响。
漏洞已修复
研究人员表示已将漏洞告知所有受影响的手机厂商,而后者已推出最新更新后的版本,并为更新的设备版本提供了修复方案。为此,用户应该及时将设备更新至最新版本并尽快应用补丁。
研究人员指出,尚未发现任何使用该漏洞的大规模恶意软件传播活动。
攻击难以实施
好在攻击实施困难,因为首先攻击者必须拥有设备root权限,然后结合其它漏洞才能利用设备。如对该技术感兴趣,可参见2017年7月研究人员发布的文章《TrustZone降级攻击》。文章链接可参考这里和这里。
这并非针对ARM TrustZone的首次重大攻击。去年,研究人员就曾在USENIX安全会议上详细描述了针对TrustZone的ARMageddon漏洞攻击。
谷歌已意识到TrustZone遭攻击的问题,因此目前已推出最多20万美元的奖励,以寻求可导致TrustZone或Verified Boot遭入侵的远程利用链或漏洞。
发表评论
您还未登录,请先登录。
登录