[发明专利]一种基于符号执行的WASM智能合约漏洞检测方法有效
申请号: | 202110989270.X | 申请日: | 2021-08-26 |
公开(公告)号: | CN113672515B | 公开(公告)日: | 2023-08-04 |
发明(设计)人: | 姜博;王冬;陈一飞;万寒 | 申请(专利权)人: | 北京航空航天大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F8/41 |
代理公司: | 北京永创新实专利事务所 11121 | 代理人: | 易卜 |
地址: | 100191*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 符号 执行 wasm 智能 合约 漏洞 检测 方法 | ||
本发明提出了一种基于符号执行的WASM智能合约漏洞检测方法,属于软件测试技术领域,通过对待分析的智能合约的WebAssembly字节码构建可执行实例,调用各实例中的初始化函数对运行环境的状态进行初始化,并填充运行环境的内存区和数据区的数值;进一步根据函数签名中的索引调用函数体进行符号执行,遍历字节码层次智能合约的执行路径,用以探索智能合约实际运行时可能存在的状态,并依据此状态进行智能合约潜在安全漏洞的分析。此外,针对不同区块链平台的库函数使用了通用函数接口和专用函数实现进行仿真支持,确保符号执行过程的完整性。通过设置循环上限和分支访问上限,解决符号执行中的路径爆炸问题和覆盖率问题。
技术领域
本发明属于软件测试技术领域,尤其涉及一种基于符号执行的WASM智能合约漏洞检测方法。
背景技术
区块链提供了去中心化、无信任支付场景的支持,其为哈希加密算法、网络技术、分布式系统原理以及社会经济学等交叉研究成果。区块链从原理上提供了一种新型信任机制,并基于此构建出安全可信、高容错的去中心化数据库系统。通过智能合约,区块链平台实现了交易的自动化和智能化,提高了区块链技术的泛用性。
区块链智能合约的安全性研究,主要针对逻辑上的安全性和正确性;但是,作为首次应用智能合约的区块链平台,以太坊存在典型的智能合约漏洞。
智能合约漏洞检测分析技术,主要存在形式化验证技术、模糊测试技术和符号执行技术。
形式化验证是分析智能合约安全性的一种方法,过程包括抽象解释、定理证明和模型验证。形式化验证使用预先建立的规则,对系统相关特性进行分析和验证;无法保证系统完全正确可靠,但可最大限度对系统进行分析,验证系统是否满足一致性和完备性。模糊测试与区块链平台强耦合,通过插桩技术,进行漏洞触发。符号执行技术面向智能合约字节码,支持跨平台智能合约安全性漏洞检测分析,易于漏洞类型扩展。
WebAssembly(Wasm)是一种字节码标准,目前存在多个区块链平台以Wasm作为智能合约底层字节码,例如EOS.IO平台和以太坊2.0等区块链平台。
Wasm字节码具备通用性,理论上可以支持不同类型的网络应用。
发明内容
本发明针对现有技术中存在的区块链智能合约漏洞检测方法不成熟,跨平台智能合约检测技术缺失的问题,提出了一种基于符号执行的WASM智能合约漏洞检测方法。
具体步骤如下:
步骤一、针对待分析的区块链智能合约S,判断智能合约S是否为二进制WebAssembly字节码格式,如果是,则不作处理,进入步骤二;否则,智能合约S为源代码格式或者中间表示格式,根据其所属的区块链平台进行编译工具链选择,将智能合约S编译为WebAssembly字节码;
步骤二、根据规范标准,对智能合约S的WebAssembly字节码划分为不同区域,并在内存中构建各区域对应的可执行实例;
具体构建过程为:
首先,对智能合约S的二进制WebAssembly字节码进行合法性验证;
合法性的验证为:首先选取字节码的前4个字节,进行进制转换,判断其是否为WebAssembly标准中的魔数;如果是,则该智能合约S合法,通过验证;否则验证失败,提示错误信息,并中止进一步的漏洞分析。
然后,将通过验证的字节码按标准分为不同的区域;
标准选用自主流浏览器厂商组成的W3C社区团体制定的WebAssembly字节码规范。
所述的区域及其内容如下所示:
Import区:该区域声明宿主环境在实例化时提供的一系列import,包含函数导入、全局变量导入、内存导入和表导入。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京航空航天大学,未经北京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110989270.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种锂电池正极材料生产用匣钵自动摇匀装置
- 下一篇:循环回转输送线