ARM和INTEL等处理器芯片目前被广泛应用于手机等消费类电子以及数据中心和云端等关键设备上。这些芯片提供的“可信执行环境”(如ARM TrustZone,INTEL SGX)等硬件安全技术为需要保密操作(如指纹识别、密码处理、数据加解密、安全认证等)的安全执行提供了有力保障。然而,今天这些所谓的安全处理器也存在着严重的安全隐患。
近日,我院汪东升教授团队发现了ARM和Intel等处理器的电压管理机制存在严重安全漏洞—“骑士”(VolJokey)。攻击者通过该漏洞可突破原有安全区限制,获取核心秘钥、直接运行非法程序。“骑士”可影响全球大量计算设备,且涉及到处理器芯片设计的核心架构,其潜在的影响程度和可能带来的损失巨大。
该工作具体由团队成员吕勇强副研究员指导博士生邱朋飞联合美国马里兰大学屈钢教授等完成。论文成果被安全领域顶级国际会议CCS’19录用。
处理器芯片是122cc太阳集成游戏统的根基,长期以来,大家习惯将精力集中在提升处理器的性能上,对安全问题的关注也往往集中于解决软件的安全问题。但是如果处理器的硬件设计存在漏洞,整个122cc太阳集成游戏统的安全就无法得到保证。
2018年初曝光的 “熔断”(Meltdown)和 “幽灵”(Spectre)漏洞影响了全球大多数处理器芯片,其实在这之前包括IEEE Spectrum等杂志和一些报道也提及了多起有关芯片木马、后门等在军事国防领域引发的重大致命安全事件,硬件安全问题已经从传统的只影响军事国防和专业领域逐渐进入了大众视野。但是,处理器芯片等硬件不同于软件,由于晶体管规模巨大、设计复杂、内部结构不开源、调试和分析难度大,其安全分析、攻击的门槛极高,国内鲜有研究人员做处理器的硬件漏洞挖掘相关工作。
汪东升教授团队依托多年的处理器体系结构研究经验,在广泛分析当前主流处理器的安全特性时发现,隐藏在处理器的动态电源管理单元有安全漏洞, 基于该漏洞(“骑士”)攻击者可有效攻击处理器中的可信执行环境,如ARM TrustZone、Intel SGX,且攻击过程可以完全使用软件在线实现,不需要额外的硬件单元或者线下辅助。“骑士”广泛存在于目前主流处理器芯片中,修复困难,影响面广。
随着半导体技术、超大规模集成电路、计算机体系结构的快速发展,处理器的平均指令吞吐率得到了很大的提高,然而如何降低处理器的能耗一直是一个需要重点考虑的问题,特别是在手机、笔记本、平板电脑等移动设备上。降低处理器的电压和频率可以有效减少处理器的能耗,然而处理器的性能也会下降。为了在处理器性能和功耗之间折衷,包括Intel, AMD和ARM在内的全球主流处理器供应商均在其生产的处理器中嵌入了动态电源管理(Dynamic Voltage and Frequency Scaling, DVFS)单元,用来控制芯片的工作频率和电压。
合适的电压供给是保障处理器正常工作的必要条件,不能完全满足工作负荷的电压会导致处理器中各个硬件单元不能协调运行,从而会出现硬件故障。基于该漏洞可对给定安全程序,如加密算法、身份验证等进行精准的硬件故障注入,同时结合差分分析方法即可获得秘钥等所谓“受安全保护”的保密信息,并突破可信身份验证等系统安全措施。
该工作在多种处理器上进行了验证,可获得安全区内AES加密程序的加密密钥,同时也可成功绕过加载可信应用程序时的RSA签名认证过程,从而将不可信应用程序加载到安全区。
通过“熔断”和“幽灵”漏洞可以获取处理器系统核心数据,相当于撬开了房间的防盗门。而此次发现的“骑士”漏洞可以攻击“可信执行区”,相当于打开了房间内的保险柜。该漏洞由处理器的电源管理特性造成的,软件防御方法不可行,硬件修复往往会影响到动态电源管理单元的正常功能,从而增加处理器的能耗。
“骑士”只是处理器硬件漏洞的冰山一角,应该还有大量漏洞有待挖掘。我国在半导体和芯片设计方面正处于快速发展阶段,应该发挥“后发优势”,尽早进行更全面的芯片体系结构设计考量,在“性能、功耗、安全”的芯片设计三角约束下获得更加合理的解决方案。