开发者社区> 玄学酱> 正文

这款开源“神器”,可以找出Android设备最底层的Bootloader漏洞

简介: 本文讲的是这款开源“神器”,可以找出Android设备最底层的Bootloader漏洞,即使操作系统受到损害,智能手机的Bootloader固件也应该是安全的。但是近日,研究人员在4个主流芯片供应商的代码中发现了7个安全漏洞,这些漏洞会导致手机信任链在引导过程中被攻破,从而使设备遭受攻击。
+关注继续查看
本文讲的是这款开源“神器”,可以找出Android设备最底层的Bootloader漏洞

这款开源神器,可以找出Android设备最底层的Bootloader漏洞

即使操作系统受到损害,智能手机的Bootloader固件也应该是安全的。但是近日,研究人员在4个主流芯片供应商的代码中发现了7个安全漏洞,这些漏洞会导致手机信任链在引导过程中被攻破,从而使设备遭受攻击。

关于Bootloader

Bootloader是嵌入式系统在加电后执行的第一段代码,在它完成CPU和相关硬件的初始化之后,再将操作系统映像或固化的嵌入式应用程序装在到内存中然后跳转到操作系统所在的空间,启动操作系统运行。它可以初始化硬件设备、建立内存空间映射图,从而将系统的软硬件环境带到一个合适状态,以便为最终调用操作系统内核准备好正确的环境。

开发BootStomp工具检测bootloader漏洞

加利福尼亚大学圣芭芭拉分校的一组研究人员发现了该漏洞,他们创建了一个名为“BootStomp”的工具来自动检测bootloader组件中存在的安全漏洞。

该工具在分析了包括高通、MediaTek、Nvidia以及华为在内的4家主流芯片制造商的代码后,在其中两家供应商(Nvidia和华为)的bootloader中发现了6个零日漏洞。他们还使用该工具在高通bootloader中发现了一个已知漏洞(CVE-2014-9798)。据悉,目前在这6个新发现的漏洞中,bootloader厂商已经证实并确认了5个。

研究人员注意到,bootloader很难用软件进行分析,部分原因是由于它们是闭源代码开发的,且具有硬件特性,所以很难进行逆向工程。为此,研究人员特意开发了这款名为“BootStomp”的工具来攻克这些难题。

研究人员解释称,

BootStomp的目标是自动识别跟滥用/使用受攻击者控制的,且由bootlaoder代码信任的非易失性存储器相关的安全漏洞。具体来说,我们设想使用自己的系统作为一个自动系统,给定一个bootloader作为输入,从而输出一些可能提示存在安全漏洞的警报。然后,人类分析师可以分析这些警告信息,并快速确认突出显示的功能是否构成安全威胁。

确保bootloaders的完整性对于Google的“验证启动功能”(Verified Boot)和ARM的“可信引导”(Trusted Boot)至关重要,因为bootloaders需要验证彼此的完整性来创建所谓的“信任链”(chain of trust)。如果有人篡改了bootloader组件,内核或文件系统映像,该该设备将不可用。

使用BootStomp,研究人员在bootloading期间发现了36个潜在的危险路径,其中超过1/3是安全漏洞。

研究人员指出,

这些漏洞中有一些可以允许具有root权限的攻击者将任意代码作为bootloader的一部分执行,从而损害整个“信任链”,实现恶意功能,或是执行DDoS攻击,破坏设备。此外,我们的工具还识别出了两个bootloader漏洞,这两个漏洞能允许攻击者获取操作系统的root权限从而解锁设备并攻破信任链。

本文中,研究人员假设攻击者可以控制设备上非易失性存储(non-volatile)的任何内容,如果攻击者已经获得了操作系统的root权限,那么这一假设就可能会实现。研究人员发现,这5个bootloader分别来自3种不同的芯片集,其中包括:

华为 P8 ALE-L23:华为/海思芯片集;
Sony Xperia XA:MediaTek芯片集;
Nexus 9:Nvidia的图睿芯片集;

此外,研究人员还发现了一个新版本和旧版本的高通bootloader。其中一个已知的安全漏洞——CVE-2014-9798是一个影响高通旧版本bootloader的拒绝服务(DoS)漏洞。其他6个新发现的漏洞,其中1个存在于Nvidia芯片集中,5个存在于影响华为 P8的海思bootloader中。详细分析结果如下所示:

 这款开源神器,可以找出Android设备最底层的Bootloader漏洞

据悉,该研究成果最初由研究人员在本月初加拿大温哥华举行的USENIX安全大会上展示。




原文发布时间为:2017年9月7日
本文作者:小二郎
本文来自云栖社区合作伙伴嘶吼,了解相关信息可以关注嘶吼网站。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Android 反序列化漏洞攻防史话
Java 在历史上出现过许多反序列化的漏洞,但大部分出自 J2EE 的组件。即便是 FastJSON 这种漏洞,似乎也很少看到在 Android 中被实际的触发和利用。本文即为对历史上曾出现过的 Android Java 反序列化漏洞的分析和研究记录。 # 前言 序列化和反序列化是指将内存数据结构转换为字节流,通过网络传输或者保存到磁盘,然后再将字节流恢复为内存对象的过程。在 Web 安全领域
122 0
新型 Linux 僵尸网络变种“EnemyBot”现身!利用 Web 服务器、Android 及 CMS 漏洞进行攻击
新型 Linux 僵尸网络变种“EnemyBot”现身!利用 Web 服务器、Android 及 CMS 漏洞进行攻击
84 0
微软在 Android 设备上的预装 APP 中发现高危漏洞!下载量已达数百万
微软在 Android 设备上的预装 APP 中发现高危漏洞!下载量已达数百万
74 0
【Android】Pixel 2 解锁 Bootloader
【Android】Pixel 2 解锁 Bootloader
186 0
【阿里聚安全·安全周刊】阿里安全潘多拉实验室完美越狱iOS11.2.1|Janus漏洞修改安卓app而不影响签名
关键词:阿里安全潘多拉实验室丨Janus漏洞丨御城河丨编程语言出现漏洞丨APP追踪定位丨银行APP存在漏洞丨安卓统一推送联盟|AhMyth RAT|HP笔记本
2416 0
+关注
玄学酱
这个时候,玄酱是不是应该说点什么...
文章
问答
文章排行榜
最热
最新
相关电子书
更多
Android组件化实现
立即下载
蚂蚁聚宝Android秒级编译—— Freeline
立即下载
Android开发之多进程架构
立即下载