骇客入侵史很大程度是反复来回的攻防游戏,攻击者设计某种入侵系统的手法,防御者接着建构防止的反制之举,然后骇客再设计出可规避系统安全机制的新手法。15 日,英特尔(Intel)宣布计划在 CPU 直接植入全新安全防护机制,防止任何会在有弱点电脑执行恶意程式码的攻击。
控制流强制技术(Control-Flow Enforcement Technology,CET)代表处理器执行来自 Web 浏览器、电子邮件用户端或 PDF 阅读器等应用程序指令方式的根本性改变。由英特尔和微软共同开发的 CET 技术,旨在阻止称为“返回导向程式设计”(Return-Oriented Programming,ROP)的攻击技术,这种技术被骇客专门用来规避软件开发人员早在 10 多年前就导入的反漏洞入侵机制。虽然英特尔 2016 年首次发表 CET 实作,但 15 日表示,旗下 Tiger Lake CPU 微架构将率先内建 CET 防护功能。
ROP 可说是软件漏洞入侵者对诸如可执行空间保护(Executable Space Protection,ESP)和位址空间配置随机载入(Address Space Layout Randomization,ASLR)之类防护机制的反制之举,这些防护机制不到 20 年前就内建于 Windows、macOS 和 Linux 等操作系统。透过系统内存改变杜绝恶意程式码执行,使防御措施大幅降低软件漏洞入侵可能造成的破坏性。即使成功引发缓冲区溢位或锁定其他漏洞,漏洞入侵攻击也只会导致某系统或应用程序停摆,不会对关键系统造成危害。
ROP 能让攻击者重新获得制高点。与使用攻击者编写的恶意程式码不同,ROP 攻击能将早已配置到内存堆叠的良性应用程序与操作系统常式的功能重新定义。ROP 的“返回”(Return)指的就是 RET 转移指令(为重新排序程式码流的核心)使用。
CET 视为目前侦测并阻止 ROP 攻击的最有效防御技术
安全公司 CrowdStrike Windows 资深安全专家暨工程副总裁 Alex Ionescu 指出,如果良性程式就好比由乐高积木按特定顺序建造的建物,那么 ROP 也会使用相同的乐高积木,只不过会以不同顺序建构。如此一来,ROP 会将原本的建物改成太空船。因此技术使用被允许执行的内存常驻程式码,所以能规避反恶意软件的防御机制。
CET 防护技术会在 CPU 做一些变更,进而建立一个新堆叠(称为控制堆叠)。攻击者无法修改此堆叠,也不能从中储存任何资料,只会储存早在堆叠里的乐高积木返回位址。因此,即使攻击者破坏资料堆叠的返回位址,控制堆叠也会保留正确的返回位址。处理器会进行 ROP 侦测并停止相关程式码执行。
“虽然目前没有有效抵御 ROP 攻击的缓解软件,但 CET 却是目前侦测和阻止此类漏洞的极有效防御技术,”Ionescu 表示:“以前,操作系统和安全解决方案必须猜测或推断已发生 ROP 攻击,或者执行鉴识分析,或侦测该漏洞攻击的第二阶封包负载/效应。”
CET 并非仅限于 ROP 防御而已。CET 提供了许多额外的防护,包括可阻止像是跳转导向程式设计(Jump Oriented Programming,JOP)及呼叫导向程式设计(Call Oriented Programming,COP)等漏洞入侵手法的防护机制。不论如何,ROP 已成为 CET 最关注的目标之一。
英特尔 CPU 早已内建 SGX 与 CSME 等安全功能,但成效不佳且漏洞百出
英特尔早在 CPU 内建其他安全功能,但成效不佳,其中一个安全功能就是英特尔的软件防护扩展(Software Guard eXtension,SGX),特别在受保护的内存切出一块专供安全机敏性功能(如建立加密金钥)使用的安全区块。 英特尔还有另一个安全外挂功能叫聚合式安全与管理引擎(Converged Security and Management Engine,CSME),是 CPU 和芯片组内部子系统,能执行一系列机敏性功能,包括用于硅晶型加密(Silicon-based Encryption)的可信赖平台模式(Trusted Platform Module,TPM)、统一可延伸固件界面(UEFI)BIOS 固件身份认证,以及 Microsoft System Guard 和 BitLocker。
但上述两个 CPU 常驻型安全机制不断发现安全漏洞,导致多年来饱受各种恶意攻击威胁,且上周才揭露最新的 SGX 漏洞。不过,一些安全专家对全新 CET 防护技术抱持正面期待。
随着支援 CET 技术 CPU 正式推出,提供的保护功能只会在处理器运行支援 CET 功能的操作系统时才会起作用。所幸,上个月发表的 Windows 10 2004 版提供支援。但英特尔仍然没有透露 Tiger Lake CPU 的确切发布日期。 虽然 CET 技术不失为今后防御者的重要新工具,但 Ionescu 和研究员同事 Yarden Shafir 已设计出规避 CET 的方法。
- Intel will soon bake anti-malware defenses directly into its CPUs
(首图来源:英特尔)