实践中的拦截攻击——针对高安全性 USB 闪存盘的硬件木马
密码学与安全
2019-10-03 v1
摘要
作为有关 NSA 活动揭秘的一部分,拦截(interdiction)这一概念已为公众所知:即拦截交付过程以操纵硬件从而引入后门。操纵可发生于固件层或硬件层。就硬件而言,FPGA 是特别有趣的目标,因为可通过篡改配置器件的相应比特流来改动它们。在本文中,我们展示了首个针对商业产品的成功真实世界 FPGA 硬件木马植入。在目标设备上,即金士顿(Kingston)一款通过 FIPS-140-2 二级认证的 USB 闪存盘,用户数据使用 XTS 模式的 AES-256 加密,且加解密由一款现成的基于 SRAM 的 FPGA 处理。我们的调查需要两个逆向工程步骤,分别涉及专有的 FPGA 比特流与底层 ARM CPU 的固件。在我们的木马植入场景中,目标 USB 闪存盘在交付给受害者之前被拦截。物理木马植入需要篡改 SPI 闪存内容,其中包含 FPGA 比特流以及 ARM CPU 代码。对 FPGA 比特流的篡改将所利用的 AES-256 算法改变为一种线性函数,可用 32 个已知明文-密文对攻破。在受害者使用被篡改的 USB 闪存盘后,攻击者能够从密文中获取所有用户数据。我们的工作确实凸显了由于 FPGA 比特流篡改而成为现实的比特流修改攻击的安全风险,尤其是其实际相关性。
引用
@article{arxiv.1910.00947,
title = {Interdiction in Practice -- Hardware Trojan Against a High-Security USB Flash Drive},
author = {Pawel Swierczynski and Marc Fyrbiak and Philipp Koppe and Amir Moradi and Christof Paar},
journal= {arXiv preprint arXiv:1910.00947},
year = {2019}
}