CRAFT: Characterizing and Root-Causing Fault Injection Threats at Pre-Silicon
Arsalan Ali Malik, Harshvadan Mihir, Aydin Aysu
TL;DR
The paper tackles fault injection attacks in embedded systems and proposes CRAFT, a framework that bridges pre-silicon analysis with post-silicon validation to uncover, characterize, and root-cause FIA vulnerabilities. Using a RISC-V cv32e40x core, it reveals novel clock-glitch exploits that cause instruction skips and illegal control-flow mid-execution, plus a silent-fault window, and shows a dramatic reduction in post-silicon testing space (97.31%) by guiding hardware experiments from pre-silicon results. It details a seven-step process including fault parameter selection, attack-surface exploration, fault simulation, RAT-based prioritization, targeted instrumentation, root-cause tracing, and cross-stage validation, with case studies on AI/ML workloads (eBNN) and FPGA validation. The findings underscore the value of integrated design-time analysis for secure hardware, offer countermeasure directions (e.g., integrity checks on key pipeline registers), and argue for general applicability to other ISAs and architectures.
Abstract
Fault injection attacks (FIA) pose significant security threats to embedded systems as they exploit weaknesses across multiple layers, including system software, instruction set architecture (ISA), microarchitecture, and physical hardware. Early detection and understanding of how physical faults propagate to system-level behavior are essential to safeguarding cyberinfrastructure. This work introduces CRAFT, a framework that combines pre-silicon analysis with post-silicon validation to systematically uncover and analyze fault injection vulnerabilities. Our study, conducted on a RISC-V soft-core processor (cv32e40x) reveals two novel vulnerabilities. First, we demonstrate a method to induce instruction skips by glitching the clock (single-glitch attack), which prevents critical values from being loaded from memory, thus disrupting program execution. Second, we show a technique that converts a fetched legal instruction into an illegal one mid-execution, diverting control flow in a manner exploitable by attackers. Notably, we identified a specific timing window in which the processor fails to detect these illegal control-flow diversions, allowing silent, undetected corruption of the program state. By simulating 9248 FIA scenarios at pre-silicon and conducting root-cause analysis of the RISC-V pipeline, we trace the faults to a previously unreported vulnerability in a pipeline register shared between the instruction fetch and decode stages. Our approach reduced the search space for post-silicon experiments by 97.31%, showing pre-silicon advantages for post-silicon testing. Finally, we validate our identified exploit cases on real hardware (FPGA).
