Enhancing symbolic execution with veritesting

T Avgerinos, A Rebert, SK Cha, D Brumley - Proceedings of the 36th …, 2014 - dl.acm.org
Proceedings of the 36th International Conference on Software Engineering, 2014dl.acm.org
We present MergePoint, a new binary-only symbolic execution system for large-scale and
fully unassisted testing of commodity off-the-shelf (COTS) software. MergePoint introduces
veritesting, a new technique that employs static symbolic execution to amplify the effect of
dynamic symbolic execution. Veritesting allows MergePoint to find twice as many bugs,
explore orders of magnitude more paths, and achieve higher code coverage than previous
dynamic symbolic execution systems. MergePoint is currently running daily on a 100 node …
We present MergePoint, a new binary-only symbolic execution system for large-scale and fully unassisted testing of commodity off-the-shelf (COTS) software. MergePoint introduces veritesting, a new technique that employs static symbolic execution to amplify the effect of dynamic symbolic execution. Veritesting allows MergePoint to find twice as many bugs, explore orders of magnitude more paths, and achieve higher code coverage than previous dynamic symbolic execution systems. MergePoint is currently running daily on a 100 node cluster analyzing 33,248 Linux binaries; has generated more than 15 billion SMT queries, 200 million test cases, 2,347,420 crashes, and found 11,687 bugs in 4,379 distinct applications.
ACM Digital Library