Proceedings of the 28th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Softw 2020
DOI: 10.1145/3368089.3409748
|View full text |Cite
|
Sign up to set email alerts
|

Boosting fuzzer efficiency: an information theoretic perspective

Abstract: In this paper, we take the fundamental perspective of fuzzing as a learning process. Suppose before fuzzing, we know nothing about the behaviors of a program P: What does it do? Executing the first test input, we learn how P behaves for this input. Executing the next input, we either observe the same or discover a new behavior. As such, each execution reveals łsome amountž of information about P's behaviors. A classic measure of information is Shannon's entropy. Measuring entropy allows us to quantify how much… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

1
34
0

Year Published

2021
2021
2024
2024

Publication Types

Select...
4
2
2

Relationship

0
8

Authors

Journals

citations
Cited by 70 publications
(35 citation statements)
references
References 40 publications
1
34
0
Order By: Relevance
“…Our results show that the fuzzer skills also improve in terms of crash detection and coverage for several cases when diversity is embedded within the generation process. This is similar to the results of Böhme et al [25] when they leverage entropy to increase the diversity of behaviours during fuzzing campaigns. Therefore, r-wise independent hash functions compensate the adversarial behaviour of fuzzers and solvers during the input generation process by improving the fuzzers diversity.…”
Section: Discussion and Limitationssupporting
confidence: 89%
See 1 more Smart Citation
“…Our results show that the fuzzer skills also improve in terms of crash detection and coverage for several cases when diversity is embedded within the generation process. This is similar to the results of Böhme et al [25] when they leverage entropy to increase the diversity of behaviours during fuzzing campaigns. Therefore, r-wise independent hash functions compensate the adversarial behaviour of fuzzers and solvers during the input generation process by improving the fuzzers diversity.…”
Section: Discussion and Limitationssupporting
confidence: 89%
“…Since our comparison is based on performance, using different machines will affect the final results. The results might also be affected if the fuzzers add a new diversity strategy, as was recently the case for LibFuzzer, that now includes the "Entropic" extension, improving diversity during the queue selection process [25].…”
Section: Threats To Validitymentioning
confidence: 99%
“…To mitigate this problem, fuzzers calculate itness based on execution states (e.g., code coverage) because execution states can provide fuzzing with more information. Most existing fuzzers compute itness based on code coverage, i.e., they intend to discover more code coverage [21,23,62,88,157,203]. Another reason for using code coverage is that larger code coverage indicates a higher possibility of bug discovery [130].…”
Section: Fitness By State Transition (Markov Chainmentioning
confidence: 99%
“…However, the essential objective of fuzzing is to discover new states, e.g., new code coverage, new crashes, or new bugs. This motivates Böhme et al [17,20,21] to formulate fuzzing processes as a species discovery problem [32,33,52]. In a nutshell, ecologists collect numerous samples from the wild, and the species in the samples may be abundant or rare.…”
Section: Fitness By State Discoverymentioning
confidence: 99%
“…Entropic [3] improves libFuzzer's seed scheduling algorithm. It quantifies the amount of information gained by each seed and chooses which seed to mutate first according to this value.…”
Section: A Enhancing Libfuzzermentioning
confidence: 99%