买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
申请/专利权人:烟台大学
摘要:本发明属于网络安全技术领域,具体涉及基于关键路径的智能合约整数溢出漏洞检测方法、系统,通过对关键路径进行过滤后,基于优先级选择符号执行的路径,从而使得符号执行快速接近关键指令,避免不必要的路径探索,提高对可能出现整数溢出漏洞的关键路径的探索效率;同时进行污点分析,识别有效整数溢出漏洞,以减少误报情况;根据表达式的类型,有针对性地进行整数溢出漏洞检测,以更全面地识别整数溢出漏洞。
主权项:1.一种基于关键路径的智能合约整数溢出漏洞检测方法,其特征在于,包括以下步骤:S1:根据智能合约字节码建立控制流图,将控制流图中含有关键指令的基本块作为关键节点,获取与关键指令相关的连续指令所在切片,构建切片集,筛选切片集中包含关键参数指令的切片,根据切片分支数量优先遍历原则,进行探索后,得到若干条关键路径,组成关键路径集;S2:关键路径集经重复路径和最长路径筛选后,得到候选路径集,具体为:基于关键指令,如果待筛选路径是另一条路径的子集,则过滤掉所述待筛选路径;保留包含关键指令数量、分支条件数量分别大于关键指令数量阈值、分支条件数量阈值的关键路径;S3:候选路径集中的关键路径根据包含未访问的关键节点的数量由多到少的顺序进行优先级排序,按照优先级,对每一条关键路径进行符号执行,记录路径约束,基于污点分析,检测整数溢出漏洞;所述基于污点分析,检测整数溢出漏洞,包括:(1)确定表达式类型:从堆栈中获取两个操作数,根据SIGNEXTEND指令和AND指令,确定两个操作数的类型,基于两个操作数的类型,确定表达式的类型;(2)检测整数溢出点:当符号执行到ADD、MUL或SUB指令,若污点源引入的污点根据传播规则污染ADD、MUL或SUB指令中的至少一个操作数时,则根据表达式的类型,建立约束表达式,若存在满足约束表达式的解,则将污染的ADD、MUL或SUB指令记为整数溢出点;(3)识别污点汇集点:若记为整数溢出点的所述污染的ADD、MUL或SUB指令中的污点,传播至污点汇集点时,则所述整数溢出点为有效整数溢出漏洞。
全文数据:
权利要求:
百度查询: 烟台大学 基于关键路径的智能合约整数溢出漏洞检测方法、系统
免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。