TxT: Real-time Transaction Encapsulation for Ethereum Smart Contracts

01/20/2023
by   Nikolay Ivanov, et al.
0

Ethereum is a permissionless blockchain ecosystem that supports execution of smart contracts, the key enablers of decentralized finance (DeFi) and non-fungible tokens (NFT). However, the expressiveness of Ethereum smart contracts is a double-edged sword: while it enables blockchain programmability, it also introduces security vulnerabilities, i.e., the exploitable discrepancies between expected and actual behaviors of the contract code. To address these discrepancies and increase the vulnerability coverage, we propose a new smart contract security testing approach called transaction encapsulation. The core idea lies in the local execution of transactions on a fully-synchronized yet isolated Ethereum node, which creates a preview of outcomes of transaction sequences on the current state of blockchain. This approach poses a critical technical challenge – the well-known time-of-check/time-of-use (TOCTOU) problem, i.e., the assurance that the final transactions will exhibit the same execution paths as the encapsulated test transactions. In this work, we determine the exact conditions for guaranteed execution path replicability of the tested transactions, and implement a transaction testing tool, TxT, which reveals the actual outcomes of Ethereum transactions. To ensure the correctness of testing, TxT deterministically verifies whether a given sequence of transactions ensues an identical execution path on the current state of blockchain. We analyze over 1.3 billion Ethereum transactions and determine that 96.5 further show that TxT successfully reveals the suspicious behaviors associated with 31 out of 37 vulnerabilities (83.8 weakness classification (SWC) registry. In comparison, the vulnerability coverage of all the existing defense approaches combined only reaches 40.5

READ FULL TEXT

page 1

page 14

research
07/22/2019

Truffle tests for free – Replaying Ethereum smart contracts for transparency

The Ethereum blockchain is essentially a globally replicated public data...
research
11/24/2019

Basis Path Coverage Criteria for Smart Contract Application Testing

The widespread recognition of the smart contracts has established their ...
research
01/15/2020

Evolution of Ethereum: A Temporal Graph Perspective

Ethereum is one of the most popular blockchain systems that supports mor...
research
03/31/2023

The Blockchain Imitation Game

The use of blockchains for automated and adversarial trading has become ...
research
04/25/2023

Blockchain Large Language Models

This paper presents a dynamic, real-time approach to detecting anomalous...
research
08/27/2019

Eclipsing Ethereum Peers with False Friends

Ethereum is a decentralized Blockchain system that supports the executio...
research
10/10/2018

Blockchain access control Ecosystem for Big Data security

In recent years, the advancement in modern technologies has experienced ...

Please sign up or login with your details

Forgot password? Click here to reset