arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 2003.06568cs.CR
收藏

EOSIO智能合约的安全性分析

Security Analysis of EOSIO Smart Contracts

Ningyu He, Ruiyi Zhang, Lei Wu, Haoyu Wang, Xiapu Luo, Yao Guo, Ting Yu, Xuxian Jiang

摘要:

EOSIO区块链是代表性的委托权益证明(DPoS)区块链平台之一,最近发展迅速。与此同时,也发现了一些针对顶级EOSIO DApp及其智能合约的漏洞和高调攻击,并在野外观察到,导致严重的财务损失。EOSIO的大多数智能合约都不是开源的,它们通常被编译为WebAssembly(Wasm)字节码,因此分析和检测可能存在的漏洞具有挑战性。在本文中,我们提出了EOSAFE,这是第一个可用于在字节码级别自动检测EOSIO智能合约漏洞的静态分析框架。我们的框架包括一个用于Wasm的实用符号执行引擎,一个用于EOSIO智能合约的定制库仿真器,以及四个由算法驱动的检测器,用于识别EOSIO智能合约中四个最常见的漏洞。实验结果表明,EOSAFE在检测漏洞方面取得了令人满意的结果,F1测量值为98%。我们已将EOSAFE应用于生态系统中所有活跃的53,666个智能合约(截至2019年11月15日)。我们的研究结果表明,超过25%的智能合约是脆弱的。我们进一步分析了针对这些易受攻击的智能合约的可能的利用尝试,并确定了48次野外攻击(其中25次已被DApp开发人员证实),造成至少170万美元的经济损失。

英文摘要:

The EOSIO blockchain, one of the representative Delegated Proof-of-Stake (DPoS) blockchain platforms, has grown rapidly recently. Meanwhile, a number of vulnerabilities and high-profile attacks against top EOSIO DApps and their smart contracts have also been discovered and observed in the wild, resulting in serious financial damages. Most of EOSIO's smart contracts are not open-sourced and they are typically compiled to WebAssembly (Wasm) bytecode, thus making it challenging to analyze and detect the presence of possible vulnerabilities. In this paper, we propose EOSAFE, the first static analysis framework that can be used to automatically detect vulnerabilities in EOSIO smart contracts at the bytecode level. Our framework includes a practical symbolic execution engine for Wasm, a customized library emulator for EOSIO smart contracts, and four heuristics-driven detectors to identify the presence of four most popular vulnerabilities in EOSIO smart contracts. Experiment results suggest that EOSAFE achieves promising results in detecting vulnerabilities, with an F1-measure of 98%. We have applied EOSAFE to all active 53,666 smart contracts in the ecosystem (as of November 15, 2019). Our results show that over 25% of the smart contracts are vulnerable. We further analyze possible exploitation attempts against these vulnerable smart contracts and identify 48 in-the-wild attacks (25 of them have been confirmed by DApp developers), resulting in financial loss of at least 1.7 million USD.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑