6533b7d5fe1ef96bd1264777
RESEARCH PRODUCT
Hypervisor-based Protection of Code
Amit ReshNezer Jacob ZaidenbergAsaf AlgawiMichael KiperbergRoee Leonsubject
Computer Networks and CommunicationsComputer science0211 other engineering and technologiesCryptography02 engineering and technologysecurityComputer securitycomputer.software_genreEncryptionkryptografiaObfuscationCode (cryptography)tietoturvavirtual machine monitorsSafety Risk Reliability and QualitySystem bustrusted platform moduleta113021110 strategic defence & security studiescode protectioncryptographybusiness.industryHypervisorVirtualizationObfuscation (software)businesscomputerdescription
The code of a compiled program is susceptible to reverse-engineering attacks on the algorithms and the business logic that are contained within the code. The main existing countermeasure to reverse-engineering is obfuscation. Generally, obfuscation methods suffer from two main deficiencies: 1) the obfuscated code is less efficient than the original and 2) with sufficient effort, the original code may be reconstructed. We propose a method that is based on cryptography and virtualization. The most valuable functions are encrypted and remain inaccessible even during their execution, thus preventing their reconstruction. A specially crafted hypervisor is responsible for decryption, execution, and protection of the encrypted functions. We claim that the system can provide protection even if the attacker: 1) has access to the operating system kernel and 2) can intercept communication over the system bus. The evaluation of the system’s efficiency suggests that it can compete with and outperform obfuscation-based methods. peerReviewed
year | journal | country | edition | language |
---|---|---|---|---|
2019-08-01 | IEEE Transactions on Information Forensics and Security |