Title
Hiding a fault enabled virus through code construction
Abstract
Smart cards are very secure devices designed to execute applications and store confidential data. Therefore, they become the target of many hardware and software attacks that aim to bypass their embedded security mechanisms in order to gain access to the sensitive stored data. Recently, a new kind of attacks called combined attacks has appeared. They aim to induce perturbations in the application’s execution environment. Thus, correct and legitimate application can be dynamically modified to become a hostile one after being loaded in the card using a fault injection. In this paper, we treat the problem from another angle: how to design an innocent looking code in such a way that it becomes intentionally hostile after being activated by a fault injection? We present an original approach of backward code construction based on constraints satisfaction and a tree traversal algorithm. After that, we propose a way to optimize the search process by introducing heuristics for a faster convergence towards more realistic solutions. This approach is implemented in a Trace Generator tool. Thereafter, we evaluate its capacity to generate the required solutions while giving a proof-of-concept of the code desynchronization technique.
Year
DOI
Venue
2020
10.1007/s11416-019-00340-z
Journal of Computer Virology and Hacking Techniques
Keywords
DocType
Volume
Java Card bytecode, Fault injection, Constraint satisfaction problem, Tree traversal, Backward code construction, Code desynchronization
Journal
16
Issue
ISSN
Citations 
2
2263-8733
0
PageRank 
References 
Authors
0.34
0
3
Name
Order
Citations
PageRank
Samiya Hamadouche100.34
Jean-Louis Lanet238143.44
Mohamed Mezghiche32511.68