Targeted Automatic Integer Overflow Discovery Using Goal-Directed Conditional Branch Enforcement
Authors:
Open Access
- 14 March 2015
- conference paper
- Published by Association for Computing Machinery (ACM)
- p. 473-486
Abstract
We present a new technique and system, DIODE, for auto- matically generating inputs that trigger overflows at memory allocation sites. DIODE is designed to identify relevant sanity checks that inputs must satisfy to trigger overflows at target memory allocation sites, then generate inputs that satisfy these sanity checks to successfully trigger the overflow. DIODE works with off-the-shelf, production x86 binaries. Our results show that, for our benchmark set of applications, and for every target memory allocation site exercised by our seed inputs (which the applications process correctly with no overflows), either 1) DIODE is able to generate an input that triggers an overflow at that site or 2) there is no input that would trigger an overflow for the observed target expression at that site.Keywords
Funding Information
- Defense Advanced Research Projects Agency (FA8650-11-C-7192)
This publication has 19 references indexed in Scilit:
- Sound input filter generation for integer overflow errors2014
- SAGE: Whitebox Fuzzing for Security TestingQueue, 2012
- IntPatch: Automatically Fix Integer-Overflow-to-Buffer-Overflow Vulnerability at Compile-Time2010
- ASSUREACM SIGPLAN Notices, 2009
- EXEACM Transactions on Information and System Security, 2008
- Z3: An Efficient SMT Solver2008
- Valgrind2007
- Using Type Qualifiers to Analyze Untrusted Integers and Detecting Security Flaws in C ProgramsLecture Notes in Computer Science, 2006
- CUTEACM SIGSOFT Software Engineering Notes, 2005
- An empirical study of the reliability of UNIX utilitiesCommunications of the ACM, 1990