Title
Gollum: Modular and Greybox Exploit Generation for Heap Overflows in Interpreters
Abstract
We present the first approach to automatic exploit generation for heap overflows in interpreters. It is also the first approach to exploit generation in any class of program that integrates a solution for automatic heap layout manipulation. At the core of the approach is a novel method for discovering exploit primitives---inputs to the target program that result in a sensitive operation, such as a function call or a memory write, utilizing attacker-injected data. To produce an exploit primitive from a heap overflow vulnerability, one has to discover a target data structure to corrupt, ensure an instance of that data structure is adjacent to the source of the overflow on the heap, and ensure that the post-overflow corrupted data is used in a manner desired by the attacker. Our system addresses all three tasks in an automatic, greybox, and modular manner. Our implementation is called GOLLUM, and we demonstrate its capabilities by producing exploits from 10 unique vulnerabilities in the PHP and Python interpreters, 5 of which do not have existing public exploits.
Year
DOI
Venue
2019
10.1145/3319535.3354224
Proceedings of the 2019 ACM SIGSAC Conference on Computer and Communications Security
Keywords
Field
DocType
exploit generation, greybox, primitive search
Computer security,Computer science,Heap (data structure),Exploit,Interpreter,Modular design,Gollum
Conference
ISBN
Citations 
PageRank 
978-1-4503-6747-9
3
0.38
References 
Authors
0
3
Name
Order
Citations
PageRank
Sean Heelan130.38
Thomas F. Melham238435.63
Daniel Kroening33084187.60