sFuzz: An Efficient Adaptive Fuzzer for Solidity Smart Contracts

04/18/2020
by   Tai D. Nguyen, et al.
0

Smart contracts are Turing-complete programs that execute on the infrastructure of the blockchain, which often manage valuable digital assets. Solidity is one of the most popular programming languages for writing smart contracts on the Ethereum platform. Like traditional programs, smart contracts may contain vulnerabilities. Unlike traditional programs, smart contracts cannot be easily patched once they are deployed. It is thus important that smart contracts are tested thoroughly before deployment. In this work, we present an adaptive fuzzer for smart contracts on the Ethereum platform called sFuzz. Compared to existing Solidity fuzzers, sFuzz combines the strategy in the AFL fuzzer and an efficient lightweight multi-objective adaptive strategy targeting those hard-to-cover branches. sFuzz has been applied to more than 4 thousand smart contracts and the experimental results show that (1) sFuzz is efficient, e.g., two orders of magnitude faster than state-of-the-art tools; (2) sFuzz is effective in achieving high code coverage and discovering vulnerabilities; and (3) the different fuzzing strategies in sFuzz complement each other.

READ FULL TEXT

page 1

page 2

page 3

page 4

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
04/13/2019

Flint for Safer Smart Contracts

The Ethereum blockchain platform supports the execution of decentralised...
research
08/02/2018

sCompile: Critical Path Identification and Analysis for Smart Contracts

Smart contracts are an innovation built on top of the blockchain technol...
research
04/23/2023

Consolidation of Ground Truth Sets for Weakness Detection in Smart Contracts

Smart contracts are small programs on the blockchain that often handle v...
research
01/14/2021

DeFi-ning DeFi: Challenges Pathway

The decentralized and trustless nature of cryptocurrencies and blockchai...
research
05/23/2019

Non-Negative PARATUCK2 Tensor Decomposition Combined to LSTM Network For Smart Contracts Profiling

Smart contracts are programs stored and executed on a blockchain. The Et...
research
01/10/2018

Quantitative Analysis of Smart Contracts

Smart contracts are computer programs that are executed by a network of ...

Please sign up or login with your details

Forgot password? Click here to reset