CN110232280A - 一种基于树结构卷积神经网络的软件安全漏洞检测方法 - Google Patents

一种基于树结构卷积神经网络的软件安全漏洞检测方法 Download PDF

Info

Publication number
CN110232280A
CN110232280A CN201910535369.5A CN201910535369A CN110232280A CN 110232280 A CN110232280 A CN 110232280A CN 201910535369 A CN201910535369 A CN 201910535369A CN 110232280 A CN110232280 A CN 110232280A
Authority
CN
China
Prior art keywords
model
training
convolutional neural
neural networks
neural network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201910535369.5A
Other languages
English (en)
Other versions
CN110232280B (zh
Inventor
危胜军
魏文媛
单纯
胡昌振
赵敬宾
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Institute of Technology BIT
Original Assignee
Beijing Institute of Technology BIT
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Institute of Technology BIT filed Critical Beijing Institute of Technology BIT
Priority to CN201910535369.5A priority Critical patent/CN110232280B/zh
Publication of CN110232280A publication Critical patent/CN110232280A/zh
Application granted granted Critical
Publication of CN110232280B publication Critical patent/CN110232280B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • G06F21/563Static detection by source code analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Probability & Statistics with Applications (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Virology (AREA)
  • Debugging And Monitoring (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种基于树形结构卷积神经网络的软件漏洞检测方法,分析源代码得到抽象语法树AST结构,提取AST结构中各结点的结点类型;构建包含embedding层的神经网络预处理模型,其输入为提取的结点类型,输出为结点类型的预测概率;利用结点类型进行神经网络训练;训练完成后,将embedding层输出的向量特征值作为卷积神经网络模型的输入,以源代码是否存在漏洞为标签,训练卷积神经网络模型作为代码分类器;对于待检测源代码,提取其AST结构中的结点类型,重新训练神经网络预处理模型,将embedding层输出的向量特征值输入卷积神经网络模型,得到漏洞检测结果。本发明能更好的提取代码中的特征信息,从而给出能全面的分析结果。

Description

一种基于树结构卷积神经网络的软件安全漏洞检测方法
技术领域
本发明涉及软件源代码中代码漏洞预测技术领域,尤其涉及一种基于树形结构卷积神经网络的软件漏洞检测方法。
背景技术
软件中的隐藏漏洞给攻击者提供了攻击入口,这些漏洞通常是由程序员在编程时遗留或处理不当的细微错误引起的。开源软件和代码重用的普遍存在也导致了漏洞的快速传播。漏洞检测模型能够检测到软件代码中存在的漏洞,软件开发者根据检测结果,可以针对那些漏洞存在几率大的模块进行二次审查,将有限的时间和经费有针对性的投入到那些存在漏洞可能性高的软件模块测试中,以此提高软件测试的效率。
研究者们提出了很多基于机器学习和深度学习的漏洞检测方法,这些方法以大量开源代码为数据源,对代码使用静态分析、动态分析或混合动态分析,提取代码的特征信息,得到可以喂给深度学习模型的输入,训练漏洞检测的分类器,取得了很好的成果。Hovsepyan et al.提出了一种将SVM与BOW相结合的模型,根据Java源码来预测代码中是否含有漏洞。分析Java代码得到一系列token,由BOW算法生成一系列token的向量特征表示,然后使用SVM模型去预测代码是否具有漏洞。Rebecca L.Russell et al.提出了一种基于代码token的卷积神经网络模型,通过词法分析器获取到C/C++源码的token序列,然后通过模型中的embedding层训练得到向量化特征表示,经过卷积神经网络完成对代码的漏洞预测。类似的基于代码token序列的分析方法还有Xinbo Ban et al.提出的基于BILSTM模型的漏洞分类器,使用SILSTM改善了RNN模型梯度消失的问题。
但是,现有的技术大多是基于语义特征提取的模型,通过词法分析器提取代码中特定标识符或者根据一些人为规定的规则去提取代码中的信息。这样的处理方式有两大缺陷:(1)代码与人类自然语言的一大显著区别就是,代码的语法结构特征比人类语言语法特征更加规范且容易捕捉,代码的语法结构也是组成代码特征信息的一大部分。只获取语义信息而忽视了语法结构是一大缺陷,不利于提取代码的特征信息;(2)目前自动提取代码语义信息的工具虽然存在,但是功能都不完善,这些工具都比较具有针对性,难以处理不同类型的代码。研究者需要实现自己的语义分析器来提取代码中的关键信息,这一研究耗费了大量时间,而且效果并不显著。
发明内容
有鉴于此,本发明提供了一种基于树结构卷积神经网络的漏洞检测分析方法,使用代码的语法树结构获取代码段的语法结构特性与语义特性,能更好的提取代码中的特征信息,从而能够给出能全面的分析结果。
为了解决上述技术问题,本发明是这样实现的:
一种基于树形结构卷积神经网络的软件漏洞检测方法,包括:
步骤一、分析源代码得到抽象语法树AST结构,提取AST结构中的每一个结点的结点类型;
步骤二、构建包含词嵌入层embedding的神经网络预处理模型;神经网络输入为从AST结构中提取的结点类型,神经网络输出为结点类型的预测概率向量;embedding层的输出为结点类型的向量表示,称为向量特征值;利用步骤一提取的结点类型进行神经网络训练;
步骤三、神经网络训练完成后,将embedding层输出的向量特征值作为卷积神经网络模型的输入,以步骤一所使用的源代码是否存在漏洞为标签,训练卷积神经网络模型作为代码分类器;
步骤四、对于待检测源代码,按照步骤一和步骤二重新训练神经网络预处理模型,训练完成后将embedding层输出的向量特征值输入卷积神经网络模型,得到漏洞检测结果。
优选地,所述神经网络预处理模型采用单隐藏层结构。
优选地,神经网络预处理模型的输入为数字表示的结点类型。
有益效果:
本发明使用代码的语法树结构获取代码段的语法结构特性与语义特性,采用神经网络获得能够更好表达代码中特征信息的向量特征值,然后利用这个向量特征值进行基于卷积神经网络的分类,从而能够给出更全面的分析结果。
附图说明
图1为本发明基于树形结构卷积神经网络的软件漏洞检测方法流程图;
图2为源代码转化为AST结构示意图。
具体实施方式
下面结合附图并举实施例,对本发明进行详细描述。
基于深度学习的模型取得了一定的成果,也显示了深度学习在漏洞检测领域具有的强大能力,但是他们分析处理源码的方式都忽略了代码本身的结构化特征,这不利于获取代码的全部特征信息。本发明首次提出将基于代码语法树结构的卷积神经网络应用到软件漏洞检测研究中,通过代码语法树结构获取代码的语法结构和语义信息,将特征通过神经网络模型进行预处理,得到语法树节点的向量特征表示(下文中的embedding层输出),然后使用卷积神经网络作为代码分类器,预测代码是否含有漏洞。
图1为本发明基于树形结构卷积神经网络的软件漏洞检测方法流程图,如图1所示,该方法包括以下步骤:
步骤一:建立AST结构数据集:分析源代码得到抽象语法树(AST)结构,提取AST结构中的每一个结点的结点类型。
本步骤中,使用Clag编译器分析得到源代码的AST结构,Clang将编译过程彼此分离成几个阶段,便于获取AST信息并且实现序列化,它提供了Clang bingding for python,使得可以直接在python环境中调用Clang API。
利用编译器得到代码的AST结构(如图2所示)以后,构造树遍历器,将Clang解析得到的层次化结构转为训练模型需要的数据集。本发明中,对所有AST树中的结点类型进行编号,采用序列号代表一个结点类型。序列号可以将每个结点用一个数字表示,方便后期对数据进行预处理时,将对树结构进行向量值化。
步骤二:训练神经网络预处理模型
建立神经网络预处理模型,神经网络包括输入层,词嵌入层(embedding),单隐藏层与输出层。输入为结点类型的数字表示,经embedding层转化为结点类型的向量特征表示,输出层为结点类型的预测概率向量。
embedding层得到的结果称为向量特征值。向量特征值由一组浮点数组成,一个结点类型用多少个浮点数表示,这个数值是模型的超参数,在模型训练过程中找到最适合的参数值。本发明输出给后续网络的正是这个向量特征值,这个向量特征值通过网络训练会不断更新,最终生成的向量特征值能较好的表达源代码的语法结构与语义特性。
神经网络输出层输出概率向量,该概率向量中每一位对应一个结点类型的概率值,选择概率值最大的位置记为1,作为模型预测结点类型的结果。举个例子,输入为表示结点类型的4,会先经embedding转换为向量特征值[0.34,0.24,0.56,0.34,0.56],然后这个向量特征值经过神经网络计算,得到概率向量,例如[0.00012,0.003,0.998,0.009,0.00124],选择概率值最大的位置记为1,则最后输出结点类型向量为00100。
本步骤中,对神经网络进行训练时,将步骤一提取的AST结构中的结点类型依次输入神经网络,或者组成一个矩阵输入到神经网络中,同时预先将结点类型序列号转换为结点类型向量,作为标签值;节点类型序列号和标签值组成训练样本,训练模型不断降低代价值,使得向量化的结果不断逼近树结构结点类型。神经网络完成迭代训练后,最后一轮训练得到的embedding层向量特征值输出给后端的卷积神经网络模型。
本实施例中使用批量梯度下降算法(BGD,Batch Gradient Descent)算法,batch_size为64,以0.03的学习率迭代1000,每迭代300次学习速率下降10%,由于最后一层使用softmax函数输出对应每个种类的概率值,所以代价函数J使用交叉熵来计算:
上式(1)中,M代表训练神经网络预处理模型的样本总数,C代表结点类型总数,Y_true代表真实标签,Y_pre代表模型预测值。
步骤三:训练卷积神经网络模型作为代码分类器
步骤二中得到的embedding层输出的向量特征值作为卷积神经网络模型的输入,以步骤一用于生成AST结构的源代码是否存在漏洞作为标签,训练卷积神经模型,使得模型不断学习判断代码是否有漏洞的能力。卷积神经网络依次包括输入层,embedding层,卷积层,池化层,全连接层与输出层。
通过训练模型要解决的是一个二分类问题,最后一层的激活函数为sigmoid,得到的输出结果是从0到1的一个概率值,使用的代价函数J为:
上式(2)中,M代表训练卷积神经网络的样本总数,Y_true代表真实标签,Y_pre代表模型预测值。
本实施例使用梯度优化算法Adam,学习速率初始值为0.003,每2000次下降10%。由于树结构大小的不确定性,每次训练一个样本,同时通过反向传播进行一次参数优化。为改善模型过拟合现象,使用正则化和Drop Out,其中正则化参数为0.001~0.003,结点保留率(keepprob)为0.6~0.9。其中,Drop Out是一种常见的模型调优手段,在训练过程中随机减少不同的神经单元,迫使模型在本次迭代时只能使用剩余的神经元完成训练,保证所有神经元都能受到有效训练。
步骤四:软件漏洞检测
对于待检测源代码,首先使用步骤一的方法将待检测源代码转化为AST结构,并提取其中各结点的结点类型;然后按照步骤二的方式根据结点类型重新训练神经网络预处理模型,获得语法树节点的向量特征表示,即embedding层输出的向量特征值,该向量特征值能较好的表达待检测源代码的语法结构与语义特性;将向量特征值输入步骤三得到的卷积神经网络模型,卷积神经网络模型输出结果为0-1的概率值,即漏洞检测结果。
至此,本流程结束。
本发明步骤三训练完成后,进一步将预测模型应用于测试集,并使用了一系列指标对模型进行了检测,使用的指标有Precision,F1score,F2score,Recall,Accuracy,TPR,FPR。其计算公式如下所示:
公式中,tp为true positive(真实值为真,预测值也为真),fp为false positive(真实值为假,预测值为真),tn为true negative(真实值为假,预测值为假),fn为falsenegative(真实值为假,预测值为真),详见下表1:
表1
真实值为positive 真实值为negative
预测值为positive True positive False positive
预测值为negative False negative True negative
在判断训练模型的效果最常用到的指标有精确率(Precision)、召回率(recall)和准确率(accuracy),在样本数据不平衡的情况下,仅使用这些指标不足以验证模型的优劣。用F-score来权衡精确率和召回率这两个指标,在精确率和召回率同样重要的情况下,赋予两者同样的权重,也就是F1-score。F2-score赋予召回率权重更大,也就是本发明模型在保证精确率的条件下,尽量的提升召回率。
通过选定不同的阈值,可以获取到模型的真正例率(TPR)与假正例率(FPR),以真正例率为y轴,假正例率为x轴绘制得到ROC曲线。ROC曲线越靠近左上角,证明模型的查全率越高。ROC_AUC是指ROC曲线与x轴所围面积的大小,面积越大说明模型效果越好,在样本不平衡的情况下,依然能够对模型做出合理的评价。
数据表明本发明在样本不平衡的情况下,也可以有效检测到代码漏洞,取得F1-score为0.839,F2-score为0.829,准确率为0.83。
综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (3)

1.一种基于树形结构卷积神经网络的软件漏洞检测方法,其特征在于,包括:
步骤一、分析源代码得到抽象语法树AST结构,提取AST结构中的每一个结点的结点类型;
步骤二、构建包含词嵌入层embedding的神经网络预处理模型;神经网络输入为从AST结构中提取的结点类型,神经网络输出为结点类型的预测概率向量;embedding层的输出为结点类型的向量表示,称为向量特征值;利用步骤一提取的结点类型进行神经网络训练;
步骤三、神经网络训练完成后,将embedding层输出的向量特征值作为卷积神经网络模型的输入,以步骤一所使用的源代码是否存在漏洞为标签,训练卷积神经网络模型作为代码分类器;
步骤四、对于待检测源代码,按照步骤一和步骤二重新训练神经网络预处理模型,训练完成后将embedding层输出的向量特征值输入卷积神经网络模型,得到漏洞检测结果。
2.如权利要求1所述的方法,其特征在于,所述神经网络预处理模型采用单隐藏层结构。
3.如权利要求1所述的方法,其特征在于,神经网络预处理模型的输入为数字表示的结点类型。
CN201910535369.5A 2019-06-20 2019-06-20 一种基于树结构卷积神经网络的软件安全漏洞检测方法 Active CN110232280B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910535369.5A CN110232280B (zh) 2019-06-20 2019-06-20 一种基于树结构卷积神经网络的软件安全漏洞检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910535369.5A CN110232280B (zh) 2019-06-20 2019-06-20 一种基于树结构卷积神经网络的软件安全漏洞检测方法

Publications (2)

Publication Number Publication Date
CN110232280A true CN110232280A (zh) 2019-09-13
CN110232280B CN110232280B (zh) 2021-04-13

Family

ID=67856896

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910535369.5A Active CN110232280B (zh) 2019-06-20 2019-06-20 一种基于树结构卷积神经网络的软件安全漏洞检测方法

Country Status (1)

Country Link
CN (1) CN110232280B (zh)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110990256A (zh) * 2019-10-29 2020-04-10 中移(杭州)信息技术有限公司 开源代码检测方法、装置及计算机可读存储介质
CN111274134A (zh) * 2020-01-17 2020-06-12 扬州大学 基于图神经网络的漏洞识别与预测方法、系统、计算机设备和存储介质
CN111460450A (zh) * 2020-03-11 2020-07-28 西北大学 一种基于图卷积网络的源代码漏洞检测方法
CN111523119A (zh) * 2020-04-26 2020-08-11 南开大学 漏洞检测的方法和装置、电子设备及计算机可读存储介质
CN111881028A (zh) * 2020-07-23 2020-11-03 深圳慕智科技有限公司 一种基于模型代码语法分析的神经网络自动生成方法
GB2587820A (en) * 2019-08-23 2021-04-14 Praetorian System and method for automatically detecting a security vulnerability in a source code using a machine learning model
CN112668013A (zh) * 2020-12-31 2021-04-16 西安电子科技大学 一种面向Java源码的语句级模式探索的漏洞检测方法
CN112764878A (zh) * 2021-01-13 2021-05-07 中科曙光(南京)计算技术有限公司 一种基于深度学习的大数据一体机容器集群风险预测方法
CN113608747A (zh) * 2021-08-18 2021-11-05 南京航空航天大学 一种基于图卷积神经网络的软件缺陷预测方法及终端
CN114065763A (zh) * 2021-11-24 2022-02-18 深圳前海环融联易信息科技服务有限公司 一种基于事件抽取的舆情分析方法、装置及相关组件
KR20220022752A (ko) * 2020-08-19 2022-02-28 국방과학연구소 시드 파일 생성 장치 및 그 방법
CN114201970A (zh) * 2021-11-23 2022-03-18 国家电网有限公司华东分部 一种基于语义特征抓取电网调度事件检测的方法和装置
CN117573084A (zh) * 2023-08-02 2024-02-20 广东工业大学 一种基于逐层融合抽象语法树的代码补全方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107220180A (zh) * 2017-06-08 2017-09-29 电子科技大学 一种基于神经网络语言模型的代码分类方法
CN107516041A (zh) * 2017-08-17 2017-12-26 北京安普诺信息技术有限公司 基于深度神经网络的WebShell检测方法及其系统
CN109214191A (zh) * 2018-09-18 2019-01-15 北京理工大学 一种利用深度学习预测软件安全漏洞的方法
CN109413028A (zh) * 2018-08-29 2019-03-01 集美大学 基于卷积神经网络算法的sql注入检测方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107220180A (zh) * 2017-06-08 2017-09-29 电子科技大学 一种基于神经网络语言模型的代码分类方法
CN107516041A (zh) * 2017-08-17 2017-12-26 北京安普诺信息技术有限公司 基于深度神经网络的WebShell检测方法及其系统
CN109413028A (zh) * 2018-08-29 2019-03-01 集美大学 基于卷积神经网络算法的sql注入检测方法
CN109214191A (zh) * 2018-09-18 2019-01-15 北京理工大学 一种利用深度学习预测软件安全漏洞的方法

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2587820A (en) * 2019-08-23 2021-04-14 Praetorian System and method for automatically detecting a security vulnerability in a source code using a machine learning model
GB2587820B (en) * 2019-08-23 2022-01-19 Praetorian System and method for automatically detecting a security vulnerability in a source code using a machine learning model
US11568055B2 (en) 2019-08-23 2023-01-31 Praetorian System and method for automatically detecting a security vulnerability in a source code using a machine learning model
CN110990256B (zh) * 2019-10-29 2023-09-05 中移(杭州)信息技术有限公司 开源代码检测方法、装置及计算机可读存储介质
CN110990256A (zh) * 2019-10-29 2020-04-10 中移(杭州)信息技术有限公司 开源代码检测方法、装置及计算机可读存储介质
CN111274134A (zh) * 2020-01-17 2020-06-12 扬州大学 基于图神经网络的漏洞识别与预测方法、系统、计算机设备和存储介质
CN111274134B (zh) * 2020-01-17 2023-07-11 扬州大学 基于图神经网络的漏洞识别与预测方法、系统、计算机设备和存储介质
CN111460450A (zh) * 2020-03-11 2020-07-28 西北大学 一种基于图卷积网络的源代码漏洞检测方法
CN111523119A (zh) * 2020-04-26 2020-08-11 南开大学 漏洞检测的方法和装置、电子设备及计算机可读存储介质
CN111881028A (zh) * 2020-07-23 2020-11-03 深圳慕智科技有限公司 一种基于模型代码语法分析的神经网络自动生成方法
KR102374034B1 (ko) * 2020-08-19 2022-03-15 국방과학연구소 시드 파일 생성 장치 및 그 방법
KR20220022752A (ko) * 2020-08-19 2022-02-28 국방과학연구소 시드 파일 생성 장치 및 그 방법
CN112668013B (zh) * 2020-12-31 2023-04-07 西安电子科技大学 一种面向Java源码的语句级模式探索的漏洞检测方法
CN112668013A (zh) * 2020-12-31 2021-04-16 西安电子科技大学 一种面向Java源码的语句级模式探索的漏洞检测方法
CN112764878A (zh) * 2021-01-13 2021-05-07 中科曙光(南京)计算技术有限公司 一种基于深度学习的大数据一体机容器集群风险预测方法
CN112764878B (zh) * 2021-01-13 2024-04-23 中科曙光(南京)计算技术有限公司 一种基于深度学习的大数据一体机容器集群风险预测方法
CN113608747A (zh) * 2021-08-18 2021-11-05 南京航空航天大学 一种基于图卷积神经网络的软件缺陷预测方法及终端
CN113608747B (zh) * 2021-08-18 2024-04-02 南京航空航天大学 一种基于图卷积神经网络的软件缺陷预测方法及终端
CN114201970A (zh) * 2021-11-23 2022-03-18 国家电网有限公司华东分部 一种基于语义特征抓取电网调度事件检测的方法和装置
CN114065763A (zh) * 2021-11-24 2022-02-18 深圳前海环融联易信息科技服务有限公司 一种基于事件抽取的舆情分析方法、装置及相关组件
CN117573084A (zh) * 2023-08-02 2024-02-20 广东工业大学 一种基于逐层融合抽象语法树的代码补全方法
CN117573084B (zh) * 2023-08-02 2024-04-12 广东工业大学 一种基于逐层融合抽象语法树的代码补全方法

Also Published As

Publication number Publication date
CN110232280B (zh) 2021-04-13

Similar Documents

Publication Publication Date Title
CN110232280A (zh) 一种基于树结构卷积神经网络的软件安全漏洞检测方法
Dietterich et al. A comparative review of selected methods for learning from examples
CN107229563B (zh) 一种跨架构的二进制程序漏洞函数关联方法
CN109697162A (zh) 一种基于开源代码库的软件缺陷自动检测方法
CN109214191A (zh) 一种利用深度学习预测软件安全漏洞的方法
CN106529605B (zh) 基于免疫理论的卷积神经网络模型的图像识别方法
CN104809069A (zh) 一种基于集成神经网络的源代码漏洞检测方法
CN108665005A (zh) 一种利用dcgan提高基于cnn图像识别性能的方法
CN109165688A (zh) 一种安卓恶意软件家族分类器构建方法及其分类方法
CN109886021A (zh) 一种基于api全局词向量和分层循环神经网络的恶意代码检测方法
CN102411687B (zh) 未知恶意代码的深度学习检测方法
CN106997474A (zh) 一种基于深度学习的图节点多标签分类方法
CN116361801B (zh) 基于应用程序接口语义信息的恶意软件检测方法及系统
CN110489968A (zh) 基于RNN和CNN的Android恶意软件检测方法及系统
CN114297654A (zh) 一种源代码层级的智能合约漏洞检测方法及系统
CN112364352B (zh) 可解释性的软件漏洞检测与推荐方法及系统
CN116049831A (zh) 一种基于静态分析和动态分析的软件漏洞检测方法
CN108763096A (zh) 基于深度信念网络算法支持向量机的软件缺陷预测方法
CN108595165A (zh) 一种基于代码中间表示的代码补全方法、装置及存储介质
CN112270441A (zh) 建立自闭症儿童康复效果预测模型的方法、预测自闭症儿童康复效果的方法及系统
CN108229170A (zh) 利用大数据和神经网络的软件分析方法和装置
CN110162972A (zh) 一种基于语句联合编码深度神经网络的uaf漏洞检测方法
CN115146279A (zh) 程序漏洞检测方法、终端设备及存储介质
CN116150757A (zh) 一种基于cnn-lstm多分类模型的智能合约未知漏洞检测方法
CN113868650B (zh) 基于代码异质中间图表示的漏洞检测方法与装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant