全球安卓手机或遭遇重大安全威胁,安卓安全核心TrustZone再遭攻破

hongtaiyangaa 2017-09-18 03:58:38
当下,用户越来越频繁使用手机进行账号登录和金钱交易,这也可能带来隐私泄露及财产损失等安全隐患。面对这一现状,手机厂商通过ARM TrustZone硬件隔离技术打造“可信执行环境”,从而实现为手机上的敏感程序和数据提供安全保护。
   近日,百度安全实验室和弗罗里达州立大学(Florida State University)联合研究发现,“TrustZone的底层安全系统(TZOS)和上层安全应用(Trustlet)都存在降级攻击的风险”,包括华为、三星、Google等厂商的多款主流手机都存在这一漏洞。值得注意的是,一旦TrustZone被黑客攻破,整个手机的安全性都会受到威胁。
缺版本号验证可致TrustZone被攻陷
可信执行环境(TEE)是硬件制造商推出了一种新型安全机制,如ARM的TrustZone,在数字世界中被广泛应用。它有两个独立世界——Normal World和Secure World,Normal World中的用户应用程序和普通操作系统是比较传统的模式,而Secure World中的用户应用程序和其操作系统具有专门用途。

( 配图:可信执行环境典型构造图 )
以Android为例,诸如数字版权保护和一些登录、支付协议的加解密过程和数据均存在与Secure World中,而Secure World中的程序可以自由访问Normal World中的内容,反之却禁止,因此这在理论上便给攻击者造成了攻击难度,即使其攻陷了Normal World里的组件,也无法偷盗或篡改TrustZone里的内容。
然而,Trustlet和TZOS并非固化在硬件中。为了有效防止攻击者篡改或替换Trustlet和TZOS,手机厂商会在设计上,通过包括引导加载程序(Bootloader)、可信操作系统及相应的证书或密钥形成的信任链进行验证操作,从而确保了Secure World的完整性。
但是,弗罗里达州立大学和百度安全实验室通过实验发现,主流手机厂商均没有对Trustlet和TZOS的版本号做验证。因此,只要攻击者拿到了手机Root权限(攻陷Normal World),他可以用既有漏洞的Trustlet/TZOS旧版本覆盖当前Trustlet/TZOS新版本,然后利用既有漏洞进一步攻陷TrustZone系统。
TrustZone 存在降级攻击风险 可致Android用户隐私和机密泄露
一旦ARM的TrustZone被控制,就具备发动Android TrustZone 的降级攻击条件,攻击者可以用存在已知漏洞的版本去替换现有的版本。当Android TrustZone 缺乏回滚保护机制,就会被攻击者回滚到存在安全漏洞的旧版本。
事实上,目前的TZOS和Trustlet都存在降级攻击的风险——攻击者在TrustZone之外,可以用低版本TZOS/Trustlet替换当前手机上运行的版本,然后利用低版本TZOS/Trustlet的漏洞攻入TrustZone。简单来说,如果一个过时的版本有漏洞可以利用,而漏洞在最新的版本上才被修补时,黑客仍然可以通过将最新版本的软件降级到可利用的较低版本,从而获得一切藏在TrustZone中用户的账号密码等隐私信息。
以Google Nexus 6为例,其旧版本的DRM Trustlet存在可以让Normal World攻击者获得TrustZone执行权限的CVE-2015-6639漏洞,并且已有公开的漏洞利用代码。经实验发现,尽管当手机升级之后(例如更新到N6F26Y这一编号的ROM)这一漏洞得到了修复,但拥有Root权限的攻击者仍然可以用旧版(例如LMY48M这一编号的ROM)中提取的Trustlet覆盖新版Trustlet,并成功将其运行起来。一旦旧版Trustlet运行在了TrustZone里,攻击者即可发起既有攻击拿到TrustZone的执行权限。因此,即便手机进行了升级和漏洞修补,仍然没有阻止攻击者进入TrustZone。
类似地,针对TZOS也可以做类似的降级攻击。研究者用旧版ROM里提取的TZOS覆盖了升级之后的手机里TZOS所在分区,手机仍然通过了Bootloader验证、能够正常启动。攻击者可以因此攻击TZOS的漏洞动态获得TrustZone里的内核权限——这样便获得了一切藏在TrustZone里的秘密和能力。
主流厂商紧急修复 TrustZone将补发补丁
截止目前,百度安全实验室和弗罗里达州立大学已将这项联合研究成果提供给包括谷歌,三星,华为等在内的全球主流手机厂商。最新消息称,国内手机厂商华为等已针对TrustZone降级攻击着手修复。Google Project Zero也独立地对这一问题进行了研究和披露,希望各大Android厂商对这一问题引起重视,尽快进行全面地修复。
此外,一些手机厂商逐渐在产品上引入Security Enclave处理器,相当于在TrustZone之下引入一层额外的隔离和保护。然而,Security Enclave如果设计或实现时考虑不当,也会面临同样的威胁,需要厂商予以注意。
...全文
274 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
# 课程背景2021年ARM又推出了ARMv9架构,系统软件架构也在悄无声息地发生变化。在这种架构中,强调的是隔离技术,包括资源的隔离、运行时隔离,特权操作系统的权限也变得越来越小…不管您是什么领域,ARM服务器、汽车电子、手机或者是其它设备终端,安全都是其中的一个重要环节。我们常说的安全一般是只网络安全/业务安全/App安全,这些安全依赖的正是操作系统安全,操作系统安全所依赖的就是安全架构技术,在该安全架构中,首当要学习的就是Trustzone/TEE技术。只有设备安全/操作系统安全/APP安全/网络安全/服务器安全整个一条链都安全了,那么你的业务才算得上的安全.不管您是做什么的,您做不做安全或虚拟化,掌握整个系统软件架构也是一件必要的事情。您只有掌握了安全架构,你才具有全局的视野,才能进行全局的软件设计,才称得上架构师。安全不仅仅是架构安全安全还是一种生态,安全还产生一类标准。安全出现在产品声明周期的任何一个角落,它可能零碎地出现在硬件中、零碎地出现在软件代码中。如果你不了解安全,你可能无法进行优秀的产品设计,你甚至无法去正确的阅读代码。# 课程介绍(1) 讲解ARM最新硬件架构(ARM Core、ARM Architecture)、SOC架构(2) 讲解最新的Trustzone安全架构、TEE架构、Secureboot等(3) 讲解软件组件:TF-A(ATF)、optee_os、Linux Kernel、CA/TA应用程序等,及其交互模型、设计模型(4) 多系统交互代码导读、安全论证实践、CA/TA示例实践、安全业务设计实践(5) 我们学习的是全部硬件、全部系统,软硬结合,或者是大系统的软硬件融合# 课程收益1、安全不再神秘,能cover住全局2、熟悉ARM Architecture架构知识3、熟悉SOC架构知识4、熟悉主流的系统软件框架5、知道多系统之间是如何交互的,也能够进行系统级的设计6、深入了解当前的系统安全架构以及未来安全架构趋势7、熟悉基础的安全业务设计方法8、熟悉系统的启动流程、Secureboot等9、知道Linux Kernel在大系统中的位置,以及与其它系统交互的方法10、熟悉各类标准和规范11、学习资料的获取方法 # 课程大纲《Trustzone/TEE/系统安全开发速成班》 --当前48节课/19小时说明: 本视频会持续更新,购买时请以课程目录为主。本EXCEL一个月更新一次。章节编号课程时常第一章基础和简介1课程介绍 8:332ARM和SOC的架构简介60:13第二章软硬件基础3armv8/armv9基础概念26:204ARMv8/ARMv9的Trustzone技术77:565ARMv7的Trustzone技术8:376安全架构及其未来趋势(FF-A/SPM/CCA)6:417ARMv9 CCA机密计算框架底层核心原理简介20:448ARMv9 RME安全扩展详解61:299ATF Quick Start0161:2710Optee Quick Start49:3411系统软件Quick Start21:0412Secureboot原理深度讲解60:2813Android AVB的介绍26:0914TZC400详解17:5615TZC400代码导读之ATF13:4416RPMB详解30:0617RPMB代码导读之optee14:0318efuse详解12:1919Anti-Rollback的介绍11:33第三章软件架构20TEE的组件介绍67:5921TEE的RPC反向调用31:1422TEE的调度模型21:3223各类标准和规范22:17第四章软件架构(高级)24多系统之间的管理模型(ABI/标准)10:3025多系统之间的调度12:2126多系统之间的中断(不含虚拟化)61:4727多系统之间的中断(虚拟化)6:5728再谈多系统之间的调度(多核多线程)10:3129其它(内存管理/PSCI...)10:12第五章安全应用开发基础30安全应用开发基础5:3731TEE环境:qemu_V8环境的使用4:2032TEE环境:编写一个CA和TA程序11:0433TEE环境:编写漂亮的文档4:1434TEE环境:搭建阅读代码神器opengrok3:2635TEE环境(必看):使用集成好的qemu_v8镜像程序20:2936[CA/TA开发]CA到TA的通信9:1837[CA/TA开发]CA到TA的传参27:1638[CA/TA开发]TEE中的存储系统20:5739[CA/TA开发]TEE中的密码学系统简介12:3740[CA/TA开发]TEE中的密码学系统简介-数字摘要Hash等33:2141[CA/TA开发]TEE中的密码学系统简介-对称密码学算法AES等12:2042[CA/TA开发]TEE中的密码学系统简介-消息摘要算法HMAC等15:4843[CA/TA开发]TEE中的密码学系统简介-非对称密码学算法RSA等7:33第六章安全业务设计高级44Gatekeeper的介绍29:3245keymaster/keymint/keystore/keystore213:2746生物认证(指纹/人脸)13:5747DRM的介绍21:3748TUI的介绍17:03总计时统计(分钟)1128:12 说明:本课程会持续更新…

786

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 非技术区
android小程序微信小程序 技术论坛(原bbs)
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧