An empirical analysis of vulnerability detection tools for solidity smart contracts
arXiv:2505.15756 · doi:10.1007/s10664-026-10867-7
Abstract
The rapid adoption of blockchain technology highlighted the importance of ensuring the security of smart contracts due to their critical role in automated business logic execution on blockchain platforms. This paper provides an empirical evaluation of automated vulnerability analysis tools specifically designed for Solidity smart contracts. Leveraging the extensive SmartBugs 2.0 framework, which includes 20 analysis tools, we conducted a comprehensive assessment using an annotated dataset of 2,182 instances we manually annotated with line-level vulnerability labels. Our evaluation highlights the detection effectiveness of these tools in detecting various types of vulnerabilities, as categorized by the DASP TOP 10 taxonomy. We evaluated the effectiveness of a Large Language Model-based detection method on two popular datasets. In this case, we obtained inconsistent results with the two datasets, showing unreliable detection when analyzing real-world smart contracts. Our study identifies significant variations in the accuracy and reliability of different tools and demonstrates the advantages of combining multiple detection methods to improve vulnerability identification. We identified a set of 3 tools that, combined, achieve up to 76.78\% found vulnerabilities taking less than one minute to run, on average. This study contributes to the field by releasing the largest dataset of manually analyzed smart contracts with line-level vulnerability annotations and the empirical evaluation of the greatest number of tools to date.
47 pages
References in corpus (10)
- Slither: A Static Analysis Framework For Smart Contracts
- Empirical Review of Automated Analysis Tools on 47,587 Ethereum Smart Contracts
- Combining Graph Neural Networks with Expert Knowledge for Smart Contract Vulnerability Detection
- How Effective are Smart Contract Analysis Tools? Evaluating Smart Contract Static Analysis Tools Using Bug Injection
- GPTScan: Detecting Logic Vulnerabilities in Smart Contracts by Combining GPT with Program Analysis
- Smart Contract and DeFi Security Tools: Do They Meet the Needs of Practitioners?
- DAppSCAN: Building Large-Scale Datasets for Smart Contract Weaknesses in DApp Projects
- Static Application Security Testing (SAST) Tools for Smart Contracts: How Far Are We?
- Generating Java Methods: An Empirical Assessment of Four AI-Based Code Assistants
- Bridging the Gap: A Comparative Study of Academic and Developer Approaches to Smart Contract Vulnerabilities