Harvey: A Greybox Fuzzer for Smart Contracts
Not on the map. Why?
Abstract (arXiv)
We present Harvey, an industrial greybox fuzzer for smart contracts, which are programs managing accounts on a blockchain. Greybox fuzzing is a lightweight test-generation approach that effectively detects bugs and security vulnerabilities. However, greybox fuzzers randomly mutate program inputs to exercise new paths; this makes it challenging to cover code that is guarded by narrow checks, which are satisfied by no more than a few input values. Moreover, most real-world smart contracts transition through many different states during their lifetime, e.g., for every bid in an auction. To explore these states and thereby detect deep vulnerabilities, a greybox fuzzer would need to generate sequences of contract transactions, e.g., by creating bids from multiple users, while at the same time keeping the search space and test suite tractable. In this experience paper, we explain how Harvey alleviates both challenges with two key fuzzing techniques and distill the main lessons learned. First, Harvey extends standard greybox fuzzing with a method for predicting new inputs that are more likely to cover new paths or reveal vulnerabilities in smart contracts. Second, it fuzzes transaction sequences in a targeted and demand-driven way. We have evaluated our approach on 27 real-world contracts. Our experiments show that the underlying techniques significantly increase Harvey's effectiveness in achieving high coverage and detecting vulnerabilities, in most cases orders-of-magnitude faster; they also reveal new insights about contract code.
Key facts. Cited by 10 papers in the map (data through 7 Oct 2026). First posted on arXiv 15 May 2019.
Builds on
No reference list yet.
Built on by
Citing papers per year: 2021: 1; 2022: 0; 2023: 4; 2024: 2; 2025: 2; 2026: 1.
10 papers.
- 2023GPTScan: Detecting Logic Vulnerabilities in Smart Contracts by Combining GPT with Program Analysiscited by 65
- 2023Large Language Model-Powered Smart Contract Vulnerability Detection: New Perspectivescited by 48
- 2023Blockchain Large Language Modelscited by 16
- 2025SCALM: Detecting Bad Practices in Smart Contracts Through LLMscited by 8
- 2025AI Agent Smart Contract Exploit Generationcited by 8
- 2021ESCORT: Ethereum Smart COntRacTs Vulnerability Detection using Deep Neural Network and Transfer Learningcited by 4
- 2023An Empirical Study of AI-based Smart Contract Creationcited by 4
- 2024Detecting Buggy Contracts via Smart Testingcited by 3
- 2024Dual-view Aware Smart Contract Vulnerability Detection for Ethereumcited by 0
- 2026Beyond Detection: Agentic Attack Synthesis and Simulation for Smart Contractscited by 0
- 2026Beyond Detection: Agentic Attack Synthesis and Simulation for Smart Contracts17 Jul 2026
- 2025AI Agent Smart Contract Exploit Generation8 Jul 2025
- 2025SCALM: Detecting Bad Practices in Smart Contracts Through LLMs4 Feb 2025
- 2024Detecting Buggy Contracts via Smart Testing6 Sep 2024
- 2024Dual-view Aware Smart Contract Vulnerability Detection for Ethereum29 Jun 2024
- 2023Large Language Model-Powered Smart Contract Vulnerability Detection: New Perspectives2 Oct 2023
- 2023GPTScan: Detecting Logic Vulnerabilities in Smart Contracts by Combining GPT with Program Analysis7 Aug 2023
- 2023An Empirical Study of AI-based Smart Contract Creation5 Aug 2023
- 2023Blockchain Large Language Models25 Apr 2023
- 2021ESCORT: Ethereum Smart COntRacTs Vulnerability Detection using Deep Neural Network and Transfer Learning23 Mar 2021