首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明公布】基于静态分析与模糊测试结合的智能合约漏洞检测方法_烟台大学_202410090931.9 

申请/专利权人:烟台大学

申请日:2024-01-23

公开(公告)日:2024-04-30

公开(公告)号:CN117951712A

主分类号:G06F21/57

分类号:G06F21/57;G06F11/36;G06F21/56

优先权:

专利状态码:在审-实质审查的生效

法律状态:2024.05.17#实质审查的生效;2024.04.30#公开

摘要:本发明涉及网络安全技术领域,具体为基于静态分析与模糊测试结合的智能合约漏洞检测方法;该漏洞检测方法,首先基于关键变量静态提取函数调用序列,以引导产生符合交易序列的测试用例;然后,基于函数调用序列生成初始测试用例,接着将测试用例进行交叉变换和经函数层面的变异处理和交易层面的变异处理,生成高质量的变异测试用例;最后,根据测试预言,利用变异测试用例遍历智能合约执行路径,得到漏洞检测结果;该检测方法,与现有工具相比,具有较高的代码覆盖率,能检测到更多数量的漏洞,且检测效果更为准确,平均准确率提高了约10%,同时平均代码覆盖率比目前较为先进的模糊测试工具提高了约14%。

主权项:1.一种基于静态分析与模糊测试结合的智能合约漏洞检测方法,其特征在于,包括如下操作:S1、获取待检智能合约的控制流程图,将所述控制流程图中含有关键指令的基本块,作为关键块;获取所述控制流程图中,包含有所述关键块的路径,得到关键路径;所有关键路径,形成了关键路径集;S2、遍历所述关键路径集中,每个关键路径上的所有基本块,获取当前基本块中PUSH4指令的操作数,得到当前函数选择器;所有函数选择器按照函数调用顺序进行排列,得到函数调用序列;S3、基于所述函数调用序列中,当前函数选择器对应函数的输入参数类型和输入参数大小,得到当前初始测试用例;所有初始测试用例,形成了初始测试用例集;获取所述初始测试用例集中,每个初始测试用例的代码与分支覆盖率;按照代码与分支覆盖率从大到小的顺序,将相邻初始测试用例进行相同位置处内容的交叉互换处理,得到交叉测试用例组;所有交叉测试用例组,形成了交叉测试用例集;所述交叉测试用例集中,每个交叉测试用例经函数层面的变异处理和交易层面的变异处理,得到变异测试用例集;S4、基于测试预言,所述变异测试用例集中,所有变异测试用例遍历所述待检智能合约的执行路径,得到漏洞检测结果。

全文数据:

权利要求:

百度查询: 烟台大学 基于静态分析与模糊测试结合的智能合约漏洞检测方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。

相关技术
相关技术
相关技术