Authors:
J. Todd McDonald
1
;
Ramya K. Manikyam
1
;
Sébastien Bardin
2
;
Richard Bonichon
3
and
Todd R. Andel
1
Affiliations:
1
Department of Computer Science, University of South Alabama, Mobile, AL, U.S.A.
;
2
Université Paris-Saclay, CEA, LIST, France
;
3
Nomadic Labs, France
Keyword(s):
Software Protection, MATE Attacks, Virtualization, Symbolic Analysis.
Abstract:
Software companies typically embed one or more secrets in their programs to protect their intellectual property (IP) investment. These secrets are most often processed in code through evaluation of point functions, where only the correct password, PIN, or registration/activation code will authorize an end-user to legally install or use a product. Man-at-the-End (MATE) attacks can break assumptions of program security to find embedded secrets because they involve legitimate software owners who have complete access to the software and its execution environment. In this research, we present a novel approach to software MATE protection that leverages gate-level hardware representation, namely software-based hardware abstraction (SBHA). As a new proposed form of virtualization for software protection, SBHA demonstrates a light overhead – especially compared to much costlier traditional virtualization transformations, while completely defeating almost all symbolic execution-based attackers
that were studied. Overall, SBHA bridges the gap between hardware and software protection, paving the way for future developments.
(More)