在今年6月的MOSEC移动安全技术峰会上,手机安全研究员介绍了如何利用安卓手机厂商在实现芯片级安全解决方案TrustZone时造成的软件漏洞,在可信区域执行任意代码,将TrustZone完全攻破。自iPhone5s于手机中加入指纹识别功能后,指纹识别迅速在安卓机群中流行,俨然已成为旗舰机标配。随之而来的还有各大手机厂商的吹捧,指纹识别能完美解决安全问题云云。 可惜指纹技术并不能拯救手机安全。
物极必反,被厂家与用户过度神化的指纹识别功能也不是尽善尽美:iPhone5s发布后仅一天,欧洲最大的骇客团体ChaosComputerClub 就宣布破解了TouchID ,并用视频记录了操作过程。
而在今年6月的MOSEC移动安全技术峰会上,手机安全研究员介绍了如何利用安卓手机厂商在实现芯片级安全解决方案TrustZone时造成的软件漏洞,在可信区域执行任意代码,将TrustZone完全攻破。
而TrustZone正是目前很多带指纹识别的安卓手机确保安全的一个核心技术,一旦被完全攻破,获取指纹识别数据将变得很容易。
安全员在MOSEC移动安全技术峰会的演示过程中表示,攻破搭载指纹识别系统的手机,最困难的是利用TrustZone中的漏洞,因为这是一个完全的黑盒,缺乏文档和必要的调试手段。据介绍,该次破解是利用内核上的“任意地址写固定值”漏洞,在获取内核代码执行权限后向TEE(可信运行环境)发起进一步攻击,最终绕过TrustZone的防护系统,可获取诸多敏感数据。
说了这么多,TrustZone到底是什么?
TrustZone是为保护敏感信息的一种硬件安全架构体系,把手机从硬件与软件上分成安全与普通两个区域。严格意义上讲,指纹识别只是安全区中的一小部分。
在TrustZone的硬件架构中,整个系统都是为了保护安全区中的数据,防范设备可能遭受到的多种特定威胁。因此,安全区与普通区从硬件到软件都是被分割的,普通区第三方程序无法访问安全区中的敏感数据。
体现于手机上的就是,TrustZone会把智能手机的使用模式分为两种,其一是普通使用,其二是安全使用(涉及敏感数据)。例如机主在日常游戏、打字时,手机停留在普通模式;而当机主需要支付、输入密码或者指纹时,手机就会自动切换到安全模式,保护数据不被其它程序访问。
可惜,看起来很安全的TrustZone并不值得Trust。
在2014年8月,几乎所有高通骁龙处理器都被爆出存在TrustZone高危漏洞。黑客可以依靠该漏洞攻破系统的保护机制,并获得用户隐私资料。支付保护技术、数字版权管理、BYOD(自带设备办公)等等都会成为攻击目标,甚至有可能彻底破坏系统的安全机制。也就是说,攻击者不仅能获得安全区中的敏感数据,还能直接进入支付等高权限场景,TrustZone的分区保护形同虚设。
攻击TrustZone需要获得内核权限,在以往的一些议题中通常以执行内核代码为前提研究TrustZone的。而实际上往往需要组合2~3个0day漏洞才能完成一次真实有效的TrustZone攻击。
在今年6月举行的MOSEC移动安全技术峰会上,安全研究员证明了若组合利用TrustZone相关软件的两个漏洞,任意Android软件应用,都能够进入安全区获取敏感信息。并且申迪先是完成了手机常规OS的内核提权、以及禁用最新版本SEforAndroid;尔后又利用该漏洞侵入安全区,成功绕过诸多安全特性,获取到指纹等敏感信息。
面对安全隐患,TrustZone又该何去何从?
随着手机携带的功能越来越多,手机中私密信息的数量与重要程度也与日俱增。相应的,手机中的数据安全越来越得到重视,因为手机被破解,往往就意味着重要资料丢失、个人信息泄露、支付程序面临巨额损失……但从当前情况来看,手机对数据的保护,仍不能让大众放下心中的顾虑。
曾经,指纹识别搭配TrustZone,一度被称作手机安全的最后一道防线。
而如今,残酷的事实告诉我们,这最后一条防线也开始变得并不稳固。
8月份即将在拉斯维加斯举行的世界黑帽大会BlackHat上,安全员将作为演讲嘉宾向全球黑客介绍有关Android系统TrustZone安全攻防的研究成果,并且现场演示从传感器中读取指纹数据的攻击利用。