CN113239358A - 基于知识图谱的开源软件漏洞挖掘方法 - Google Patents

基于知识图谱的开源软件漏洞挖掘方法 Download PDF

Info

Publication number
CN113239358A
CN113239358A CN202110264728.5A CN202110264728A CN113239358A CN 113239358 A CN113239358 A CN 113239358A CN 202110264728 A CN202110264728 A CN 202110264728A CN 113239358 A CN113239358 A CN 113239358A
Authority
CN
China
Prior art keywords
knowledge
vulnerability
graph
open source
model
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.)
Pending
Application number
CN202110264728.5A
Other languages
English (en)
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.)
Southeast University
Original Assignee
Southeast University
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 Southeast University filed Critical Southeast University
Priority to CN202110264728.5A priority Critical patent/CN113239358A/zh
Publication of CN113239358A publication Critical patent/CN113239358A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/36Creation of semantic tools, e.g. ontology or thesauri
    • G06F16/367Ontology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Animal Behavior & Ethology (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明提供基于知识图谱的开源软件漏洞挖掘方法,将知识表示学习与图卷积神经网络相结合,给开源项目提供漏洞发现与预测工具,从而保证开源项目组件调用的安全性。首先,本发明通过开源软件领域知识本体构建知识图谱,实体类包括了项目、依赖库、项目版本、漏洞ID,缺陷ID等。然后分析了将图模型方法应用于软件漏洞领域知识实体可行性,为软件漏洞挖掘提供理论基础。最后提出知识表示学习与图卷积神经网络相结合的方法,将项目中实体信息、结构性特征等历史数据信息作为训练数据训练图卷积神经网络的模型,用于软件漏洞的发现与预测。为提高模型的训练效率,使用知识表示学习模型嵌入实体的结构性特征,从而更高效、精确地发掘出项目漏洞信息。

Description

基于知识图谱的开源软件漏洞挖掘方法
技术领域
本发明涉及属于群智化软件开发技术领域,特别是涉及基于知识图谱的开源软件漏洞挖掘方法。
背景技术
传统的漏洞挖掘方法主要目标是检测其源代码、可执行代码是否存在有可能被利用的缺陷。基于源代码的漏洞挖掘通常基于词法分析、语法分析、语义分析等进一步分析数据流、控制流、控制流,由于低扩展性、高误报率和高漏报率等问题的存在,无法满足复杂软件的安全性分析需求。随着人工智能产业的兴起,大量机器学习方法被尝试用于解决软件漏洞挖掘问题,为解决传统软件漏洞挖掘的瓶颈提供了新思路。向量是机器学习模型的输入,所以需要将多源数据转换成能够蕴含漏洞特征的表示形式,而常见的表示形式有代码度量、Token度量、抽象语法树等。
图模型是一种更为抽象复杂的表示形式,图的顶点之间是多对多的关系,并且不具备明确的层次划分。因此,基于图的漏洞挖掘研究可以提供代码、项目等的结构信息,包含了更加丰富的语法、语义特征,对结构性数据有很好的预测能力。通过同时考虑代码的结构、控制流和依赖关系许多漏洞才能被充分发现。但是由于图的生成过程复杂、开销大,该类的时间算法复杂度与空间复杂度往往会非常高,如果从具体的代码等微观角度对软件漏洞进行分析,时间空间上的复杂度通常难以让人接受。
知识图谱通常由许多有独立意义的节点和边组成,节点用于表示实体,诸如软件项目id、漏洞id或任何用户定义的实体类型,而边用于表示两个不同实体之间的关系。节点和边都具有各种属性来描述内部的特征,例如,CVE 类型节点的ID、名称、发布日期、对应的CWE ID等。许多开源项目中通过使用公共库等行为减少开发成本,但这种行为会导致潜在漏洞的多次传播,指数数量级的开源项目直接或间接受到漏洞的影响。从整体上来说,项目、组件等实体往往被视为依赖方,他们之间关系转换为有向边。然后,漏洞传播分析问题变成有向图上相关路径研究的问题,那么根据有向图模型找到受开源项目网络中的漏洞影响的所有关键代码类等是本发明的技术问题之一。基于本文之前构建的开源软件漏洞知识图谱的结构性数据,研究如何将知识图谱中的软件漏洞及其关系嵌入到语义向量空间中,如何利用知识图谱实体和关系的向量表示进行知识获取和推理,实现开源软件的漏洞挖掘是本发明的技术问题之一。
为了挖掘开源软件项目中的漏洞,保证开源软件项目的质量,本发明从项目、组件、错误、缺陷等宏观角度对软件漏洞进行研究,发现现有项目漏洞,再与传统的漏洞挖掘方法结合。因此,本发明开发新的漏洞挖掘方法用于软件项目的漏洞挖掘具有重要的理论意义与实际应用价值。
发明内容
为解决上述问题,本发明提出了基于知识图谱的开源软件漏洞挖掘方法,基于知识表示学习和图卷积网络集合的方法来实现对开源软件项目中的漏洞挖掘。这种方法给出了一种新的漏洞挖掘思路,能够与传统的漏洞挖掘方法进行结合,拥有更好的准确度,对于漏洞扩散分析,组件依赖管理和漏洞关系推断是非常有帮助的。
本发明提供基于知识图谱的开源软件漏洞挖掘方法,具体步骤如下:
(1)开源软件漏洞知识图谱构建;
通过本体模型对CVE、CWE数据库和GitHub上的java项目数据匹配,抽取关系三元组,构建开源软件漏洞知识图谱;
(2)漏洞链接关系发现及预测;
通过分析开源组件漏洞传播问题,将该类漏洞问题转变成有向图问题,漏洞发现和预测可使用图模型的方法解决,使用知识表示学习和图卷积神经网络结合的方式,完成对漏洞的发现和预测。
作为本发明进一步改进,步骤(1)中每个项目有不同版本号,CVE则是针对某一个版本号二发布,并且CVE从属于一个CWE,据此,构建出一个有向图。
作为本发明进一步改进,步骤(1)具体如下:
基于构建的开源软件漏洞知识图谱,将知识图谱中的实体及其关系嵌入到语义向量空间,将数据的结构关联与结构性特征进行向量表示,从而进行知识获取和推理,知识表示学习是依据实体间平移不变性,该方法基本过程是,在同一个特征空间Rk中,头实体的向量表示h与关系的向量表示r之和与尾实体的向量表示t越接近越好,即h+r=t。为了增强知识表示的区分能力,使用来最大间隔法来优化了目标函数;
Figure RE-GDA0003093566720000031
每组样本(h,r,t)∈S构造一组负样本(h′,t′,r)∈S′,知识表示学习模型旨在将知识图谱中的三元组数据嵌入到低纬向量空间,同时保留数据结构特征,使用BGD梯度下降法对数据进行训练,防止模型在训练样本中的过拟合,基于训练好的知识表示模型,使用连接预测任务实现对开源软件漏洞发现与预测,连接预测本质是补全一个三元组(h,r,t),其中h(t)缺失或不确定,那么从已有的历史数组中进行预测,一个项目中使用某些带有缺陷的组件,那么通过特定的使用方式,组件缺陷会被继承和扩大,使用知识表示学习的方法可完成对缺陷的组件的预测;
知识表示学习是具有可解释的性的,但也是具有局限的,针对一对多或者多对一等多关系问题中,该方法做链接预测的效果不佳,无法用简单的矢量运算来解决;
如果一个项目版本存在多个漏洞或不存在已知漏洞,知识表示学习模型都只会得到运算最接近的一个漏洞结果,显然与主观不符,这类关系不能保证实体的平移不变性,因此依赖向量运算的链接预测结果准确率和回召率较差,因此,图卷积神经网络中对于每个实体,从它自身和相邻实体处获取特征信息,经过训练后,使得每个节点都能蕴含周围节点的特征,图卷积神经网络层次之间传播采用的函数如下:
Figure RE-GDA0003093566720000032
其中,
Figure RE-GDA0003093566720000033
是A加上单位矩阵I,
Figure RE-GDA0003093566720000034
Figure RE-GDA0003093566720000035
度矩阵。H(l)是第l层的特征,σ是非线性激活函数;
将知识表示学习模型的嵌入向量作为图卷积神经网络的输入,假设使用 average()函数,那么对所有的节点进行同样的操作后,将这些计算得到的平均值输入到神经网络中,实际操作中,使用比average()函数更复杂的聚合函数,最后针对带标签的样本计算交叉熵,loss函数如下:
Figure RE-GDA0003093566720000041
通过图卷积神经网络训练出的模型,再解决多关系问题上具有很好的效果,基于此模型,对给定使用了组件的开源项目的相关信息,给以判断是否存在漏洞,并给出最相关的漏洞报告信息进行提示,即可以完成对开源项目的漏洞发现和预测,开发者可以针对具体的漏洞问题进行解决。
本发明通过深入分析开源软件生态系统中的项目特点和依赖关系,从知识表示学习和图卷积网络集合的方法来实现对开源软件项目中的漏洞挖掘。具体而言,本发明主要包括一系列流程。首先是开源软件漏洞知识图谱构建,为了全面分析漏洞,需要集成多种信息来源并将其链接在一起。本发明通过构建CVE本体、CWE本体、Github本体、Maven本体,将不同类型的本体以及相关的属性和关系被映射到图数据库中的内置节点,属性和关系中。接着,开源组件漏洞传播分析,本文将开源组件漏洞传播问题转变成有向图进行分析,通过分析漏洞传播的路径,以充分讨论在多个开源项目中通过多次调用传播的漏洞的行为。采用广度优先的算法、短路径优先算法搜索可能存在的漏洞组件。此外,使用以最少的阻塞操作完成目标项目的漏洞修复。最后采用知识表示学习和图卷积神经网络相结合的方法,用于实现开源软件漏洞的发现与预测等任务。并使用获取的现实数据应用与三元组分类,链接预测等任务对本文提出的方法进行验证。本发明提出的方法基于本体模型的开源软件漏洞知识图谱构建方法用于开源软件漏洞发现与预测等任务,此外,本发明提出的方法能在大规模的开源软件漏洞发现与预测取得更好的准确度和效率。
附图说明
图1 基于知识图谱的开源软件漏洞挖掘技术路线图;
图2 软件项目本体示意图;
图3 GCN图卷积神经网络示意图。
具体实施方式
下面结合附图与具体实施方式对本发明作进一步详细描述:
本发明要解决的技术问题是提供基于知识图谱的开源软件漏洞挖掘方法,基于知识表示学习和图卷积网络集合的方法来实现对开源软件项目中的漏洞挖掘。这种方法给出了一种新的漏洞挖掘思路,能够与传统的漏洞挖掘方法进行结合,拥有更好的准确度,对于漏洞扩散分析,组件依赖管理和漏洞关系推断是非常有帮助的。
开源软件的漏洞挖掘主要任务是检测项目的源代码、可执行代码是否存在有可能被利用的缺陷。根据组件重用、库依赖关系、版本升级、历史缺陷记录等抽取出实体与关系以构建知识图谱,从而能够基于知识图谱为软件项目开发提供漏洞发现及预测的工具,整体实施过程如图1所示。
本发明的主要流程包括以下几个方面:
(1)开源软件漏洞知识图谱构建
由于目前主流的开源项目有不同开发环境、不同项目背景、开发者们基于不同的方式参与软件开发,因此,需要从现有开源平台抽取项目知识,补全漏洞、组件、代码类等实体之间的可追溯性链接以形成统一的知识库。以 Github中使用maven的Java项目数据作为本发明的示例,结合CVE、CWE 中提供了一系列通用的软件安全漏洞及历史数据,建立本体模型如图2所示,从项目中抽取实体关系三元组数据。每个项目有不同版本号,CVE则是针对某一个版本号二发布,并且CVE从属于一个CWE,据此,可以构建出一个有向图。众多开源项目中通过多次传播或调用的漏洞的行为,直接或间接影响的其他项目。从整体上来讲,项目、组件等实体往往被视为依赖方,他们之间关系转换可以转换为图模型中的有向边,漏洞传播分析问题变成有向图上相关路径研究的问题,即可以应用知识图谱领域的方法解决该类问题。
(2)漏洞链接关系发现及预测
解决一个项目组件漏洞的主要方法是通过升级和替换两种方式,但是发现和预测是解决项目漏洞前提。基于构建的开源软件漏洞知识图谱,将知识图谱中的实体及其关系嵌入到语义向量空间,将数据的结构关联与结构性特征进行向量表示,从而进行知识获取和推理。知识表示学习是依据实体间平移不变性,该方法基本过程是,在同一个特征空间Rk中,头实体的向量表示 h与关系的向量表示r之和与尾实体的向量表示t越接近越好,即h+r=t。为了增强知识表示的区分能力,使用来最大间隔法来优化了目标函数
Figure RE-GDA0003093566720000051
每组样本(h,r,t)∈S构造一组负样本(h′,t′,r)∈S′。知识表示学习模型旨在将知识图谱中的三元组数据嵌入到低纬向量空间,同时保留数据结构特征,使用BGD梯度下降法对数据进行训练,防止模型在训练样本中的过拟合。基于训练好的知识表示模型,可以使用连接预测任务实现对开源软件漏洞发现与预测,连接预测本质是补全一个三元组(h,r,t),其中h(t)缺失或不确定,那么可以从已有的历史数组中进行预测。一个项目中使用某些带有缺陷的组件,那么通过特定的使用方式,组件缺陷会被继承和扩大,使用知识表示学习的方法可完成对缺陷的组件的预测。
知识表示学习是具有可解释的性的,但也是具有局限的,针对一对多或者多对一等多关系问题中,该方法做链接预测的效果不佳,无法用简单的矢量运算来解决。例如,如果一个项目版本存在多个漏洞或不存在已知漏洞,知识表示学习模型都只会得到运算最接近的一个漏洞结果,显然与主观不符,这类关系不能保证实体的平移不变性,因此依赖向量运算的链接预测结果准确率和回召率较差。因此,图卷积神经网络中对于每个实体,从它自身和相邻实体处获取特征信息,经过训练后,使得每个节点都能蕴含周围节点的特征,如图3所示。图卷积神经网络层次之间传播采用的函数如下:
Figure RE-GDA0003093566720000061
其中,
Figure RE-GDA0003093566720000062
是A加上单位矩阵I,
Figure RE-GDA0003093566720000063
Figure RE-GDA0003093566720000064
度矩阵。H(l)是第l层的特征,σ是非线性激活函数。
将知识表示学习模型的嵌入向量作为图卷积神经网络的输入,假设使用 average()函数,那么对所有的节点进行同样的操作后,将这些计算得到的平均值输入到神经网络中,实际操作中,可以使用比average()函数更复杂的聚合函数。最后针对带标签的样本计算交叉熵,loss函数如下:
Figure RE-GDA0003093566720000065
通过图卷积神经网络训练出的模型,再解决多关系问题上具有很好的效果。基于此模型,对给定使用了组件的开源项目的相关信息,给以判断是否存在漏洞,并给出最相关的漏洞报告信息进行提示,即可以完成对开源项目的漏洞发现和预测。开发者可以针对具体的漏洞问题进行解决。
以上所述,仅是本发明的较佳实施例而已,并非是对本发明作任何其他形式的限制,而依据本发明的技术实质所作的任何修改或等同变化,仍属于本发明所要求保护的范围。

Claims (3)

1.基于知识图谱的开源软件漏洞挖掘方法,具体步骤如下,其特征在于:
(1)开源软件漏洞知识图谱构建;
通过本体模型对CVE、CWE数据库和GitHub上的java项目数据匹配,抽取关系三元组,构建开源软件漏洞知识图谱;
(2)漏洞链接关系发现及预测;
通过分析开源组件漏洞传播问题,将该类漏洞问题转变成有向图问题,漏洞发现和预测可使用图模型的方法解决,使用知识表示学习和图卷积神经网络结合的方式,完成对漏洞的发现和预测。
2.根据权利要求1所述的基于知识图谱的开源软件漏洞挖掘方法,其特征在于:步骤(1)中每个项目有不同版本号,CVE则是针对某一个版本号二发布,并且CVE从属于一个CWE,据此,构建出一个有向图。
3.根据权利要求1所述的基于知识图谱的开源软件漏洞挖掘方法,其特征在于:步骤(1)具体如下:
基于构建的开源软件漏洞知识图谱,将知识图谱中的实体及其关系嵌入到语义向量空间,将数据的结构关联与结构性特征进行向量表示,从而进行知识获取和推理,知识表示学习是依据实体间平移不变性,该方法基本过程是,在同一个特征空间Rk中,头实体的向量表示h与关系的向量表示r之和与尾实体的向量表示t越接近越好,即h+r=t。为了增强知识表示的区分能力,使用来最大间隔法来优化了目标函数;
Figure RE-FDA0003093566710000011
每组样本(h,r,t)∈S构造一组负样本(h′,t′,r)∈S′,知识表示学习模型旨在将知识图谱中的三元组数据嵌入到低纬向量空间,同时保留数据结构特征,使用BGD梯度下降法对数据进行训练,防止模型在训练样本中的过拟合,基于训练好的知识表示模型,使用连接预测任务实现对开源软件漏洞发现与预测,连接预测本质是补全一个三元组(h,r,t),其中h(t)缺失或不确定,那么从已有的历史数组中进行预测,一个项目中使用某些带有缺陷的组件,那么通过特定的使用方式,组件缺陷会被继承和扩大,使用知识表示学习的方法可完成对缺陷的组件的预测;
知识表示学习是具有可解释的性的,但也是具有局限的,针对一对多或者多对一等多关系问题中,该方法做链接预测的效果不佳,无法用简单的矢量运算来解决;
如果一个项目版本存在多个漏洞或不存在已知漏洞,知识表示学习模型都只会得到运算最接近的一个漏洞结果,显然与主观不符,这类关系不能保证实体的平移不变性,因此依赖向量运算的链接预测结果准确率和回召率较差,因此,图卷积神经网络中对于每个实体,从它自身和相邻实体处获取特征信息,经过训练后,使得每个节点都能蕴含周围节点的特征,图卷积神经网络层次之间传播采用的函数如下:
Figure RE-FDA0003093566710000021
其中,
Figure RE-FDA0003093566710000022
是A加上单位矩阵I,
Figure RE-FDA0003093566710000023
Figure RE-FDA0003093566710000024
度矩阵。H(l)是第l层的特征,σ是非线性激活函数;
将知识表示学习模型的嵌入向量作为图卷积神经网络的输入,假设使用average函数,那么对所有的节点进行同样的操作后,将这些计算得到的平均值输入到神经网络中,实际操作中,使用比average函数更复杂的聚合函数,最后针对带标签的样本计算交叉熵,loss函数如下:
Figure RE-FDA0003093566710000025
通过图卷积神经网络训练出的模型,再解决多关系问题上具有很好的效果,基于此模型,对给定使用了组件的开源项目的相关信息,给以判断是否存在漏洞,并给出最相关的漏洞报告信息进行提示,即可以完成对开源项目的漏洞发现和预测,开发者可以针对具体的漏洞问题进行解决。
CN202110264728.5A 2021-03-11 2021-03-11 基于知识图谱的开源软件漏洞挖掘方法 Pending CN113239358A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110264728.5A CN113239358A (zh) 2021-03-11 2021-03-11 基于知识图谱的开源软件漏洞挖掘方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110264728.5A CN113239358A (zh) 2021-03-11 2021-03-11 基于知识图谱的开源软件漏洞挖掘方法

Publications (1)

Publication Number Publication Date
CN113239358A true CN113239358A (zh) 2021-08-10

Family

ID=77130274

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110264728.5A Pending CN113239358A (zh) 2021-03-11 2021-03-11 基于知识图谱的开源软件漏洞挖掘方法

Country Status (1)

Country Link
CN (1) CN113239358A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113688400A (zh) * 2021-08-31 2021-11-23 杨馨 基于大数据漏洞挖掘的对象输出方法及大数据挖掘系统
CN114692155A (zh) * 2022-05-30 2022-07-01 中国海洋大学 基于知识图谱的漏洞代码图谱构建及代码漏洞检测方法
CN115033894A (zh) * 2022-08-12 2022-09-09 中国电子科技集团公司第三十研究所 一种基于知识图谱的软件组件供应链安全检测方法及装置
CN116260637A (zh) * 2023-02-15 2023-06-13 中国电子技术标准化研究院 渗透测试的路径规划方法、装置、电子设备及存储介质
CN116305171A (zh) * 2023-05-19 2023-06-23 四维创智(北京)科技发展有限公司 一种组件漏洞分析方法、装置、设备和存储介质
CN116502240A (zh) * 2023-06-29 2023-07-28 北华航天工业学院 一种用于应用软件的安全漏洞的溯源分析方法
CN117294472A (zh) * 2023-09-05 2023-12-26 四川大学 一种针对可公开获取漏洞的协同利用预测方法
CN117436086A (zh) * 2023-10-26 2024-01-23 华中科技大学 一种基于知识图谱的软件供应链安全分析方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110275959A (zh) * 2019-05-22 2019-09-24 广东工业大学 一种面向大规模知识库的快速学习方法
CN110909364A (zh) * 2019-12-02 2020-03-24 西安工业大学 面向源代码双极性软件安全漏洞图谱构建方法
CN111163086A (zh) * 2019-12-27 2020-05-15 北京工业大学 一种多源异构的网络安全知识图谱构建与应用方法
CN111460450A (zh) * 2020-03-11 2020-07-28 西北大学 一种基于图卷积网络的源代码漏洞检测方法
CN112148888A (zh) * 2020-09-18 2020-12-29 南京邮电大学 基于图神经网络的知识图谱构建方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110275959A (zh) * 2019-05-22 2019-09-24 广东工业大学 一种面向大规模知识库的快速学习方法
CN110909364A (zh) * 2019-12-02 2020-03-24 西安工业大学 面向源代码双极性软件安全漏洞图谱构建方法
CN111163086A (zh) * 2019-12-27 2020-05-15 北京工业大学 一种多源异构的网络安全知识图谱构建与应用方法
CN111460450A (zh) * 2020-03-11 2020-07-28 西北大学 一种基于图卷积网络的源代码漏洞检测方法
CN112148888A (zh) * 2020-09-18 2020-12-29 南京邮电大学 基于图神经网络的知识图谱构建方法

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113688400A (zh) * 2021-08-31 2021-11-23 杨馨 基于大数据漏洞挖掘的对象输出方法及大数据挖掘系统
CN113688400B (zh) * 2021-08-31 2022-03-18 任拓数据科技(上海)有限公司 基于大数据漏洞挖掘的对象输出方法及大数据挖掘系统
CN114692155A (zh) * 2022-05-30 2022-07-01 中国海洋大学 基于知识图谱的漏洞代码图谱构建及代码漏洞检测方法
CN115033894A (zh) * 2022-08-12 2022-09-09 中国电子科技集团公司第三十研究所 一种基于知识图谱的软件组件供应链安全检测方法及装置
CN116260637A (zh) * 2023-02-15 2023-06-13 中国电子技术标准化研究院 渗透测试的路径规划方法、装置、电子设备及存储介质
CN116260637B (zh) * 2023-02-15 2023-11-07 中国电子技术标准化研究院 渗透测试的路径规划方法、装置、电子设备及存储介质
CN116305171A (zh) * 2023-05-19 2023-06-23 四维创智(北京)科技发展有限公司 一种组件漏洞分析方法、装置、设备和存储介质
CN116502240A (zh) * 2023-06-29 2023-07-28 北华航天工业学院 一种用于应用软件的安全漏洞的溯源分析方法
CN116502240B (zh) * 2023-06-29 2023-09-05 北华航天工业学院 一种用于应用软件的安全漏洞的溯源分析方法
CN117294472A (zh) * 2023-09-05 2023-12-26 四川大学 一种针对可公开获取漏洞的协同利用预测方法
CN117436086A (zh) * 2023-10-26 2024-01-23 华中科技大学 一种基于知识图谱的软件供应链安全分析方法及系统

Similar Documents

Publication Publication Date Title
CN113239358A (zh) 基于知识图谱的开源软件漏洞挖掘方法
Zhou et al. Devign: Effective vulnerability identification by learning comprehensive program semantics via graph neural networks
CN111460450B (zh) 一种基于图卷积网络的源代码漏洞检测方法
Kessentini et al. A cooperative parallel search-based software engineering approach for code-smells detection
Chihada et al. Source code and design conformance, design pattern detection from source code by classification approach
Bernardi et al. Design pattern detection using a DSL‐driven graph matching approach
Dong et al. Defect prediction in android binary executables using deep neural network
Wong et al. Design rule hierarchies and parallelism in software development tasks
Le Hanh et al. Selecting an efficient OO integration testing strategy: an experimental comparison of actual strategies
CN110704846B (zh) 一种人在回路的智能化安全漏洞发现方法
CN112765031B (zh) 一种群智化漏洞挖掘任务的分解方法
Gutiérrez‐Madroñal et al. Evolutionary mutation testing for IoT with recorded and generated events
Bhushan et al. Improving quality of software product line by analysing inconsistencies in feature models using an ontological rule‐based approach
Meilong et al. An approach to semantic and structural features learning for software defect prediction
US20230108808A1 (en) Data science workflow execution platform with automatically managed code and graph-based data job management
CN117215935A (zh) 一种基于多维度代码联合图表示的软件缺陷预测方法
Gezici et al. Explainable AI for software defect prediction with gradient boosting classifier
Mover et al. Mining framework usage graphs from app corpora
Zhang et al. An empirical study on clone consistency prediction based on machine learning
Teyton et al. Find your library experts
Saheb Nasagh et al. A fuzzy genetic automatic refactoring approach to improve software maintainability and flexibility
Wu et al. Code vulnerability detection based on deep sequence and graph models: A survey
Ostrowski et al. Knowledge-based software testing agent using evolutionary learning with cultural algorithms
Xu et al. Detecting code vulnerabilities by learning from large-scale open source repositories
CN116702157A (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