Automated Whitebox Fuzz Testing.
Microsoft Research (United Kingdom) · University of California, Berkeley
Abstract
Fuzz testing is an effective technique for finding security vulnerabilities in software. Traditionally, fuzz testing tools apply random mutations to well-formed inputs of a program and test the resulting values. We present an alternative whitebox fuzz testing approach inspired by recent advances in symbolic execution and dynamic test generation. Our approach records an actual run of the program under test on a well-formed input, symbolically evaluates the recorded trace, and gathers constraints on inputs capturing how the program uses these. The collected constraints are then negated one by one and solved with a constraint solver, producing new inputs that exercise different control paths in the program. This…
Citation impact
- FWCI
- 115.56
- Percentile
- 100%
- References
- 25
Authors
3Topics & keywords
- Fuzz testing
- Computer science
- Symbolic execution
- Concolic testing
- Programming language
- x86
- Code coverage
- Emulation
- Peace, Justice and strong institutions