TRIEREME: Speeding up hybrid fuzzing through efficient query scheduling

39TH ANNUAL COMPUTER SECURITY APPLICATIONS CONFERENCE, ACSAC 2023(2023)

引用 0|浏览6
暂无评分
摘要
Hybrid fuzzing, the combination between fuzzing and concolic execution, holds great promise in theory, but has so far failed to deliver all the expected advantages in practice due to its high overhead. The cause is the large amount of time spent in the SMT solver. As a result, hybrid fuzzers often lose out to simpler, yet faster techniques. This issue remains despite novel query pruning techniques that reduce the number and complexity of solver queries as they preclude other crucial optimizations like incremental solving. We introduce TRIEREME, a method to speed up the hybrid fuzzer's concolic engine by reducing the time spent in the SMT solver. TRIEREME uses a trie (or prefix tree) data structure to schedule and cache solver queries, exploiting common prefixes. This design is made possible by decoupling concolic tracing from concolic solving. As a result, TRIEREME manages to reconcile pruning with incremental solving, reaping their combined benefits. In our tests, TRIEREME speeds up concolic executions by 6.1x on average in FuzzBench [22] and improves coverage progress in 79% of the benchmarks.
更多
查看译文
关键词
fuzzing,hybrid fuzzing,concolic execution,program analysis
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要