UEFI主席:我们需要更多的关键供应商

UEFI论坛的负责人Mark Doran解释了UEFI是如何工作的,并解决了围绕微软使用UEFI安全引导的批评

自从引入以来,统一可扩展固件接口已经创建有相当多的争议。UEFI是通过一个行业联盟创建的,它是BIOS的一个改进步骤,BIOS是在启动计算机初始化所有组件和加载操作系统时长期使用的简单固件。在它的高级特性中,UEFI包括一个称为安全引导的选项,它要求在操作系统启动之前或关闭之后使用的任何软件都必须经过证书颁发机构的签名。

对于Windows 8,微软要求oem(原始设备制造商)在其机器中支持安全引导。这立即给其他操作系统带来了问题,最明显的是基于linux的许多用户通常会在机器上安装Windows来代替Windows。许多人认为微软的安全引导是反竞争行为因为它使得用户在启用了安全引导的机器上安装其他操作系统更加困难。

IDG新闻服务采访了UEFI论坛主席Mark Doran,他也是英特尔的高级首席工程师,关于UEFI做了什么,如何安全启动,以及微软从使用UEFI得到的反应。

IDGNS:什么是UEFI?它和BIOS有什么不同?

Doran: BIOS初始化机器组件,并将机器的控制权转移到操作系统。UEFI规范的实现也做同样的事情。但是对于UEFI,我们想要发展平台的状态,以及支持它的固件。

我们希望将固件开发与操作系统分离开来。所以如果我们改变固件连接的方式,它应该对操作系统是透明的。这让我们能够检查和重新设计所有实现前操作系统环境的代码。因此,操作系统现在要理解影响引导的平台细节,所做的工作要比以前少得多。

在传统的BIOS中,您不能假设操作系统知道什么或不知道什么。它初始化平台中的所有东西,因为操作系统可能需要它。在UEFI规范中,我们要求操作系统通过一个持久的环境变量指示如何引导。通常,操作系统在运行后进行自己的设备初始化。因此,作为避免重复工作的一种方法,在pre-OS中,所有的平台触摸都是它需要引导的一组设备。

什么是UEFISecure引导选项吗?

多兰:我们想要找到一种方法来保护这个平台在操作系统出现之前不受攻击。

在操作系统运行之前,已经有很多人试图引入(代码)来篡夺对平台的控制权的记录。操作系统认为它是在一个原始的平台上,而实际上在平台和操作系统之间潜伏着恶意软件。它可以以虚拟机的形式存在于操作系统和硬件之间,或者恶意软件可以是一个引导加载程序,将恶意软件引入到预操作系统空间中。

我们希望找到一种方法,确保只有可信任的代码才能在预操作系统空间中运行。与主板ROM,你必须小心什么得到更新那里。您还必须确保在重置向量和操作系统加载程序的入口点之间的路径上执行的任何代码都是可信的。

我们要求插件卡(制造商)用平台知道的密钥在驱动图像上签名。因此,当操作系统安装程序指示它将此卡用于引导设备时,平台可以检查卡上的UEFI驱动程序,看看它是否已签名。你可以对它有一定的信任。

使用UEFI,平台存储一组众所周知的公钥,它可以在一个典型的加密签名检查例程中使用这些公钥。因此,当一个选项ROM(可以被系统的ROM调用使插件卡可用作引导设备的预操作系统代码)出现时,平台可以使用公钥来与驱动程序上的签名进行比较。

实际上,固件携带已知密钥的公钥信息。它用于在每次运行平台时检查选项ROM。加载器也是一样。一旦你进入操作系统,UEFI确保控制被交给用户想要的加载程序,而不是恶意软件加载程序。安全引导为您提供了一个保证,即您将要运行的二进制包——ROM选项或引导加载程序——来自它所说的来源。

其想法是拥有一个在其生命周期的所有阶段都更能抵抗攻击的平台。这就是我们试图通过安全引导实现的目标。它为操作系统提供了一个更加坚实的基础。

IDGNS:如果我是一个操作系统提供者,我如何获得一个签名来匹配固件中的一个公钥?

Doran:操作系统供应商可以对如何使用该机制做出许多不同的选择。

一个平台根本不能进行签名检查,所以它不会启用安全引导特性。另一方面,它只能在操作系统和重置向量之间运行受信任的代码,确保一切都是通过密钥安装在平台上的。

因此,如果你有一个操作系统,你想要从这个前操作系统的恶意软件保护中获益,你想要登陆的系统是安全的,可以启动的,你想要确保用来签署你想要运行的代码的密钥在平台上。

有两种方法。任何操作系统供应商都可以要求系统制造商预装它的密钥。您也可以用一组密钥签名[您的选项ROM],这些密钥通常会出现在大多数或所有系统中。

UEFI论坛研究了建立证书颁发机构和允许我们分发密钥的门户的可能性,但结果是这将是一个困难和昂贵的提议。

我们一直在寻找现有的证书权威播放器来帮助我们解决这个问题。到目前为止,只有一家公司注册了。微软同意建立一个这样的门户,供所有访问者使用一组众所周知的、公开的、并提供给系统制造商的密钥对图像进行签名。因此,大多数平台至少拥有Windows和微软运行的UEFI证书权威的密钥。

至少再获得一个证书颁发机构就好了,因此我们将有多个来源。我和很多人谈过。

在平台上获取密钥的第三种选择是滚动您自己的密钥。如果您是一个垂直集成的商店,并且您正在构建自己的平台、固件和操作系统,并且希望使用我们的基础设施,那么您可以使用自己的密钥,将其放入自己的固件中,并使用它签署自己的引导加载程序。

开源操作系统的开发者也可以做同样的事情。找一个能够安装密钥的平台——很多平台都是这样的——然后通过安装自己的平台密钥和自签名自己的映像,成为平台所有者。对于普通用户,自签名可能有点技术上的复杂。但是那些擅长开源操作系统的人对此可能没有问题。

IDGNS:为什么恶意软件制造者不能生成他们自己的密钥?

Doran:它需要一个私钥来生成签名[公钥]。我们只把公钥放在固件中,所以我们不会让坏人有办法生成他们自己的签名。您必须到签名机构才能成功地对映像进行签名。

当然,大多数公司都是靠声誉交易的,因此,如果出于某种原因,其中一家公司的一个坏角色产生了一个签名,并将一种进入生态系统的产品推出门外,这对公司来说将是非常糟糕的。但它很快就会被识别出来。

我们在规范中定义的部分机制包括撤销。固件中有一个所谓的白名单,它是代表签名权限的密钥集合。还有一个黑名单,上面有我们知道是坏演员的照片。因此,当系统[遇到]一个坏映像时,它不会运行它。如果恶意软件泄露,我们有办法快速处理,无需对固件进行重大更新。

IDGNS:微软已经要求硬件合作伙伴使用安全引导,而在这样做的同时,它被指控试图锁定市场上的其他操作系统。你预料到这个问题了吗?

多兰:我并不奇怪人们会用批评的眼光来看待这件事,不过我认为这里有很多烟,但没有很多火。

如果你读了微软发布的关于为Windows 8构建平台的要求,它实际上指定了终端用户必须能够关闭安全引导作为一个特性。绝大多数具有安全引导的通用平台都有办法禁用它。而且很多人都有安装新钥匙的方法。当你得到这些东西时,你有一个选择。

约押·杰克逊报道企业软件和通用技术的突发新闻IDG新闻服务。在推特上关注约押@Joab_Jackson。约押的电子邮件地址是Joab_Jackson@idg.com

加入网络世界社区有个足球雷竞技app脸谱网LinkedIn对最重要的话题发表评论。

版权©2013Raybet2

工资调查:结果在