Obelix: Mitigating Side-Channels Through Dynamic Obfuscation
By: Jan Wichelmann , Anja Rabich , Anna P"atschke and more
Potential Business Impact:
Protects secret computer code and data from hackers.
Trusted execution environments (TEEs) offer hardware-assisted means to protect code and data. However, as shown in numerous results over the years, attackers can use side-channels to leak data access patterns and even single-step the code. While the vendors are slowly introducing hardware-based countermeasures for some attacks, others will stay unaddressed. This makes a software-level countermeasure desirable, but current available solutions only address very specific attack vectors or have a narrow leakage model. In this work, we take a holistic view at the vulnerabilities of TEEs and design a tool named Obelix, which is the first to protect both code and data against a wide range of TEE attacks, from cache attacks over single-stepping to ciphertext side-channels. We analyze the practically achievable precision of state-of-the-art single-stepping tools, and present an algorithm which uses that knowledge to divide a program into uniform code blocks, that are indistinguishable for a strong attacker. By storing these blocks and the program data in oblivious RAM, the attacker cannot follow execution, effectively protecting both secret code and data. We describe how we automate our approach to make it available for developers who are unfamiliar with side-channels. As an obfuscation tool, Obelix comes with a considerable performance overhead, but compensates this with strong security guarantees and easy applicability without requiring any expert knowledge.
Similar Papers
Amulet: Fast TEE-Shielded Inference for On-Device Model Protection
Cryptography and Security
Keeps phone AI private, even when offline.
Red Teaming Methodology for Design Obfuscation
Cryptography and Security
Finds hidden secrets in computer chips.
Confidential Computing for Cloud Security: Exploring Hardware based Encryption Using Trusted Execution Environments
Cryptography and Security
Keeps your private computer information safe.