State of the art hybrid testing systems Code coverage driven
4
Code-coverage alone likely miss bugs
5
Suboptimal resource distribution • Bug-to-code ratios
6
SAVIOR: Bug-driven hybrid fuzzing
7
Compile time analysis & instrumentation • Analysis conservative
8
System overview: runtime
9
Reach more bug instrumentation
10
Active property checking . Model these type of bugs with SMT constraints
11
Other tricks to improve efficiency - Dynamically adjust path scheduling Combine static and runtime information
12
Evaluation
13
SAVIOR: LAVA-M benchmark
14
Real-world programs: potential bug-code ratios
15
Triggered UBSAN violations (24 hours)
16
SAVIOR: Triggered bug V.S code coverage cont
17
Conclusion
Description:
Explore a cutting-edge approach to hybrid testing in software development through this IEEE conference talk. Dive into the concept of bug-driven hybrid fuzzing with SAVIOR, a system designed to improve upon traditional code coverage-driven methods. Learn how compile-time analysis, instrumentation, and active property checking can lead to more efficient bug detection. Discover techniques for optimizing resource distribution and path scheduling by combining static and runtime information. Examine the evaluation results of SAVIOR on LAVA-M benchmark and real-world programs, including its performance in triggering UBSAN violations. Gain insights into the potential of bug-to-code ratios for enhancing testing effectiveness and understand how this approach compares to conventional code coverage methods.