Paper 2023/1913

Breaking RSA Authentication on Zynq-7000 SoC and Beyond: Identification of Critical Security Flaw in FSBL Software

Prasanna Ravi, Temasek Labs@NTU, Singapore
Arpan Jati, Temasek Labs@NTU, Singapore
Shivam Bhasin, Temasek Labs@NTU, Singapore
Abstract

In this report, we perform an in-depth analysis of the RSA authentication feature used in the secure boot procedure of Xilinx Zynq-7000 SoC device. The First Stage Boot Loader (FSBL) is a critical piece of software executed during secure boot, which utilizes the RSA authentication feature to validate all the hardware and software partitions to be mounted on the device. We analyzed the implementation of FSBL (provided by Xilinx) for the Zynq-7000 SoC and identified a critical security flaw, whose exploitation makes it possible to load an unauthenticated application onto the Zynq device, thereby bypassing RSA authentication. We also experimentally validated the presence of the vulnerability through a Proof of Concept (PoC) attack to successfully mount an unauthenticated software application on an RSA authenticated Zynq device. The identified flaw is only present in the FSBL software and thus can be easily fixed through appropriate modification of the FSBL software. Thus, the first contribution of our work is the identification of a critical security flaw in the FSBL software to bypass RSA authentication. Upon bypassing RSA authentication, an attacker can mount any unauthenticated software application on the target device to mount a variety of attacks. Among the several possible attacks, we are interested to perform recovery of the encrypted bitstream in the target boot image of the Zynq-7000 device. To the best of our knowledge, there does not exist any prior work that has reported a practical bitstream recovery attack on the Zynq-7000 device. In the context of bitstream recovery, Ender et al. in 2020 proposed the Starbleed attack that is applicable to standalone Virtex-6 and 7-series Xilinx FPGAs. The design advisory provided by Xilinx as a response to the Starbleed attack claims that the Zynq-7000 SoC is resistant “due to the use of asymmetric and/or symmetric authentication in the boot/configuration process that ensures configuration is authenticated prior to use". Due to the security flaw found in the FSBL, we managed to identify a novel approach to mount the Starbleed attack on the Zynq-7000 device for full bitstream recovery. Thus, as a second contribution of our work, we present the first practical demonstration of the Starbleed attack on the Zynq-7000 SoC. We perform experimental validation of our proposed attacks on the PYNQ-Z1 platform based on the Zynq-7000 SoC.

Metadata
Available format(s)
PDF
Category
Attacks and cryptanalysis
Publication info
Preprint.
Keywords
Secure Boot BypassRSA AuthenticationZynq-7000 SoCFirst Stage Boot LoaderStarbleed Attack
Contact author(s)
PRASANNA RAVI @ ntu edu sg
arpan jati @ ntu edu sg
sbhasin @ ntu edu sg
History
2023-12-15: approved
2023-12-13: received
See all versions
Short URL
https://ia.cr/2023/1913
License
Creative Commons Attribution
CC BY

BibTeX

@misc{cryptoeprint:2023/1913,
      author = {Prasanna Ravi and Arpan Jati and Shivam Bhasin},
      title = {Breaking RSA Authentication on Zynq-7000 SoC and Beyond: Identification of Critical Security Flaw in FSBL Software},
      howpublished = {Cryptology ePrint Archive, Paper 2023/1913},
      year = {2023},
      note = {\url{https://eprint.iacr.org/2023/1913}},
      url = {https://eprint.iacr.org/2023/1913}
}
Note: In order to protect the privacy of readers, eprint.iacr.org does not use cookies or embedded third party content.