如何入侵一台已关机的电脑,或者在Intel ME中运行未签名的代码
发布网友
发布时间:2024-10-24 11:28
我来回答
共1个回答
热心网友
时间:2024-10-27 17:30
在近期的欧洲黑帽黑客大会上,来自Positive Technologies公司的研究人员Mark Ermolov和Maxim Goryachy揭示了英特尔管理引擎(Intel Management Engine 11)中存在的安全漏洞,允许攻击者访问目标主机中绝大多数数据和进程。值得注意的是,这一漏洞能够帮助攻击者绕过传统保护机制,对已关机的电脑进行攻击。
英特尔管理引擎(Intel ME)是英特尔公司的专利技术,由整合了平台控制器中心(PCH)和内置周边设备的微控制器构成,负责计算机通信流量。因此,Intel ME几乎能够访问计算机的所有数据。如果攻击者能够在Intel ME上运行第三方代码,将完全入侵目标计算机。研究人员发现,现在有越来越多的人开始关注Intel ME的安全问题,这与该子系统向新硬件架构(x86)和软件平台(修改后的MINIX)过渡有关。x86平台的出现使得研究人员能够利用二进制代码分析工具的全部功能,而此前固件分析相对困难。
研究团队成功地恢复了Huffman编码(未知表)压缩的Intel ME可执行模块表,并创建了专门用于解包镜像的实用工具。通过对可执行模块进行解包,研究团队能够深入研究Intel ME的软件和硬件内部结构,并发现其实并不像想象中那么复杂。
研究中还提到了Intel ME 11的三个已公布的漏洞:环3型Rootkits、Zero-Touch和Silent Bob。环3型Rootkits漏洞允许攻击者向UMA内存特定区域注入代码。Zero-Touch漏洞使AMT认证绕过成为可能。Silent Bob漏洞允许未经授权的用户获取支持vPro技术的目标系统的完全访问权限。
潜在的攻击向量包括本地通信接口(HECI)、网络(仅适用于vPro)、主机内存(UMA)、固件SPI布局和内部文件系统。HECI是一种独立的PCI设备,可以作为主系统与Intel ME之间的数据交换循环缓冲器。网络模块包含大量遗留代码,广泛应用于商业系统。硬件攻击针对SPI接口,通过使用与普通SPI闪存相似但每次访问时发送不同数据的特殊设备,绕过签名验证机制。内部文件系统使用SPI闪存作为主要存储,结构复杂,许多特权进程存储配置文件,成为攻击者的首要目标。研究团队选择了代码模块进行分析,发现只有少数系统进程能够加载和运行这些模块。通过逆向分析,研究团队在负责设备初始化的函数中发现了一个堆缓冲区溢出漏洞。文件未被签名,允许攻击者修改Intel ME固件版本信息。通过缓冲区溢出,攻击者可以绕过堆缓冲区溢出保护机制。绕过机制包括访问线程本地存储(TLS)和利用读取函数获取任意写入原语。可能的漏洞利用向量包括通过特殊HMR-FPO消息向Intel ME特定区域写入数据,利用BIOS漏洞、操作系统或DMA攻击。如果满足特定条件,攻击者能够远程利用漏洞,访问Intel ME中的数据。
研究最后介绍了CVE-2017-5705、CVE-2017-5706和CVE-2017-5707漏洞,分配了INTEL-SA-00086编号,详细描述了漏洞的影响和受影响的产品。