由德国波鸿鲁尔大学(RUB)从事信息技术安全研究的Horst Görtz研究所和马克斯-普朗克安全与隐私研究所的研究人员共同组成的联合研究小组在研究中发现,现场可编程门阵列(FPGA)芯片中隐藏着一个关键的安全漏洞,并将其称为“Starbleed”,攻击者可通过该漏洞对芯片及其功能实施完全控制。由于该漏洞集成在硬件中,因此只能通过更换芯片来消除安全隐患。
安全研究人员将在2020年8月在美国马萨诸塞州波士顿举行的第29届Usenix安全研讨会上展示其成果,论文已于2020年4月15日发布在Usenix网站上,点击原文链接,可下载。在论文中,研究人员给出了几种应对措施。
研究背景
FPGA目前已用在诸多安全应用中,从云数据中心、移动电话基站到加密的USB棒和工业控制系统,其中包括许多网络空间系统设备。FPGA的安全性是一个至关重要的话题,如果硬件内部存在任何漏洞,都会造成严重后果,甚至是物理伤害。
攻击着眼点
传统芯片采用硬连线,功能固定且单一。FPGA芯片的决定性优势在于其可重编程性,核心是FPGA的基本组件及其互连可以自由编程。FPGA的关键是比特流,即用来对FPGA进行编程的文件。因此,攻击者具有强烈的动机来恢复和操纵比特流,包括克隆设计、窃取IP、修改设计或加入硬件木马等。
为了充分保护它免受攻击,比特流需用加密的方法来进行保护,这一点最为重要,为此,FPGA厂商推出了比特流加密技术,来进行认证和保密。过去也提出过多种针对比特流加密的技术,如旁路分析和探测,这些攻击需要复杂的设备和相当的技术专长。
核心突破
为了解决加密的问题,研究小组利用了FPGA的核心属性:可重编程的可能性,这是由FPGA本身的更新和回退(fallback)机制来实现,这个功能本身也暴露了其弱点和通路。研究人员利用一个可将加密后比特流零散泄露出去的设计缺陷,能够在配置过程中操纵加密后的比特流,将其解密后的内容重定向到WBSTAR配置寄存器中,在复位后可以读出。
此次进展
研究人员发现了一种新型针对赛灵思(Xilinx)公司7系列(和Virtex-6)比特流加密的低成本的攻击方法,成功地解密了受保护的比特流,获得了对文件内容的访问权,并对其进行了修改,导致认证和保密能力完全丧失。
在该攻击中,FPGA被用作解密重要工具,且只需要访问一个配置接口,不需要任何复杂的工具,并且依据目标系统的不同,甚至可以远程启动。
安全隐患
可重编程芯片的优势变成了劣势,如科学家们在研究工作中所显示的,将带来严重的后果。研究人员解释说:“如果攻击者获得了对比特流的访问权,将会获得对FPGA的完全控制权。比特流中包含的知识产权可以被窃取,也有可能通过操纵比特流向FPGA中插入硬件木马。由于安全漏洞位于硬件本身,所以只能通过更换芯片来弥补。虽然需要详细的知识,但最终可以远程进行攻击--攻击者甚至不需要对FPGA进行物理访问。”
影响范围
Starbleed漏洞影响到了Xilinx公司的四大7系列FPGA,包括Spartan、Artix、Kintex和Virtex,以及之前的Virtex-6系列,覆盖了Xilinx公司大部分FPGA产品。
研究人员表示已向Xilinx公司报告了该漏洞,并在随后漏洞披露过程中进行了密切合作。该漏洞也基本不可能出现在该公司的最新产品系列中。Xilinx公司还将在其网站上为受影响客户公布信息。(但截至目前并未看到Xilinx的公开回应)。
Ruhr-University Bochum. "Critical 'starbleed' vulnerability in FPGA chips identified." ScienceDaily. ScienceDaily, 16 April 2020. <www.sciencedaily.com/releases/2020/04/200416135839.htm>.
https://techxplore.com/news/2020-04-critical-starbleed-vulnerability-fpga-chips.html
联系客服