国内刊号:51-1307/TP
国际刊号:1001-9081
发布日期:
作者:赵伟, 张问银, 王九如, 王海峰, 武传坤
单位:1. 临沂大学 信息科学与工程学院, 山东 临沂 276002;2. 山东科技大学 计算机科学与工程学院, 山东 青岛 266000
关键词:区块链,智能合约,符号执行,漏洞分析,以太坊
基金:山东省重点研发计划项目(2017CXGC0701,2019GNC106027)。
随着区块链技术的应用推广,智能合约的数量呈现爆发式增长,而智能合约的漏洞将给用户带来巨大损失。但目前研究侧重于以太坊智能合约的语义分析、符号执行的建模与优化等,没有详细描述利用符号执行技术检测智能合约漏洞流程,以及如何检测智能合约常见漏洞。为此,在分析以太坊智能合约的运行机制和常见漏洞原理的基础上,利用符号执行技术检测智能合约漏洞。首先基于以太坊字节码构建智能合约执行控制流图,再根据智能合约漏洞特点设计相应的约束条件,利用约束求解器生成软件测试用例,检测常见的整型溢出、权限控制、Call注入、重入攻击等智能合约漏洞。实验结果表明,所提检测方案具有良好的检测效果,对Awesome-Buggy-ERC20-Tokens漏洞库中70份含漏洞的智能合约的漏洞检测正确率达85%。
来源:2020年第4期
《计算机应用》期刊编辑部