An Empirical Study of Impact of Solidity Compiler Updates on Vulnerabilities in Ethereum Smart Contracts

06/07/2023
by   Chihiro Kado, et al.
0

Vulnerabilities of Ethereum smart contracts often cause serious financial damage. Whereas the Solidity compiler has been updated to prevent vulnerabilities, its effectiveness has not been revealed so far, to the best of our knowledge. In this paper, we shed light on the impact of compiler versions of vulnerabilities of Ethereum smart contracts. To this end, we collected 503,572 contracts with Solidity source codes in the Ethereum blockchain and then analyzed their vulnerabilities. For three vulnerabilities with high severity, i.e., Locked Money, Using tx.origin, and Unchecked Call, we show that their appearance rates are decreased by virtue of major updates of the Solidity compiler. We then found the following four key insights. First, after the release of version 0.6, the appearance rate for Locked Money has decreased. Second, regardless of compiler updates, the appearance rate for Using tx.origin is significantly low. Third, although the appearance rate for Unchecked Call has decreased in version 0.8, it still remains high due to various factors, including code clones. Fourth, through analysis of code clones, our promising results show that the appearance rate for Unchecked Call can be further decreased by removing the code clones.

READ FULL TEXT
research
03/01/2022

VOLCANO: Detecting Vulnerabilities of Ethereum Smart Contracts Using Code Clone Analysis

Ethereum Smart Contracts based on Blockchain Technology (BT) enables mon...
research
03/28/2022

A Fly in the Ointment: An Empirical Study on the Characteristics of Ethereum Smart Contracts Code Weaknesses and Vulnerabilities

Context: Smart contracts are computer programs that are automatically ex...
research
03/01/2022

Mining Domain Models in Ethereum DApps using Code Cloning

This research study explores the use of near-miss clone detection to sup...
research
10/21/2022

An Empirical Study on Real Bug Fixes in Smart Contracts Projects

Blockchain uses cryptographic proof to replace trusted third parties to ...
research
07/08/2020

SmartBugs: A Framework to Analyze Solidity Smart Contracts

Over the last few years, there has been substantial research on automate...
research
02/23/2018

Automatic Generation of Precise and Useful Commutativity Conditions (Extended Version)

Reasoning about commutativity between data-structure operations is an im...
research
06/25/2019

EVulHunter: Detecting Fake Transfer Vulnerabilities for EOSIO's Smart Contracts at Webassembly-level

As one of the representative Delegated Proof-of-Stake (DPoS) blockchain ...

Please sign up or login with your details

Forgot password? Click here to reset