Verifying Redundant-Check Based Countermeasures: A Case Study

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

To thwart fault injection based attacks on critical embedded systems, designers of sensitive software use redundancy based countermeasure schemes. In some of these schemes, critical checks (i.e. conditionals) in the code are duplicated to ensure that an attacker cannot bypass such a check by flipping its result in order to get to a protected point (corresponding e.g. to a successful authentication or code integrity verification). This short paper presents a source-code-level verification technique of the correct implementation of such countermeasures. It is based on code instrumentation and deductive verification. The proposed technique was implemented in a tool prototype and evaluated on a real-life case study: the bootloader module of a secure USB storage device called WooKey, supposed to be resistant to fault injection attacks. We were able to prove the correctness of almost all redundant-check countermeasures in the module except two, and found an error in one of the unproven ones.

Original languageEnglish
Title of host publicationProceedings of the 37th ACM/SIGAPP Symposium on Applied Computing, SAC 2022
PublisherAssociation for Computing Machinery
Pages1849-1852
Number of pages4
ISBN (Electronic)9781450387132
DOIs
Publication statusPublished - 25 Apr 2022
Externally publishedYes
Event37th ACM/SIGAPP Symposium on Applied Computing, SAC 2022 - Virtual, Online
Duration: 25 Apr 202229 Apr 2022

Publication series

NameProceedings of the ACM Symposium on Applied Computing

Conference

Conference37th ACM/SIGAPP Symposium on Applied Computing, SAC 2022
CityVirtual, Online
Period25/04/2229/04/22

Keywords

  • deductive verification
  • fault injection attacks
  • frama-C verification platform
  • software countermeasures

Fingerprint

Dive into the research topics of 'Verifying Redundant-Check Based Countermeasures: A Case Study'. Together they form a unique fingerprint.

Cite this