2021 IEEE 21st International Conference on Software Quality, Reliability and Security (QRS) 2021
DOI: 10.1109/qrs54544.2021.00035
|View full text |Cite
|
Sign up to set email alerts
|

Increasing Fuzz Testing Coverage for Smart Contracts with Dynamic Taint Analysis

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
6
0

Year Published

2022
2022
2024
2024

Publication Types

Select...
4
1

Relationship

0
5

Authors

Journals

citations
Cited by 6 publications
(7 citation statements)
references
References 13 publications
0
6
0
Order By: Relevance
“…Distance is also a popular fitness metric, which helps identify seeds that are more likely to reach unexplored areas. Branch distance [53,67,74,75,87,99,104] and code distance [104] are two commonly used distance metrics in smart contract fuzzing, Branch distance evaluates how close a seed is to satisfy a missed branch by assessing the proximity of the seed to the branch condition. For example, in the code below, if the value of msg.value in a seed is 5, its branch distance for the then-branch is 95 .…”
Section: Seed Schedulingmentioning
confidence: 99%
See 1 more Smart Citation
“…Distance is also a popular fitness metric, which helps identify seeds that are more likely to reach unexplored areas. Branch distance [53,67,74,75,87,99,104] and code distance [104] are two commonly used distance metrics in smart contract fuzzing, Branch distance evaluates how close a seed is to satisfy a missed branch by assessing the proximity of the seed to the branch condition. For example, in the code below, if the value of msg.value in a seed is 5, its branch distance for the then-branch is 95 .…”
Section: Seed Schedulingmentioning
confidence: 99%
“…To address this issue, Harvey [99] chooses to mutate only a single argument at a time. Similarly, Targy [53] and effuzz [54] use taint analysis to find the arguments that are relevant to the target conditional branch and mutate only those arguments (e.g., argument b in example).…”
Section: Seed Mutationmentioning
confidence: 99%
“…Mutation testing is a fault-based testing method [17]. Fuzz testing is providing invalid or incorrect input data to the smart contract to observe its quality [20]. Validation testing ensures that the smart contract provides the use case required.…”
Section: Classification Schemementioning
confidence: 99%
“…In the papers [17], [19], [29], [30], [31], [34], [45], and [61], a newer method called mutation testing was introduced for the specific purpose of testing smart contracts. In addition, in the papers [20], [21], [23], [24], [26], [41], [42], [48], [53], [54], [55], and [56], another method called fuzz testing was introduced as well.…”
Section: ) Testing Data Challengesmentioning
confidence: 99%
“…Nguyen et al 70 proposed a feedback-based adaptive fuzzer called sFuzz to improve the branch coverage efficiency. Ji et al 71 extended sFuzz using dynamic taint analysis, which increases the covered branches by 6%. Echidna 72 and Foundry 73 are fuzzing frameworks widely used in industry, both of which feature efficient test generation with simple configuration and user-friendly manuals.…”
Section: Testingmentioning
confidence: 99%