S2e
S2E
Built upon KLEE symbolic execution engine and the QEMU virtual machine.
Good:
- works at any level of the stack: applications, libraries, kernel drivers, and device firmware.
- generates test cases to prove the existence of vul;
- Supports Windows & Linux: exe tracing, code coverage, profiling.
- Explore thousands of paths automatically.
Modular/Extensible:
- use its multi-path analysis (symbolic execution).
- use as single-path instrumentation platform.
- can be used without overhead of VM: S2E emulates KVM interfaces.
Program analysis capability:
- navigate large state spaces with concolic and symbolic execution, state merging, static analysis, function summaries, incremental constraint solving.
- Security checking, test, verification, reverse engineering, performance profiling, etc.
- Quickly prototype your research ideas by combining existing plugins or writing your own.
Implementation:
Papers: