sMVX: Multi-Variant Execution on Selected Code Paths
Multi-Variant Execution (MVX) is an effective way to detect memory corruption vulnerabilities, intrusions, or live software updates. A traditional MVX system concurrently runs multiple copies of functionally identical, layout-different program variants. Therefore, a typical memory corruption attack that forges pointers can succeed on at most one variant, leading the other variant(s) to crash. The replicated execution adds software security and reliability but also brings multiple times of CPU and memory usage.
Authors
- Joo-Young Jang (ORCID: https://orcid.org/0009-0006-1117-3689)
- Binoy Ravindran (ORCID: https://orcid.org/0000-0002-8663-739X)
- SengMing Yeoh (ORCID: https://orcid.org/0009-0007-2707-1641)
- Xiaoguang Wang (ORCID: https://orcid.org/0000-0001-5055-4552)
Institutions
- University of Illinois Chicago (US)
- Virginia Tech (US)
Publication Details
- Published
- 2024-11-27
- DOI
- https://doi.org/10.1145/3652892.3654794
- Citations
- 3
- Primary Topic
- Security and Verification in Computing
- Type
- article
- Field-Weighted Citation Impact
- 1.04
Funders
- National Science Foundation
- Office of Naval Research