DogeFuzz: A Simple Yet Efficient Grey-box Fuzzer for Ethereum Smart Contracts
- URL: http://arxiv.org/abs/2409.01788v1
- Date: Tue, 3 Sep 2024 11:08:53 GMT
- Title: DogeFuzz: A Simple Yet Efficient Grey-box Fuzzer for Ethereum Smart Contracts
- Authors: Ismael Medeiros, Fausto Carvalho, Alexandre Ferreira, Rodrigo Bonifácio, Fabiano Cavalcanti Fernandes,
- Abstract summary: We present DogeFuzz, an infrastructure for fuzzing smart contracts.
We compare DogeFuzz with state-of-the-art fuzzers for smart contracts.
- Score: 38.770693229208355
- License: http://creativecommons.org/licenses/by-nc-nd/4.0/
- Abstract: Ethereum is a distributed, peer-to-peer blockchain infrastructure that has attracted billions of dollars. Perhaps due to its success, Ethereum has become a target for various kinds of attacks, motivating researchers to explore different techniques to identify vulnerabilities in EVM bytecode (the language of the Ethereum Virtual Machine), including formal verification, symbolic execution, and fuzz testing. Although recent studies empirically compare smart contract fuzzers, there is a lack of literature investigating how simpler greybox fuzzers compare to more advanced ones. To fill this gap, in this paper, we present DogeFuzz, an extensible infrastructure for fuzzing Ethereum smart contracts, currently supporting black-box fuzzing and two grey-box fuzzing strategies: coverage-guided grey-box fuzzing (DogeFuzz-G) and directed grey-box fuzzing (DogeFuzz-DG). We conduct a series of experiments using benchmarks already available in the literature and compare the DogeFuzz strategies with state-of-the-art fuzzers for smart contracts. Surprisingly, although DogeFuzz does not leverage advanced techniques for improving input generation (such as symbolic execution or machine learning), DogeFuzz outperforms sFuzz and ILF, two state-of-the-art fuzzers. Nonetheless, the Smartian fuzzer shows higher code coverage and bug-finding capabilities than DogeFuzz.
Related papers
- G-Fuzz: A Directed Fuzzing Framework for gVisor [48.85077340822625]
G-Fuzz is a directed fuzzing framework for gVisor.
G-Fuzz has been deployed in industry and has detected multiple serious vulnerabilities.
arXiv Detail & Related papers (2024-09-20T01:00:22Z) - FuzzCoder: Byte-level Fuzzing Test via Large Language Model [46.18191648883695]
We propose to adopt fine-tuned large language models (FuzzCoder) to learn patterns in the input files from successful attacks.
FuzzCoder can predict mutation locations and strategies locations in input files to trigger abnormal behaviors of the program.
arXiv Detail & Related papers (2024-09-03T14:40:31Z) - Vulseye: Detect Smart Contract Vulnerabilities via Stateful Directed Graybox Fuzzing [15.974697197575304]
Vulseye is a stateful directed graybox fuzzer for smart contracts guided by vulnerabilities.
We introduce Code Targets and State Targets into fuzzing loops as the testing targets of Vulseye.
In comparison with state-of-the-art fuzzers, Vulseye demonstrated superior effectiveness and efficiency.
arXiv Detail & Related papers (2024-08-19T16:03:03Z) - Is Stateful Fuzzing Really Challenging? [0.0]
We discuss the reasons that make stateful fuzzers difficult to devise and benchmark.
Fuzzing has been proven extremely effective in finding vulnerabilities in software.
arXiv Detail & Related papers (2024-06-11T08:58:59Z) - MuFuzz: Sequence-Aware Mutation and Seed Mask Guidance for Blockchain Smart Contract Fuzzing [19.606053533275958]
We develop a sequence-aware mutation and seed mask guidance strategy for smart contract fuzzing.
We implement our designs into a new smart contract fuzzer named MuFuzz, and extensively evaluate it on three benchmarks.
Overall, MuFuzz achieves higher branch coverage than state-of-the-art fuzzers (up to 25%) and detects 30% more bugs than existing bug detectors.
arXiv Detail & Related papers (2023-12-07T18:32:19Z) - ItyFuzz: Snapshot-Based Fuzzer for Smart Contract [5.43042231820643]
We introduce a novel snapshot-based fuzzer ItyFuzz for testing smart contracts.
In ItyFuzz, instead of storing sequences of transactions and mutating from them, we snapshot states and singleton transactions.
ItyFuzz outperforms existing fuzzers in terms of instructional coverage and can find and generate realistic exploits for on-chain projects quickly.
arXiv Detail & Related papers (2023-06-29T17:36:08Z) - Evolution of Automated Weakness Detection in Ethereum Bytecode: a
Comprehensive Study [0.757843972001219]
We study the robustness of code analysis tools and the evolution of weakness detection on a dataset representing six years of blockchain activity.
Our study is the first that is based on the entire body of deployed bytecode on a CPU's main chain.
We observe a decrease in reported weaknesses over time, as well as a degradation of tools to varying degrees.
arXiv Detail & Related papers (2023-03-18T23:28:14Z) - Token Spammers, Rug Pulls, and SniperBots: An Analysis of the Ecosystem of Tokens in Ethereum and in the Binance Smart Chain (BNB) [50.888293380932616]
We study the ecosystem of the tokens and liquidity pools.
We find that about 60% of tokens are active for less than one day.
We estimate that 1-day rug pulls generated $240 million in profits.
arXiv Detail & Related papers (2022-06-16T14:20:19Z) - Smart Contract Vulnerability Detection: From Pure Neural Network to
Interpretable Graph Feature and Expert Pattern Fusion [48.744359070088166]
Conventional smart contract vulnerability detection methods heavily rely on fixed expert rules.
Recent deep learning approaches alleviate this issue but fail to encode useful expert knowledge.
We develop automatic tools to extract expert patterns from the source code.
We then cast the code into a semantic graph to extract deep graph features.
arXiv Detail & Related papers (2021-06-17T07:12:13Z) - ESCORT: Ethereum Smart COntRacTs Vulnerability Detection using Deep
Neural Network and Transfer Learning [80.85273827468063]
Existing machine learning-based vulnerability detection methods are limited and only inspect whether the smart contract is vulnerable.
We propose ESCORT, the first Deep Neural Network (DNN)-based vulnerability detection framework for smart contracts.
We show that ESCORT achieves an average F1-score of 95% on six vulnerability types and the detection time is 0.02 seconds per contract.
arXiv Detail & Related papers (2021-03-23T15:04:44Z)
This list is automatically generated from the titles and abstracts of the papers in this site.
This site does not guarantee the quality of this site (including all information) and is not responsible for any consequences.