一组安全研究员表示,由于忽视了一些PC制造商对Unified Extensible Firmware Interface (UEFI)规范的实施,攻击者可能绕过这些PC上的Windows 8 Secure Boot机制。
今年在拉斯维加斯举行的美国黑帽大会(Black Hat USA)上,研究人员Andrew Furtak、Oleksandr Bazhaniuk和Yuriy Bulygin演示了两次电脑攻击行为,通过避开Secure Boot,在计算机上安装UEFI bootkit。
Secure Boot是UEFI规范的一项功能,只允许在启动序列中加载带有受信任数字签名的软件组件。它设计的目的是专门用于防止像bootkit这样的恶意软件影响启动过程的。
据研究员表示,黑帽大会上展示的攻击行为很可能不是因为Secure Boot本身漏洞导致的,而是因为平台厂商对UEFI的错误实施。
在McAfee工作的Bulygin表示,第一个漏洞存在,是因为某些厂商并未恰当地保护自己的固件,从而让攻击者有机会修改负责执行Secure Boot的代码。
这个漏洞主要是篡改平台密钥——所有Secure Book签名检查核心的根密钥,但是为了使它工作需要在内核模式下执行和一部分操作系统的最高权限。
这在某种程度上限制了攻击行为,因为远程攻击者必须首先设法找到一种方法,在目标计算机的内核模式下执行代码。
研究人员在一台华硕VivoBokk Q200E笔记本电脑上演示了核心模式溢出漏洞,据Bulygin称,一些华硕台式机主板也受到了影响。
华硕发布了针对某些主板的BIOS升级,但是并没有针对VivoBook笔记本电脑的。他认为,越来越多的VivoBook型号可能容易受到攻击。
华硕并未对此作出回应。
研究人员演示的第二个漏洞,可以在用户模式下进行,这意味着攻击者只需要利用像Java、Adobe Flash和微软Office等常用应用中的漏洞,就可以获得系统的代码执行权。
研究人员拒绝透露关于这种攻击的任何技术细节,也没有罗列可能受影响的厂商产品,因为目标漏洞是最近才发现的。
Bulygin表示,核心模式溢出漏洞的问题是在一年前发现并反馈给给平台厂商的。他说,从某种程度上说,在经过足够的时间之后,公众需要对此有所了解。
其他一些可能被用于避过Secure Boot的问题也已经发现,微软和UEFI论坛正在进行行业标准,管理规范的协调。
微软在邮件声明中这样写道:“微软正在与合作伙伴一起,帮助确保Secure Boot为我们的客户提供出色的安全体验。”
尽管这些厂商的实施有问题,但是Secure Boot仍然是一个大的进步。现在为了安装bootkit,攻击者首先需要找到能允许他们避过Secure Boot的漏洞,而在传统平台上没有什么能阻止的了他们。