kirancodes.me
To Proof Maintenance & Beyond!

Map2Check: Using Symbolic Execution and Fuzzing - (Competition Contribution)

Herbert Rocha, Rafael Menezes, Lucas C. Cordeiro, Raimundo S. Barreto

Abstract

Abstract Map2Check is a software verification tool that combines fuzzing, symbolic execution, and inductive invariants. It automatically checks safety properties in C programs by adopting source code instrumentation to monitor data (e.g., memory pointers) from the program’s executions using LLVM compiler infrastructure. For SV-COMP 2020, we extended Map2Check to exploit an iterative deepening approach using LibFuzzer and Klee to check for safety properties. We also use Crab-LLVM to infer program invariants based on reachability analysis. Experimental results show that Map2Check can handle a wide variety of safety properties in several intricate verification tasks from SV-COMP 2020.

Related papers