Return
A priority based path searching method for improving hybrid fuzzing
DOI:10.1016/j.cose.2021.102242.png)
Abstract
En 中文
Hybrid fuzzing which combines classical fuzzing with concolic execution to produce effective test suites is an advanced software vulnerability detection technique. Because fuzzing and concolic execution are complementary in nature, some researchers propose optimal strategy and discriminative dispatch strategy to improve the performance of hybrid fuzzing. Although the ideas are interesting and useful, they have some limitations, such as high time overhead and difficulties in implementation. In this paper, we propose a Priority Based Path Searching method (PBPS) to utilize the capability of concolic execution better. PBPS evaluates each path's solving cost and solving demand, and prioritizes them based on two path characteristics, which are path lengths and sample-hits for concolic execution. The rationale is to keep the pipeline full by readily feeding the concolic engine with paths whose constraints are simpler to solve and are less likely to be explored by fuzz testing. We implement PBPS in Driller, which is a popular hybrid fuzzer and we evaluate our system QuickFuzz with the CQE dataset. Experimental results show that compared with DigFuzz and the original Driller, QuickFuzz discovers more vulnerabilities and achieves higher code coverage on the CQE dataset. (c) 2021 Elsevier Ltd. All rights reserved.
Keywords:
Fuzz testing
Concolic execution
Hybrid fuzzing
Code coverage
Vulnerability detection
AI Summary
Key information extracted from the uploaded paper, including a brief overview, abstract, background, key highlights, visual analysis, and future outlook.
Journal
C
IF:
5.4
Papers:
4.6K
Citations:
1.4W

