Proceedings of the 2019 ACM SIGSAC Conference on Computer and Communications Security 2019
DOI: 10.1145/3319535.3363225
|View full text |Cite
|
Sign up to set email alerts
|

Matryoshka

Abstract: Greybox fuzzing has made impressive progress in recent years, evolving from heuristics-based random mutation to solving individual branch constraints. However, they have difficulty solving path constraints that involve deeply nested conditional statements, which are common in image and video decoders, network packet analyzers, and checksum tools. We propose an approach for addressing this problem. First, we identify all the control flow-dependent conditional statements of the target conditional statement. Next… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
17
0

Year Published

2019
2019
2024
2024

Publication Types

Select...
4
2
2

Relationship

0
8

Authors

Journals

citations
Cited by 74 publications
(17 citation statements)
references
References 33 publications
0
17
0
Order By: Relevance
“…We do not need full path or code coverage to be accurate, only enough program state change coverage (i.e., data-flow coverage) to differentiate semantics. While limitations of fuzzing (e.g., passing complex data checks [11]) may limit the quality of the IOVecs, we observe that they are sufficient in practice. Our experimental results reinforce our main claim that program state change (however the IOVecs are generated) provides a more stable semantic identification fingerprint than code measurements.…”
Section: B Iovfi Phasesmentioning
confidence: 77%
See 1 more Smart Citation
“…We do not need full path or code coverage to be accurate, only enough program state change coverage (i.e., data-flow coverage) to differentiate semantics. While limitations of fuzzing (e.g., passing complex data checks [11]) may limit the quality of the IOVecs, we observe that they are sufficient in practice. Our experimental results reinforce our main claim that program state change (however the IOVecs are generated) provides a more stable semantic identification fingerprint than code measurements.…”
Section: B Iovfi Phasesmentioning
confidence: 77%
“…The fuzzer did not create inputs to pass these checks, and the functions are grouped into an equivalence class. Although inferring valid input is an ongoing research topic [10,11,50], both of these problems can be mitigated with a longer fuzzing campaign, a more sophisticated fuzzer, or through symbolic execution.…”
Section: E Large Shared Librariesmentioning
confidence: 99%
“…Otherwise, a generative fuzzing approach [6,21] is a more effective fuzzing that generates effective input values based on modeling the structure of input data. Also, there are many research instrumenting target programs to maximize the effectiveness of fuzzing [22,23], and fuzzing operating systems [24,25].…”
Section: Fuzzingmentioning
confidence: 99%
“…Designing and implementing a fully automated solution for finding design or implementation flaws that affect the security of software systems is a challenging issue. According to 2022 Top 25 The Open Web Application Security Project (OWASP) Prating Scale for the list of software weaknesses, incorrect design and implementation defects are ranked high. This is mainly because such defects cannot be discovered by using rigorous unit tests or by performing fuzz testing as far as a software system has no functional errors and memory errors, while other security vulnerabilities (e.g., memory corruptions) can be detected by checking whether a program makes a crash or not.…”
Section: Introductionmentioning
confidence: 99%
“…LAVA-M has a set of synthetic bugs inserted to 4 real-world programs base64, md5sum, uniq, who from project coreutils-8.24. It is commonly used to measure the ability of discovering bugs of modern fuzzers [4], [5], [22]. In LAVA-M, a bug is identified by a unique number and guarded by a 4-byte comparison as shown in Figure 7 (lines 2-3) where a bug is counted if the true-branch (lines 2-3) is satisfied.…”
Section: Detecting Bugsmentioning
confidence: 99%