How Do Solidity Versions Affect Vulnerability Detection Tools? An Empirical Study
By: Gerardo Iuliano , Davide Corradini , Michele Pasqua and more
Potential Business Impact:
Finds bugs in computer money code.
Context: Smart contract vulnerabilities pose significant security risks for the Ethereum ecosystem, driving the development of automated tools for detection and mitigation. Smart contracts are written in Solidity, a programming language that is rapidly evolving to add features and improvements to enhance smart contract security. New versions of Solidity change the compilation process, potentially affecting how tools interpret and analyze smart contract code. Objective: In such a continuously evolving landscape, we aim to investigate the compatibility of detection tools with Solidity versions. More specifically, we present a plan to study detection tools by empirically assessing (i) their compatibility with the Solidity pragma directives, (ii) their detection effectiveness, and (iii) their execution time across different versions of Solidity. Method: We will conduct an exploratory study by running several tools and collecting a large number of real-world smart contracts to create a balanced dataset. We will track and analyze the tool execution through SmartBugs, a framework that facilitates the tool execution and allows the integration of new tools.
Similar Papers
A Comprehensive Study of Exploitable Patterns in Smart Contracts: From Vulnerability to Defense
Cryptography and Security
Finds and fixes dangerous code in digital money systems.
Human Side of Smart Contract Fuzzing: An Empirical Study
Human-Computer Interaction
Finds bugs in blockchain code automatically.
Validating Solidity Code Defects using Symbolic and Concrete Execution powered by Large Language Models
Software Engineering
Finds bugs in online money code.