Interdiction in Practice – Hardware Trojan Against a High-Security USB Flash Drive

Pawel Swierczynski, Marc Fyrbiak, Philipp Koppe, Amir Moradi, Chris­tof Paar

Journal of Cryptographic Engineering, Springer, June 2016.


Abstract

As part of the revelations about the NSA activities, the notion of interdiction has become known to the public: the interception of deliveries to manipu- late hardware in a way that backdoors are introduced. Manipulations can occur on the firmware or at hard- ware level. With respect to hardware, FPGAs are par- ticular interesting targets as they can be altered by manipulating the corresponding bitstream which con- figures the device. In this paper, we demonstrate the first successful real-world FPGA hardware Trojan in- sertion into a commercial product. On the target de- vice, a FIPS-140-2 level 2 certified USB flash drive from Kingston, the user data is encrypted using AES-256 in XTS mode, and the encryption/decryption is processed by an off-the-shelf SRAM-based FPGA. Our investiga- tion required two reverse-engineering steps, related to the proprietary FPGA bitstream and to the firmware of the underlying ARM CPU. In our Trojan insertion scenario the targeted USB flash drive is intercepted be- fore being delivered to the victim. The physical Tro- jan insertion requires the manipulation of the SPI flash memory content, which contains the FPGA bitstream as well as the ARM CPU code. The FPGA bitstream manipulation alters the exploited AES-256 algorithm in a way that it turns into a linear function which can be broken with 32 known plaintext-ciphertext pairs. After the manipulated USB flash drive has been used by the victim, the attacker is able to obtain all user data from the ciphertexts. Our work indeed highlights the security risks and especially the practical relevance of bitstream modification attacks that became realistic due to FPGA bitstream manipulations.

[DOI] [pdf]

Tags: AES, FPGA security, hardware Trojan, real-world attack