SODA: A Generic Online Detection Framework for Smart Contracts

被引:67
|
作者
Chen, Ting [1 ]
Cao, Rong [1 ]
Li, Ting [1 ]
Luo, Xiapu [2 ]
Gu, Guofei [3 ]
Zhang, Yufei [1 ]
Liao, Zhou [1 ]
Zhu, Hang [1 ]
Chen, Gang [4 ]
He, Zheyuan [1 ]
Tang, Yuxing [1 ]
Lin, Xiaodong [5 ]
Zhang, Xiaosong [1 ]
机构
[1] Univ Elect Sci & Technol China, Ctr Cybersecur, Chengdu, Peoples R China
[2] Hong Kong Polytech Univ, Hong Kong, Peoples R China
[3] Texas A&M Univ, SUCCESS Lab, College Stn, TX 77843 USA
[4] Chengdu Kongdi Technol Inc, Chengdu, Peoples R China
[5] Univ Guelph, Guelph, ON, Canada
基金
美国国家科学基金会; 中国国家自然科学基金; 国家重点研发计划;
关键词
D O I
10.14722/ndss.2020.24449
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Smart contracts have become lucrative and profitable targets for attackers because they can hold a great amount of money. Unfortunately, existing offline approaches for discovering the vulnerabilities in smart contracts or checking the correctness of smart contracts cannot conduct online detection of attacking transactions. Besides, existing online approaches only focus on specific attacks and cannot be easily extended to detect other attacks. Moreover, developing a new online detection system for smart contracts from scratch is time-consuming and requires deep understanding of blockchain internals, thus making it difficult to quickly implement and deploy mechanisms to detect new attacks. In this paper, we propose a novel generic online detection framework named SODA for smart contracts on any blockchains that support Ethereum virtual machine (EVM). SODA distinguishes itself from existing online approaches through its capability, efficiency, and compatibility. First, SODA empowers users to easily develop apps for detecting various attacks online (i.e., when attacks happen) by separating information collection and attack detection with layered design. At the higher layer, SODA provides unified interfaces to develop detection apps against various attacks. At the lower layer, SODA instruments EVM to collect all primitive information necessary to detect various attacks and constructs 11 kinds of structural information for the ease of developing apps. Based on SODA, users can develop new apps in a few lines of code without modifying EVM. Second, SODA is efficient, because we design on-demand information retrieval to reduce the overhead of information collection and adopt dynamic linking to eliminate the overhead of inter-process communication. Such design allows users to develop detection apps using any programming languages that can generate dynamic link libraries. Third, since more and more blockchains adopt EVM as smart contract runtime, SODA can be easily migrated to such blockchains without modifying apps. Based on SODA, we develop 8 detection apps to detect the attacks exploiting major vulnerabilities in smart contracts, and integrate SODA (including all apps) into 3 popular blockchains: Ethereum, Expanse and Wanchain. The extensive experimental results demonstrate the effectiveness and efficiency of SODA and our detection apps.
引用
收藏
页数:17
相关论文
共 50 条
  • [41] An Efficient Framework for Optimistic Concurrent Execution of Smart Contracts
    Anjana, Parwat Singh
    Kumari, Sweta
    Peri, Sathya
    Rathor, Sachin
    Somani, Archit
    2019 27TH EUROMICRO INTERNATIONAL CONFERENCE ON PARALLEL, DISTRIBUTED AND NETWORK-BASED PROCESSING (PDP), 2019, : 83 - 92
  • [42] Integrating smart contracts into the legal framework of Saudi Arabia
    Alhejaili, Mohammad Omar Mohammad
    INTERNATIONAL JOURNAL OF LAW AND MANAGEMENT, 2025, 67 (02) : 230 - 248
  • [43] Towards a Framework to compare Blockchain Platforms for Smart Contracts
    Di Lucca, Giuseppe A.
    Tortorella, Maria
    2021 INTERNATIONAL CONFERENCE ON COMPUTATIONAL SCIENCE AND COMPUTATIONAL INTELLIGENCE (CSCI 2021), 2021, : 1931 - 1937
  • [44] Library Usage Detection in Ethereum Smart Contracts
    Hefele, Alexander
    Gallersdoerfer, Ulrich
    Matthes, Florian
    ON THE MOVE TO MEANINGFUL INTERNET SYSTEMS: OTM 2019 CONFERENCES, 2019, 11877 : 310 - 317
  • [45] Definition and Detection of Defects in NFT Smart Contracts
    Yang, Shuo
    Chen, Jiachi
    Zheng, Zibin
    PROCEEDINGS OF THE 32ND ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON SOFTWARE TESTING AND ANALYSIS, ISSTA 2023, 2023, : 373 - 384
  • [46] Survey on Vulnerability Detection Technology of Smart Contracts
    Dong W.-L.
    Liu Z.
    Liu K.
    Li L.
    Ge C.-P.
    Huang Z.-Q.
    Ruan Jian Xue Bao/Journal of Software, 2024, 35 (01): : 38 - 62
  • [47] Unknown Threats Detection Methods of Smart Contracts
    He, Daojing
    Ding, Ke
    Chan, Sammy
    Guizani, Mohsen
    IEEE INTERNET OF THINGS JOURNAL, 2024, 11 (03) : 4430 - 4441
  • [48] Detection and Analysis of Ethereum Energy Smart Contracts
    Lashkari, Bahareh
    Musilek, Petr
    APPLIED SCIENCES-BASEL, 2023, 13 (10):
  • [49] ContractFuzzer: Fuzzing Smart Contracts for Vulnerability Detection
    Jiang, Bo
    Liu, Ye
    Chan, W. C.
    PROCEEDINGS OF THE 2018 33RD IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMTED SOFTWARE ENGINEERING (ASE' 18), 2018, : 259 - 269
  • [50] Smart Contracts Contracts
    Bartoletti, Massimo
    FRONTIERS IN BLOCKCHAIN, 2020, 3