[发明专利]基于神经网络的跨架构二进制函数相似性检测方法及系统有效

专利信息
申请号: 202011163538.6 申请日: 2020-10-27
公开(公告)号: CN112308210B 公开(公告)日: 2023-04-07
发明(设计)人: 魏强;武泽慧;黄辉辉;方磊;王红敏;王允超 申请(专利权)人: 中国人民解放军战略支援部队信息工程大学
主分类号: G06N3/0442 分类号: G06N3/0442;G06N3/0464;G06N3/084;G06F8/41
代理公司: 郑州大通专利商标代理有限公司 41111 代理人: 周艳巧
地址: 450000 河*** 国省代码: 河南;41
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 基于 神经网络 架构 二进制 函数 相似性 检测 方法 系统
【说明书】:

发明属于网络安全技术领域,特别涉及一种基于神经网络的跨架构二进制函数相似性检测方法及系统,包含:针对不同类型的二进制文件,遍历二进制文件函数列表,构建并优化函数控制流图;翻译程序基本块字节码获取中间表示,并生成基本块代码的语义嵌入向量;利用广度优先图遍历算法提取函数控制流图节点,依据节点的语义嵌入向量和控制流信息来获取函数嵌入向量;计算函数嵌入向量之间的余弦距离来度量函数相似性。本发明更利于代码中间表示,消除不同指令架构之间差异,降低跨架构代码相似性检测难度,降低扩展工作量和难度;其基于PV‑DM模型和图神经网络的函数嵌入过程,避免了人为偏见的引入;改进的图神经网络收敛速度更快,系统整体效率、准确度更高。

技术领域

本发明属于网络安全技术领域,特别涉及一种基于神经网络的跨架构二进制函数相似性检测方法及系统。

背景技术

同一源代码经不同编译器和优化配置,针对不同硬件平台,编译得到的二进制代码不尽相同,因此二进制代码相似性检测会遇到其特有的难题,即跨编译器、跨编译优化配置和跨指令架构检测难题。传统二进制代码相似性检测技术的主要思路是,首先为二进制代码片段抽象出与编译器、编译优化配置和指令架构无关的中间表示,例如标识符序列、抽象语法树或控制流图(Control Flow Graph,CFG),然后通过分析和比较中间表示的异同,度量代码间的相似性。其中,由于CFG是程序代码的一种高度抽象,具有跨语言的特性,使得无论是源代码还是二进制代码的相似性检测技术,大多依赖CFG作为中间表示。但由于图匹配算法的时间复杂度缺少多项式解,且多是两两匹配算法,在处理大规模任务时,计算量会随代码库规模成几何倍数增长。很长一段时间,这类技术的研究主要围绕CFG结构和图匹配算法的优化展开。

直到最近几年,神经网络技术的应用为该领域开启了新的研究方向,即利用神经网络为二进制代码生成嵌入向量,用向量间的距离表示代码相似度,这样突破了传统方法遇到的性能瓶颈。目前许多方法具有跨指令架构的特性,但在实际应用中,扩展的工作量巨大,因为需要针对指令架构的特点做单独分析。代码高级中间表示分析和比较的难度大、效率低。直接对CFG结构的比较和匹配算法存在开销巨大的问题,而过度优化CFG的顶点和结构虽然获得检测效率的提升,但可能损失重要的相似性特征。相似度模型可能引入人为偏见,现有研究多采用人工定义的代码特征构建中间表示,尤其是基于代码属性统计构建特征向量的方法,它们通常默认不同属性之间互不相关,且对相似性的贡献相同,而实际情况却不能保证这两点。

发明内容

为此,本发明提供一种基于神经网络的跨架构二进制函数相似性检测方法及系统,降低跨架构代码相似性检测难度,提升相似性检测系统的可扩展性。

按照本发明所提供的设计方案,一种基于神经网络的跨架构二进制函数相似性检测方法,包含如下内容:

针对不同类型的二进制文件,遍历二进制文件函数列表,构建并优化函数控制流图;

针对优化后的函数控制流图,翻译程序基本块字节码获取中间表示,并生成基本块代码的语义嵌入向量;

利用广度优先图遍历算法提取优化后的函数控制流图节点,依据节点的语义嵌入向量和控制流信息来获取函数嵌入向量;

计算函数嵌入向量之间的余弦距离,利用该余弦距离来度量函数相似度。

作为本发明基于神经网络的跨架构二进制函数相似性检测方法,进一步的,针对将二进制文件函数列表中每个函数的控制流图,分别执行基本块合并和选择性内联操作来优化函数控制流图。

作为本发明基于神经网络的跨架构二进制函数相似性检测方法,进一步地,基本块合并中,针对内存中非线性分布但顺序执行的连续基本块,依据基本块的出口和入口情形,在遍历函数的基本块中,将只有一个出口的基本块和该基本块后续中只有一个入口的基本块进行合并,若该基本块结尾是无条件跳转指令,则删除该跳转指令。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军战略支援部队信息工程大学,未经中国人民解放军战略支援部队信息工程大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202011163538.6/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top