现代计算机中广泛使用的统一可扩展固件接口 ( UEFI ) 规范的开源参考实现的 TCP/IP 网络协议栈中已披露了多个安全漏洞。
这九个问题被 Quarkslab统称为 PixieFail ,存在于 TianoCore EFI 开发套件 II ( EDK II ) 中,可被利用来实现远程代码执行、拒绝服务 (DoS)、DNS 缓存中毒和敏感信息泄露。
AMI、Intel、Insyde 和 Phoenix Technologies 的UEFI 固件(负责启动操作系统)受到了这些缺陷的影响。
EDK II 整合了自己的 TCP/IP 堆栈(称为NetworkPkg),以在初始预启动执行环境(PXE,发音为「pixie」)阶段启用网络功能,从而允许在没有正在运行的操作系统的情况下执行管理任务。
换句话说,它是一个客户端-服务器接口,可从其网络接口卡 (NIC)启动设备,并允许管理员远程配置和启动尚未加载操作系统的联网计算机。
PXE 代码作为 UEFI 固件的一部分包含在主板上或 NIC 固件只读存储器 (ROM) 中。
Quarkslab 在 EDKII 的 NetworkPkg 中发现的问题包括溢出错误、越界读取、无限循环以及使用弱伪随机数生成器 ( PRNG ),这些问题会导致 DNS 和 DHCP 中毒攻击、信息泄露、拒绝服务、 IPv4和IPv6层的数据插入攻击。
缺陷列表如下——
CERT 协调中心 (CERT/CC)在一份公告中表示:「这些漏洞的影响和可利用性取决于特定的固件版本和默认 PXE 启动配置。」
「本地网络内的攻击者(在某些情况下是远程攻击者)可以利用这些弱点来执行远程代码、发起 DoS 攻击、进行 DNS 缓存中毒或提取敏感信息。」