[发明专利]基于知识图谱的漏洞代码图谱构建及代码漏洞检测方法有效
申请号: | 202210595809.8 | 申请日: | 2022-05-30 |
公开(公告)号: | CN114692155B | 公开(公告)日: | 2022-08-23 |
发明(设计)人: | 王晓东;王健;魏志强;李凯航 | 申请(专利权)人: | 中国海洋大学 |
主分类号: | G06F21/56 | 分类号: | G06F21/56;G06F16/36;G06F8/41 |
代理公司: | 青岛华慧泽专利代理事务所(普通合伙) 37247 | 代理人: | 赵梅 |
地址: | 266100 山*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 知识 图谱 漏洞 代码 构建 检测 方法 | ||
本发明属于网络安全技术领域,公开了基于知识图谱的漏洞代码图谱构建及代码漏洞检测方法,本发明首先生成源代码的代码图谱,然后基于漏洞模式、数据依赖、控制依赖,从源代码漏洞图谱中提取漏洞代码子图,得到标注数据集,然后从漏洞代码子图中提取六种特征,整合得到漏洞代码子图的向量表示,最后将漏洞代码子图的向量表示输入到分类模型进行训练,利用标签信息对分类模型进行优化,生成漏洞代码检测模型。漏洞代码检测模型能够对漏洞代码进行多分类漏洞检测,保证在软件开发过程中代码的安全性。
技术领域
本发明属于网络安全技术领域,特别涉及一种基于知识图谱的漏洞代码图谱构建及代码漏洞检测方法。
背景技术
随着信息化时代的到来,计算机系统广泛使用,各个平台软件的质量参差不齐,良莠不齐,软件中往往隐藏了严重的安全漏洞。这些漏洞通常是由于软件开发人员在编写代码时使用了不规范的编程模式引起的。这些漏洞一旦被攻击者利用,会严重破坏系统的稳定性和安全性,因此,针对软件的安全性考量变得十分重要。由于现有的开源软件和代码复用的风气盛行,这些带有缺陷和漏洞的代码一旦被公开开源出去,会得到迅速的传播,很可能造成某一领域的重大软件安全事故。事实证明,软件代码漏洞无论在政治上、经济上、军事上都占有举足轻重的地位,一旦被恶人利用,讲给国家安全带来巨大的威胁。因此,软件代码安全性评估日益受到个人、组织以及国家的重视。
针对上述问题和现状,近几年出现许多代码漏洞检测相关的研究和方法。传统的代码漏洞检测方法基于模式匹配的方式,不能够获取足够的漏洞代码相关的特征。也有的研究从源代码文件的角度出发,以整个源代码文件或代码中的函数为粒度,结合机器学习模型提取漏洞代码的特征,由于研究粒度较粗,引入了过多的噪声,导致提取到的特征不够细致全面。有的研究方法只关注单一的代码漏洞的检测,不能够识别多种漏洞类型。
综上所述,目前并没有一种代码漏洞检测方法,能够细粒度的,自动对漏洞特征进行提取,并对多种漏洞类型进行检测。
发明内容
针对现有技术存在的不足,本发明提供一种基于知识图谱的漏洞代码图谱构建及代码漏洞检测方法,从研究程序源代码的角度出发,构建源代码知识图谱,从源代码知识图谱中提取漏洞代码子图,然后利用词向量模型对漏洞代码进行向量化表示,最后利用深度学习模型对漏洞特征进行自动提取,得到漏洞代码检测模型,能够对漏洞代码进行多分类漏洞检测,从而在软件开发过程中保证代码的安全性。
为了解决上述技术问题,本发明采用的技术方案是:
首先,本发明提供一种基于知识图谱的漏洞代码图谱构建方法,包括以下步骤:
S1、获取漏洞代码相关信息:包括漏洞源代码文件、漏洞发布日期、漏洞补丁方案、漏洞所处的代码仓库地址、代码仓库提交日志、代码仓库issue信息;
S2、对漏洞源代码文件的处理:将漏洞源代码文件处理成抽象语法树,利用抽象语法树的深度遍历算法,从抽象语法树中提取实体、关系信息,构建源代码图谱,进而抽取生成漏洞代码子图;
S3、对漏洞代码相关文字信息的处理:基于获取到的漏洞代码相关信息数据,利用自然语言处理技术,从代码文档、issue、补丁方案中提取出与代码相关的实体节点和实体间关系信息,保存记录到数据库中;
S4、对前两部分的到的实体和关系进行实体关系融合:通过步骤S1可以得到源代码实体关系,通过步骤S2得到文档实体关系,将两者进行实体关系融合,整合源代码和文档中的信息;
S5、构造标注数据集D:得到漏洞代码子图以后,将漏洞代码子图和爬取的数据进行对齐,对每一个漏洞代码子图进行人工标注,对于有漏洞的代码子图标注上对应的漏洞类型,没有漏洞的代码子图标注0。
进一步的,步骤S2的具体步骤如下:
S21、处理漏洞源代码文件,提取源代码文件的抽象语法树;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国海洋大学,未经中国海洋大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210595809.8/2.html,转载请声明来源钻瓜专利网。