PROLEAD_SW - Probing-Based Software Leakage Detection for ARM Binaries2023
Research Hub B: Eingebettete Sicherheit
RC 6: Next-Generation Implementation Security
A decisive contribution to the all-embracing protection of cryptographicsoftware, especially on embedded devices, is the protection against Side-ChannelAnalysis (SCA) attacks. Masking countermeasures can usually be integrated into thesoftware during the design phase. In theory, this should provide reliable protectionagainst such physical attacks. However, the correct application of masking is anon-trivial task that often causes even experts to make mistakes. In addition tohuman-caused errors, micro-architectural Central Processing Unit (CPU) effects canlead even a seemingly theoretically correct implementation to fail to satisfy thedesired level of security in practice. This originates from different components ofthe underlyingCPUwhich complicates the tracing of leakage back to a particularsource and hence avoids making general and device-independent statements about itssecurity.PROLEADhas recently been presented at CHES 2022 and has originally been developedas a simulation-based tool to evaluate masked hardware designs. In this work, weadaptPROLEADfor the evaluation of masked software, and enable the transfer ofthe already known benefits ofPROLEADinto the software world. These include (1)evaluation of larger designs compared to the state of the art, e.g. a full AdvancedEncryption Standard (AES) masked implementation, and (2) formal verificationunder our new generic leakage model forCPUs. Concretely, we formalize leakages,observed across differentCPUarchitectures, into a generic abstraction model thatincludes all these leakages and is therefore independent of a specificCPUdesign. Ourresulting toolPROLEAD_SWallows to provide a formal statement on the security basedon the derived generic model. As a concrete result, usingPROLEAD_SWwe evaluatedthe security of several publicly available masked software implementations in our newgeneric leakage model and reveal multiple vulnerabilities.