USENIX Security2018Top-tier venue
HeapHopper: Bringing Bounded Model Checking to Heap Implementation Security
Moritz Eckert, Antonio Bianchi, Ruoyu Wang, Yan Shoshitaishvili, Christopher Kruegel, Giovanni Vigna
Abstract
Heap metadata attacks have become one of the primary ways in which attackers exploit memory corruption vulnerabilities. While heap implementation developers have introduced mitigations to prevent and detect corruption, it is still possible for attackers to work around them. In part, this is because these mitigations are created and evaluated without a principled foundation, resulting, in many cases, in complex, inefficient, and ineffective attempts at heap metadata defenses. In this paper, we present HEAPHOPPER, an automated approach, based on model checking and symbolic execution, to analyze the exploitability of heap implementations in the presence of memory corruption. Using HEAPHOPPER, we were able to perform a systematic analysis of different, widely used heap implementations, finding surprising weaknesses in them. Our results show, for instance, how a newly introduced caching mechanism in ptmalloc (the heap allocator implementation used by most of the Linux distributions) significantly weakens its security. Moreover, HEAPHOPPER guided us in implementing and evaluating improvements to the security of ptmalloc, replacing an ineffective recent attempt at the mitigation of a specific form of heap metadata corruption with an effective defense.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext c9880f83-7aa4-4942-a908-85090d92bc1eCited by top-tier papers15
- I See Dead µops: Leaking Secrets via Intel/AMD Micro-Op CachesXida Ren, Logan Moody, Mohammadkazem Taram, Matthew Jordan et al.ISCA 2021 · 59 citations
- Gollum: Modular and Greybox Exploit Generation for Heap Overflows in InterpretersSean Heelan, Tom Melham, Daniel KroeningCCS 2019 · 50 citations
- HEAPSTER: Analyzing the Security of Dynamic Allocators for Monolithic Firmware ImagesFabio Gritti, Fabio Pagani, Ilya Grishchenko, Lukas Dresel et al.S&P 2022 · 31 citations
- CHEx86: Context-Sensitive Enforcement of Memory Safety via Microcode-Enabled CapabilitiesRasool Sharifi, Ashish VenkatISCA 2020 · 28 citations
- MAZE: Towards Automated Heap Feng ShuiYan Wang, Chao Zhang, Zixuan Zhao, Bolun Zhang et al.USENIX Security 2021 · 25 citations
Builds on4
- SOK: (State of) The Art of War: Offensive Techniques in Binary AnalysisYan Shoshitaishvili, Ruoyu Wang, Christopher Salls, Nick Stephens et al.S&P 2016 · 1,085 citations
- FreeGuard: A Faster Secure Heap AllocatorSam Silvestro, Hongyu Liu, Corey Crosser, Zhiqiang Lin et al.CCS 2017 · 71 citations
- Automatic Heap Layout Manipulation for ExploitationSean Heelan, Tom Melham, Daniel KroeningUSENIX Security 2018 · 62 citations
- Your Exploit is Mine: Automatic Shellcode Transplant for Remote ExploitsTiffany Bao, Ruoyu Wang, Yan Shoshitaishvili, David BrumleyS&P 2017 · 56 citations
Related papers
- Melting the Flesh of PHP's Memory HardeningYifan Wu, Xiaochuan Yu, Zhiyun QianUSENIX Security 2026
- Automatic Techniques to Systematically Discover New Heap Exploitation PrimitivesInsu Yun, Dhaval Kapil, Taesoo KimUSENIX Security 2020
- HardsHeap: A Universal and Extensible Framework for Evaluating Secure AllocatorsInsu Yun, Woosun Song, Seunggi Min, Taesoo KimCCS 2021 · 10 citations
- SeaK: Rethinking the Design of a Secure Allocator for OS KernelZicheng Wang, Yicheng Guang, Yueqi Chen, Zhenpeng Lin et al.USENIX Security 2024 · 1 citation
- CAMP: Compiler and Allocator-based Heap Memory ProtectionZhenpeng Lin, Zheng Yu, Ziyi Guo, Simone Campanoni et al.USENIX Security 2024 · 14 citations
