本发明公开了一种基于深度学习和强化学习的多粒度代码漏洞检测方法,步骤如下:1)解析源代码,获取代码对应的中间代码表示;2)对中间代码进行切片,获取比源程序更小的代码段;3)使用代码分段表示方法将输入的代码段转化为低维连续的实值向量;4)将代码段的向量表示输入到基于深度学习的粗粒度代码漏洞检测模型中,判断代码段是否包含缺陷;5)构建基于强化学习的细粒度代码漏洞检测模型,预测含有缺陷的代码段中具体引发漏洞的代码行。本发明提出一种完整的多粒度代码漏洞检测框架,并首次将强化学习应用到细粒度代码漏洞检测领域,以及提出一种新的代码分段表示学习模型以充分利用程序的语义信息,提高了漏洞检测的准确度和实用性。
声明:
“基于深度学习和强化学习的多粒度代码漏洞检测方法” 该技术专利(论文)所有权利归属于技术(论文)所有人。仅供学习研究,如用于商业用途,请联系该技术所有人。
我是此专利(论文)的发明人(作者)