[发明专利]一种用于源代码漏洞检测的代码属性图压缩方法及装置有效
申请号: | 202111637333.1 | 申请日: | 2021-12-30 |
公开(公告)号: | CN113987522B | 公开(公告)日: | 2022-05-03 |
发明(设计)人: | 高翠芸;陈玉盼;王轩;刘川意;廖清;韩培义;陈雨佳 | 申请(专利权)人: | 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) |
主分类号: | G06F21/57 | 分类号: | G06F21/57;G06F21/56 |
代理公司: | 深圳市添源创鑫知识产权代理有限公司 44855 | 代理人: | 朱丽萍 |
地址: | 518000 广东省深圳市南*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 用于 源代码 漏洞 检测 代码 属性 压缩 方法 装置 | ||
本发明公开了一种用于源代码漏洞检测的代码属性图压缩方法及装置,所述方法包括如下步骤:根据代码属性图计算基于前
技术领域
本发明涉及软件漏洞检测方法,特别是涉及一种用于源代码漏洞检测的代码属性图压缩方法及装置。
背景技术
软件漏洞是指在软件设计、开发、配置过程中引起的错误或者缺陷,且一般不会影响程序的正常运行,但在某些情况下会被他人恶意利用对软件系统进行攻击,最终导致系统崩溃、数据泄露、被植入危险代码等后果。目前已有的自动化漏洞检测技术,用到的方法包括但不限于静态分析、动态分析、符号执行、机器学习等,且基于软件静态分析结构图和深度学习的模型层出不穷,虽然这些方法在相关数据集上已经取得了较好的结果,但是它们依然面临着代码图结构表示复杂的主要挑战。
已有的基于代码图结构的漏洞检测技术,大多都是将代码的数据流图、控制流图、程序依赖图、抽象语法树等结合起来构成综合属性图,往往结构复杂、时空效率低,难以应用到实际的软件项目中。且已存的很多方法将代码属性图假设成同构图,忽略了代码中不同节点类型代表的语义信息。这些都是基于代码图结构的源代码漏洞检测任务所面临的问题。
发明内容
本发明针对上述问题,提供了一种用于源代码漏洞检测的代码属性图压缩方法、装置及计算机存储介质。通过在尽可能保持源代码属性图的节点属性和结构特征的情况下降低其复杂度,从而提高后续模型训练的时空效率。
本发明的第一方面,提供了一种用于源代码漏洞检测的代码属性图压缩方法,所述方法包括如下步骤:
根据代码属性图节点计算基于前
对节点邻域信息增益进行局部归一化处理;
将归一化处理后的节点邻域信息增益低的节点组成候选删除节点集合,判断候选删除节点集合中的候选删除节点是否满足:当删除候选删除节点及其相连的所有边后,图的连通分量增加,若是,则将候选删除节点作为割点从候选删除节点集合中移除,最终得到删除节点集合;
从代码属性图中去掉删除节点集合中的节点以及与节点相连的边,得到代码属性压缩图。
本发明的进一步技术方案为:计算基于前
其中,、
本发明的进一步技术方案为:对节点邻域信息增益进行局部归一化处理,具体表达式为:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院),未经哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院)许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111637333.1/2.html,转载请声明来源钻瓜专利网。