Chinese Journal of Network and Information Security ›› 2020, Vol. 6 ›› Issue (2): 35-55.doi: 10.11959/j.issn.2096-109x.2020025

Special Issue: 区块链

• Special Column:Blockchain Technology • Previous Articles     Next Articles

ContractGuard:defend Ethereum smart contract with embedded intrusion detection

Gansen ZHAO1,2,3,Zhijian XIE1,2,3,Xinming WANG1,2,3,4,5(),Jiahao HE1,2,3,Chengzhi ZHANG5(),Chengchuang LIN1,2,3,ZHOU Ziheng1,3,6,Bingchuan CHEN3,7,RONG Chunming8   

  1. 1 South China Normal University School of Computer Science,Guangzhou 510000,China
    2 Guangzhou Key Laboratory of Cloud Computing Security and Assessment Technology,Guangzhou 510000,China
    3 VeChain blockchain technology and application joint laboratory,Guangzhou 510000,China
    4 Lakala Payment Company Limited,Beijing 100080,China
    5 HK University of Science and Technology,Hong Kong 999077,China
    6 VeChain Foundation Limited,Singapore 238463
    7 Guangdong university of finance and economics,Guangzhou 510000,China
    8 Stavanger University,Stavanger 4036,Norway
  • Revised:2020-03-25 Online:2020-04-15 Published:2020-04-23
  • Supported by:
    HKSAR(RGC/GRF16202917);The National Key R&D Program of China(2018YFB1404402);Guangdong Science &Technology Fund(2019B010137003);Guangzhou Science & Technology Fund(2016B030305006);Guangzhou Science & Technology Fund(2018A07071702);Guangzhou Science & Technology Fund(201804010314);Guangzhou Science & Technology Fund(2012224-12);VeChain Foundation(SCNU-2018-01);Guangdong Provincial Department of Education Characteristic Innovation Project (Natural Science)(2017KTSCX074)

Abstract:

Ethereum smart contracts are programs that can be collectively executed by a network of mutually untrusted nodes.Smart contracts handle and transfer assets of values,offering strong incentives for malicious attacks.Intrusion attacks are a popular type of malicious attacks.ContractGuard,the first intrusion detection system (IDS) was proposed to defend Ethereum smart contracts against such attacks.Like IDSs for conventional programs,ContractGuard detects intrusion attempts as abnormal control flow.However,existing IDS techniques or tools are inapplicable to Ethereum smart contracts due to Ethereum’s decentralized nature and its highly restrictive execution environment.To address these issues,ContractGuard was designed by embedding it in the contracts.At runtime,ContractGuard protects the smart contract by monitoring the context-tagged acyclic path of the smart contract.As ContractGuard involves deployment overhead and deployment overhead.It was optimized under the Ethereum Gas-oriented performance model to reduce the overheads.The experimental results show that this work can effectively detect 83% of vulnerabilities,ContractGuard only adds to 36.14% of the deployment overhead and 28.27% of the runtime overhead.

Key words: blockchain, Ethereum smart contract, intrusion detection system, anomaly detection

CLC Number: 

No Suggested Reading articles found!