首页|Mutation Testing for Integer Overflow in Ethereum Smart Contracts

Mutation Testing for Integer Overflow in Ethereum Smart Contracts

扫码查看
Integer overflow is a common vulnerability in Ethereum Smart Contracts (ESCs) and often causes huge economic losses.Smart contracts cannot be changed once it is deployed on the blockchain and thus demand further testing.Mutation testing is a fault-based testing method that can effectively improve the sufficiency of a test for smart contracts.However,existing methods cannot efficiently perform mutation testing specifically for integer overflow in ESCs.Therefore,by analyzing integer overflow in ESCs,we propose five special mutation operators to address such vulnerability in terms of detecting sufficiency in ESC testing.An empirical study on 40 open-source ESCs is conducted to evaluate the effectiveness of the proposed mutation operators.Results show that (1) our proposed mutation operators can reproduce all 179 integer overflow vulnerabilities in 40 smart contracts,and the generated mutants have high compilation pass rate and integer overflow vulnerability generation rate;moreover,(2) the generated mutants can find the shortcomings of existing testing methods for integer overflow vulnerability,thereby providing effective support to improve the sufficiency of the test.

blockchainEthereum Smart Contracts (ESCs)integer overflowmutation testing

Jinlei Sun、Song Huang、Changyou Zheng、Tingyong Wang、Cheng Zong、Zhanwei Hui

展开 >

Command & Control Engineering College,Army Engineering University of PLA,Nanjing 210000,China

Institute of Evaluation and Assessment Research,Academy of Military Science,Beijing 100091,China

National Key R&D Program of China国家自然科学基金Natural Science Foundation of Jiangsu Province,ChinaNatural Science Foundation of Jiangsu Province,ChinaChina Postdoctoral Science Foundation

2018YFB140340061702544Nos.BK20160769BK201410722016M603031

2022

清华大学学报自然科学版(英文版)
清华大学

清华大学学报自然科学版(英文版)

CSTPCDCSCDSCIEI
影响因子:0.474
ISSN:1007-0214
年,卷(期):2022.27(1)
  • 3