[发明专利]源代码检测方法、装置、计算机设备和存储介质在审
申请号: | 202211647786.7 | 申请日: | 2022-12-21 |
公开(公告)号: | CN116257856A | 公开(公告)日: | 2023-06-13 |
发明(设计)人: | 袁俊杰;王波;张英伟;韩世龙;崔恩泽 | 申请(专利权)人: | 国科华盾(北京)科技有限公司 |
主分类号: | G06F21/57 | 分类号: | G06F21/57;G06F21/56;G06N3/0464;G06N3/08 |
代理公司: | 北京华进京联知识产权代理有限公司 11606 | 代理人: | 安孔川 |
地址: | 100089 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 源代码 检测 方法 装置 计算机 设备 存储 介质 | ||
本申请涉及一种源代码检测方法、装置、计算机设备、存储介质和计算机程序产品。所述方法包括:获取待检测的源代码,基于预设敏感代码提取规则,从待检测的源代码中提取代码语句,通过程序依赖图得到上下文关联的代码语句对应的行数标识;针对每个代码语句,根据代码语句在程序依赖图中的上下文关联代码语句对应的行数标识,在各代码语句中进行前向提取和后向提取,生成代码片段;针对每个代码片段,根据预设像素字典对代码片段进行像素转换处理,得到代码图像数据;将各代码图像数据输入预先训练的代码检测模型,得到待检测的源代码对应的漏洞检测标识。采用本方法能够提高代码检测模型进行漏洞检测的准确性。
技术领域
本申请涉及人工智能技术领域,特别是涉及一种源代码检测方法、装置、计算机设备、存储介质和计算机程序产品。
背景技术
随着互联网应用技术的发展,无论是操作系统、应用软件、网络设备还是业务系统的源代码都可能因为开发周期短、软件程序设计错误、安全测试不充分等原因导致存在漏洞问题,由于攻击者可以利用漏洞来进行恶意操作,导致出现源代码被非法更改或者信息被窃取的问题。
传统的漏洞检测方法能够依赖于技术人员构建的漏洞模式库来进行漏洞检测,随着软件复杂性持续增加,基于深度学习的漏洞检测技术主要把源代码转换成文本序列,将文本序列作为训练集输入循环神经网络模型中,自动进行提取特征,得到能够检测出源代码漏洞的神经网络模型,通过神经网络模型进行漏洞检测。
然而,基于深度学习的漏洞检测技术只提取了源代码对应的文本序列,根据文本序列进行训练的神经网络模型,在识别源代码进行漏洞检测时,由于识别特征过于单一,因此漏洞检测准确性不高。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高检测源代码漏洞准确性的源代码检测方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种源代码检测方法。所述方法包括:
获取待检测的源代码,基于预设敏感代码提取规则,从所述待检测的源代码中提取代码语句,并生成每个所述代码语句对应的程序依赖图,所述程序依赖图包含所述代码语句对应的上下文关联代码语句、以及代码行数标识;
针对每个所述代码语句,根据所述代码语句在所述程序依赖图中的上下文关联代码语句对应的行数标识,在各所述代码语句中进行前向提取和后向提取,生成代码片段;
针对每个所述代码片段,根据预设像素字典对所述代码片段进行像素转换处理,得到代码图像数据;
将各所述代码图像数据输入预先训练的代码检测模型进行检测,得到所述待检测的源代码对应的漏洞检测标识,所述漏洞检测标识包括正常数据标识和漏洞数据标识。
在其中一个实施例中,所述针对每个所述代码语句,根据所述代码语句在所述程序依赖图中的上下文关联代码语句对应的行数标识,在各所述代码语句中进行前向提取和后向提取,生成代码片段,包括:
针对每个所述代码语句,根据所述代码语句在所述程序依赖图中的上下文关联代码语句对应的代码行数标识,分别进行前向切片处理和后向切片处理,得到所述代码语句对应的前向切片序列和后向切片序列;
根据所述前向切片序列和所述后向切片序列,在各所述代码语句中进行前向提取和后向提取,得到多个提取后的目标代码语句,将各所述目标代码语句进行拼接,生成所述代码语句对应的代码片段。
在其中一个实施例中,所述针对每个所述代码片段,根据预设像素字典对所述代码片段进行像素转换处理,得到代码图像数据,包括:
针对每个所述代码片段,根据预设像素字典,对所述代码片段中的各字符进行像素转换,得到所述代码片段对应的三维像素矩阵;
对所述三维像素矩阵进行归一化处理,得到代码图像数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国科华盾(北京)科技有限公司,未经国科华盾(北京)科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211647786.7/2.html,转载请声明来源钻瓜专利网。