Deep State Now Supports Ensemble Fuzzing
Summary: Trail of Bits integrated ensemble fuzzing into DeepState, its fuzzing and symbolic-execution unit-testing framework, adding a deepstate-ensembler tool and an open-sourced front-end API/SDK with seed synchronization. The implementation follows the architecture from Chen et al.'s EnFuzz paper, uses a global-asynchronous and local-synchronous seed synchronization mechanism, and was built in roughly 300 lines of Python, with existing front-end executors for AFL, libFuzzer, Angora, Eclipser, and Honggfuzz.
What you should know: The team's own benchmarks found smarter fuzzers like Angora and Eclipser perform well on small contained cases but falter on real-world bug discovery such as the TweetNaCl carry mis-propagation bug, while the ensemble scaled to both - and they note they cannot yet say ensemble fuzzing is the best strategy.
Read the original at Trail of Bits Blog ↗