CN108256063B - 一种面向网络安全的知识库构建方法 - Google Patents

一种面向网络安全的知识库构建方法 Download PDF

Info

Publication number
CN108256063B
CN108256063B CN201810039839.4A CN201810039839A CN108256063B CN 108256063 B CN108256063 B CN 108256063B CN 201810039839 A CN201810039839 A CN 201810039839A CN 108256063 B CN108256063 B CN 108256063B
Authority
CN
China
Prior art keywords
network security
entity
attack
knowledge base
training
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.)
Active
Application number
CN201810039839.4A
Other languages
English (en)
Other versions
CN108256063A (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.)
Sichuan Yilan Situation Technology Co ltd
National University of Defense Technology
Original Assignee
Sichuan Yilan Situation Technology Co ltd
National University of Defense Technology
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 Sichuan Yilan Situation Technology Co ltd, National University of Defense Technology filed Critical Sichuan Yilan Situation Technology Co ltd
Priority to CN201810039839.4A priority Critical patent/CN108256063B/zh
Publication of CN108256063A publication Critical patent/CN108256063A/zh
Application granted granted Critical
Publication of CN108256063B publication Critical patent/CN108256063B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/374Thesaurus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/288Entity relationship models
    • 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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Animal Behavior & Ethology (AREA)
  • Virology (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)

Abstract

本发明公开了一种面向网络安全的知识库构建方法,包括:步骤1)构建一个网络安全领域本体,形成网络安全知识库的基础和基本骨架;步骤2)基于已经构建好的本体,整合已有的网络安全知识库,将异构的结构化网络安全知识融合到统一的知识库中;步骤3)训练网络安全命名实体识别器,从网络安全相关的短文本中识别出网络安全相关的实体,将从短文本中抽取的知识更新到网络安全知识库,使得网络安全知识库不断更新和迭代。

Description

一种面向网络安全的知识库构建方法
技术领域
本发明属于网络安全领域,具体涉及一种面向网络安全的知识库构建方法。
背景技术
目前,已经存在一些针对网络安全领域的某一些方面的知识库。例如,CVE是一个漏洞数据库,其中所有漏洞都被授予统一的编号,编号由MITR定义为统一格式。Snort建立了一个丰富的规则库,用于检测入侵行为。一些国内知名的反病毒供应商也建立了关于病毒的巨大的信息库。此外,互联网已经成为知识和信息的主要来源,互联网上有许多网络安全相关的内容,如安全博客,黑客论坛,安全公告等都是网络安全信息的密集区域。充分利用来自各种知识库和互联网的网络安全相关信息,然后将所有这些安全相关的知识整合在一起,将有助于入侵检测和态势感知。
网络安全知识库的构建过程主要涉及领域本体构建和知识构建两部分,在本体构建方面,网络安全领域已经存在了很多已有的本体,马里兰大学的Undercoffer等人完成了一项重大工作,他们针对攻击过程构建出了一个本体,抽象出了一些攻击相关的实体类。此外M Iannacone在构建安全知识图谱时提出了一个网络安全本体。本体中包含15个实体类型以及115个属性。这些已有的本体都可以成为我们构建网络安全领域本体的基础。
知识构建工作根据知识源的不同分为两部分。一部分是整合现有的知识库,这些主要是结构化数据。我们可以使用一些自动化工具来完成这项工作。另一部分是从非结构化文本中提取网络安全相关实体。网络是获取网络安全新知识的重要来源,也是网络安全知识库动态更新和增量迭代的基础。互联网上有许多网络安全相关信息(包括漏洞描述,安全公告,博客等)。但是这些都是非结构化数据,只能由网络安全领域的专家理解。对于自动化系统,这些非结构化数据是不可用的。如何提取网络安全相关实体是我们需要研究的。
现如今,信息抽取技术已经引起了越来越多的学者的关注。国内外有很多研究成果。目前,知识提取有两种主要的方法。第一个是基于知识工程。这种方法在很大程度上依赖于提取规则。但它可以使系统处理特定领域的信息提取问题。早期信息提取系统通常基于提取规则。缺点是需要领域相关的专业人士和语言学家参与系统的开发。由于其提取精度高,在此阶段依然存在许多基于知识工程的提取系统。第二种方法基于机器学习。基本步骤是通过大量训练数据来训练信息抽取模型,然后可以使用抽取器提取相关信息。该方法不需要事先由专业人员定义的规则,但需要足够数量的训练数据才能获得更好的效果。
知识库的构建还涉及到已有结构化知识的融合,已有的网络安全结构化的知识源包括漏洞库、攻击规则库以及进程知识库等,现有的比较丰富的漏洞库有中国信息安全漏洞数据库和美国国家脆弱性数据库。这些数据库收集了各种漏洞的相关信息。漏洞信息包括漏洞名称,漏洞描述,漏洞优先级,损害方法等相应的特征和其他信息。目前,中国和美国建立的漏洞数据库都遵循常用的命名标准,这使得来自完全不同数据库的漏洞可以使用相同的语言。该标准有助于漏洞信息的共享。攻击规则库中收集了现有的攻击的相关信息。包括攻击名称,攻击类型,协议,攻击特征,攻击描述,严重性等属性。Snort攻击规则库是一个比较完善的攻击规则库。每个规则作为一行存储在文件中。在计算机上,有一些进程在后台运行,有些进程会占用太多的系统资源,有的使系统运行缓慢,还有一些进程可能是间谍软件或木马程序。红黑联盟和中国百科全书汇总了有关进程的知识并建立了进程知识库。这些已有的知识库是我们构建统一的网络安全知识库的基础。
发明内容
本发明所要解决的技术问题是提供一种面向网络安全的知识库构建方法,用于克服现有技术存在的问题。
本发明解决上述技术问题所采取的技术方案如下:
一种面向网络安全的知识库构建方法,包括:
步骤1)构建一个网络安全领域本体,形成网络安全知识库的基础和基本骨架;
步骤2)基于已经构建好的本体,整合已有的网络安全知识库,将异构的结构化网络安全知识融合到统一的知识库中;
步骤3)训练网络安全命名实体识别器,从网络安全相关的短文本中识别出网络安全相关的实体,将从短文本中抽取的知识更新到网络安全知识库,使得网络安全知识库不断更新和迭代。
优选的是,所述异构的结构化网络安全知识包括结构化数据和非结构化数据。
优选的是,对于结构化数据,使用D2R映射工具将关系数据库中的数据转换为RDF数据;
且将Snort攻击规则作为一行存储在一个文件中;
并用一个程序来提取攻击规则中每个字段的信息,其中,有一个字段的值是cveid(漏洞编号),通过cveid将攻击规则与漏洞相关联。
优选的是,针对非结构化数据,基于规则和机器学习的方法来提取网络安全相关实体,具体包括:
对于攻击效果和攻击方法这两个实体类型,使用基于规则的方法来提取相应的实体;具体包括:
首先,定义一组触发词。触发词是指在识别标记中起重要作用的词。它可以触发提取任务,因此,触发词的出现意味着附近有相关的实体。
根据触发方向,触发字可以分为前向触发,后向触发,双向触发三种;由此,建立触发词列表是通过基于规则的方法提取实体的关键,依靠触发词列表完成提取任务;
建立了攻击效果和攻击方法的触发词列表,其中,攻击效果的触发词可以直接触发出现攻击效果,攻击方法的触发可以直接触发出现攻击方法。
优选的是,步骤3)中,具体包括:
采用条件随机场模型用于命名实体识别,其中,p(y│x)是模型概率分布,其中x是观察序列,y是标记序列;
p(y│x)由下公式计算。
Figure GDA0002687566560000031
N是词语的数目,M是特征的数目,而f_i是一个二值函数,具体的取值如下面公式所示:
Figure GDA0002687566560000032
其中,f_i是一个二值函数,yj-1为前一个词的实体类型,yj为当前词的实体类型。
优选的是,步骤3)中,具体包括:
依靠斯坦福命名实体识别器提取网络安全相关实体,包括:
使用斯坦福NER的基础实现来训练一个实体识别器;
分析已有的特征,选择对训练模型有用的特征,然后通过实验严重,并确定一个用于训练命名识别器的特征集;
基于这个特征集训练命名实体识别器。
优选的是,步骤3),具体包括以下步骤:
步骤3-1)获取标注好的数据集,其中,网络安全相关的短文本中已经标注好对应的实体类的数据集,训练时采用的是马里兰大学人工标注的数据集,短文本主要包括漏洞描述、安全公告;
步骤3-2)构建实体词典,从漏洞库中的一些结构化的字段中提取出了软件、操作系统这两类实体类的实例,利用这些实例构建出实体词典;
步骤3-3)基于步骤3-2)构建的实体词典建立相应的特征,利用条件随机场模型训练得到网络安全领域的命名实体识别器。
与现有技术相比,本发明的优点在于:
本发明提出一种面向网络安全的知识库构建方法,涉及到领域本体的构建以及网络安全知识的构建,在领域本体的构建过程中,复用了已有的本体,构建出了一个符合已有数据源特点的本体。在网络安全知识的构建过程中,基于实体词典和已有的标注数据集训练得到了网络安全相关实体的命名实体识别器,由于结合了实体词典,所以达到了较好的识别效果。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
下面结合附图对本发明进行详细的描述,以使得本发明的上述优点更加明确。其中,
图1是本发明中用于构建网络安全知识库的框架的示意图。
图2是本发明中构建的网络安全本体的示意图。
具体实施方式
以下将结合附图及实施例来详细说明本发明的实施方式,借此对本发明如何应用技术手段来解决技术问题,并达成技术效果的实现过程能充分理解并据以实施。需要说明的是,只要不构成冲突,本发明中的各个实施例以及各实施例中的各个特征可以相互结合,所形成的技术方案均在本发明的保护范围之内。
另外,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本发明是通过以下技术方案实现的:
步骤1)构建一个更加完善的网络安全领域本体,形成网络安全知识库的基础和基本骨架;
步骤2)基于已经构建好的本体,整合已有的网络安全知识库,将异构的结构化网络安全知识融合到统一的知识库中;
步骤3)训练网络安全命名实体识别器,从网络安全相关的短文本中识别出网络安全相关的实体,将从短文本中抽取的知识更新到网络安全知识库,使得网络安全知识库可以不断更新和迭代;
其中步骤3)包括以下步骤:
步骤3-1)获取标注好的数据集(网络安全相关的短文本中已经标注好对应的实体类的数据集),训练时采用的是马里兰大学人工标注的数据集,短文本主要包括一些漏洞描述、安全公告;
步骤3-2)构建实体词典,从漏洞库中的一些结构化的字段中提取出了软件、操作系统这两类实体类的实例,利用这些实例构建出了实体词典;
步骤3-3)基于步骤3-2构建的实体词典建立相应的特征,利用条件随机场模型训练得到网络安全领域的命名实体识别器,之所以选用条件随机场模型是因为条件随机场模型特别适合做序列标注,而命名实体识别就是序列标注的问题。
与现有技术相比,本发明的优点在于:
本发明提出一种面向网络安全的知识库构建方法,涉及到领域本体的构建以及网络安全知识的构建,在领域本体的构建过程中,复用了已有的本体,构建出了一个符合已有数据源特点的本体。在网络安全知识的构建过程中,基于实体词典和已有的标注数据集训练得到了网络安全相关实体的命名实体识别器,由于结合了实体词典,所以达到了较好的识别效果。
下面结合附图和具体实施方式对本发明加以说明。如图1所示,我们提出了一个用于构建网络安全知识库的框架。框架主要涉及网络安全相关的领域本体构建和网络安全相关信息的构建。
对于知识的存储,我们选择以图的形式存储。知识图谱是Google在2012年提出的概念。它是一个语义网络,以图的形式存储实体,实体之间的关系。知识图谱的优势是显而易见的。关联查询的效率高于传统存储方法。它是一种灵活的存储形式,它非常容易更新。我们构建的是网络安全领域的垂直知识图。垂直领域知识库的构建需要考虑知识的深度和整体层次结构。因此,我们采用自上而下的方法,首先构建了网络安全本体。在本体的基础上,我们从结构化和非结构化数据中提取了网络安全信息。接下来,我们将介绍两个主要部分,包括本体构建和网络安全相关信息的构建。
1、领域本体构建
分析了已有数据源的特点以及包括漏洞描述和安全公告在内的网络安全相关的短文本。在复用已有的本体的基础上。我们构建出了以漏洞为中心的本体。本体有七种实体类型。图2是我们构建的网络安全本体。具体实体类型的描述如下:
·漏洞:在本体中是非常重要的。其他实体类型以漏洞为核心。漏洞数据库中的每个记录对应于漏洞类型的每一个实例。每个漏洞都有自己独有的cve ID。此外,中国信息安全漏洞数据库中还有一个cnnvd编号(中国国家信息安全漏洞库对漏洞的编号)。
·软件:在本体中,软件是一个基类,包括操作系统和浏览器,这些都是软件的子类。
·操作系统:软件的子类(比如像Ubuntu14.04等)
·浏览器:软件的子类(比如Firefox,Chrome等浏览器)
·漏洞利用效果:漏洞利用可能会造成的危害(比如信息披露、拒绝服务等)
·漏洞利用方法:漏洞利用的方法(比如缓存溢出等)
·攻击:对很多攻击来说,一个特定攻击都是针对某个漏洞的入侵,攻击的过程可以被看作是漏洞利用的过程。
2、网络安全相关信息的构建
在框架中,主要有两种类型的数据源,包括结构化数据和非结构化数据。对于结构化数据,我们可以使用D2R映射工具将关系数据库中的数据转换为RDF数据。存在一个问题是Snort攻击规则作为一行存储在一个文件中。我们用一个程序来提取攻击规则中每个字段的信息。有一个字段的值是cveid(漏洞编号)。我们通过cveid将攻击规则与漏洞相关联。接下来,我们将说明如何从非结构化文本中提取信息。在本发明中,我们采用基于规则和机器学习的方法来提取网络安全相关实体。我们在构建好的网络安全本体的基础上来提取实体。
1.1基于规则的方法
对于攻击效果和攻击方法这两个实体类型,我们可以使用基于规则的方法来提取相应的实体。首先,我们定义了一组触发词。触发词是指在识别标记中起重要作用的词。它可以触发提取任务。因此,触发词的出现意味着附近有相关的实体。根据触发方向,触发字可以分为前向触发,后向触发,双向触发三种。因此,建立触发词列表是通过基于规则的方法提取实体的关键。我们可以依靠触发词列表完成提取任务。
我们建立了攻击效果和攻击方法的触发词列表。攻击效果的触发词可以直接触发出现攻击效果。攻击方法的触发与上述情况相似。
1.2基于机器学习的方法
条件随机场是基于序列标注的无向图模型。该模型的主要思想来自最大熵模型。最简单的形式是线性CRF,即模型中的节点形成线性结构。线性CRF对应于有限状态机,非常适合于标记线性数据序列。
命名实体识别问题可以被定义为序列的标注问题,即观察到的词是否属于预定义的特征集合。条件随机场是序列标注的概率模型。它没有独立的假设,可以任意选择特征,并且全局规范化所有特征,并获得全局最优解。它保留了条件概率框架的优点,如最大熵Markov模型。它也解决了标记偏差的问题。因此,条件随机场模型适用于命名实体识别。线性CRF目前是命名实体识别的最佳方法。p(y│x)是模型概率分布,其中x是观察序列,y是标记序列。p(y│x)由下公式计算。
Figure GDA0002687566560000071
N是词语的数目,M是特征的数目,而f_i是一个二值函数,具体的取值如下面公式所示。
Figure GDA0002687566560000072
其中,f_i是一个二值函数,yj-1为前一个词的实体类型,yj为当前词的实体类型。
Stanford NER(命名实体识别)提供了线性链条件随机场(CRF)序列模型的一般实现。因此,它也被称为CRF分类器。在发明中,我们依靠斯坦福命名实体识别器提取网络安全相关实体。斯坦福NER有很多特征可供选择。我们使用斯坦福NER的基础实现来训练一个实体识别器,因为我们的目标也是训练一个命名实体识别器,只不过是网络安全领域的实体识别器。
特征选择对构建模型来说很重要。我们应该选择能更好地标识网络安全相关实体的特征。合适的特征组合是训练抽取模型的关键。斯坦福大学提供了超过70个特征,可以将这些特征组合起来训练模型。确定合适的特征不是一件容易的工作,因为这些斯坦福对这些特征没有太多的解释文档。现有的特征选择算法对于我们的工作不会有太大的帮助。我们必须自己分析已有的特征,选择我们认为对训练模型有用的特征。然后通过实验验证我们的想法。经过多次实验,我们确定了一个用于训练命名识别器的特征集。基于这个特征集训练命名实体识别器取得了较好的识别效果。我们决定用来训练命名识别器的特征集如下:
·UseNGrams:利用n-gram作为特征,即词的子串。.
·MaxNGramLeng:这个特征的值类型为整型。如果这个特征的值为正,则大于该值的n-gram将不会在模型中使用。在本发明中,我们将maxNGramLeng的值设置为6。
·UsePrev:这个选项可以给我们提供<前一个词,前一个词的类型>的特征,并与其他选项一起使用。这样便能引入前一个词的类别作为特征。当有连续的词属于同一个类时,这个特征非常有用。
·UseNext:和UsePrev特征非常相似.
·UseWordPairs:这个特征基于两个词对:<前一个词,当前的词,类别>和<当前的词,下一个词,类别>.
·UseGazettes:用于指明是否使用实体词典相关的特征。
·Gazette:该值可以是一个或多个文件名(以逗号,分号或空格分隔的名称)。从这些文件可以加载构建好的实体词典。每行应该是一个实体类名称,后跟一个空格,后面再跟上一个具体的实体实例。
·CleanGazette:如果这个值为真,则仅当全部词在字典中被匹配时,此特征才会触发。如果在字典中有一个词“Windows 7”,那么整个词应该在实体字典中进行匹配。
·SloppyGazette:如果这个值为真,词和字典中的词局部匹配上就能触发这个特征,例如“Windows”可以和“windows 7”进行匹配.
在发明中,我们使用了字实体词典相关的特征,斯坦福大学提供两个相关特征的具体实现。通过一些实验的证明,UseGazettes和cleanGazette特征的组合使用有助于网络安全相关实体的识别,因为它提高了操作系统和软件实体类的识别准确性。为了使用这个特征,我们从漏洞数据库中的influence_platform字段汇总了相关的信息,并构建了实体字典。实体词典中的第一列是实体类型,第二列对应于特定的实体实例。
需要说明的是,对于上述方法实施例而言,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。
而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (3)

1.一种面向网络安全的知识库构建方法,其特征在于,包括:
步骤1)构建一个网络安全领域本体,形成网络安全知识库的基础和基本骨架;
步骤2)基于已经构建好的本体,整合已有的网络安全知识库,将异构的结构化网络安全知识融合到统一的知识库中;
步骤3)训练网络安全命名实体识别器,从网络安全相关的短文本中识别出网络安全相关的实体,将从短文本中抽取的知识更新到网络安全知识库,使得网络安全知识库不断更新和迭代;
其中,在步骤1中,构建的网络安全领域本体包括的实体类型有:漏洞、软件、操作系统、浏览器、攻击、攻击效果、攻击方法;
在步骤2中,所述异构的结构化网络安全知识包括结构化数据和非结构化数据,对于结构化数据,使用D2R映射工具将关系数据库中的数据转换为RDF数据,且将Snort攻击规则作为一行存储在一个文件中,并用一个程序来提取攻击规则中每个字段的信息,其中,有一个字段的值是cveid(漏洞编号),通过cveid将攻击规则与漏洞相关联;
针对非结构化数据,基于规则和机器学习的方法来提取网络安全相关实体,具体包括:
对于攻击效果和攻击方法这两个实体类型,使用基于规则的方法来提取相应的实体;具体包括:
首先,定义一组触发词,触发词是指在识别标记中起重要作用的词,它可以触发提取任务,因此,触发词的出现意味着附近有相关的实体,
根据触发方向,触发字可以分为前向触发,后向触发,双向触发三种;由此,建立触发词列表是通过基于规则的方法提取实体的关键,依靠触发词列表完成提取任务;
建立了攻击效果和攻击方法的触发词列表,其中,攻击效果的触发词可以直接触发出现攻击效果,攻击方法的触发可以直接触发出现攻击方法;
在步骤3中,依靠斯坦福命名实体识别器提取网络安全相关实体,包括:
使用斯坦福NER的基础实现来训练一个实体识别器;
分析已有的特征,选择对训练模型有用的特征,然后通过实验,并确定一个用于训练命名识别器的特征集;
基于这个特征集训练命名实体识别器;
其中,用于训练命名识别器的特征集包括UseNGrams、MaxNGramLeng、UsePrev、UseNext、UseWordPairs、UseGazettes、Gazette、CleanGazette、SloppyGazette。
2.根据权利要求1所述的面向网络安全的知识库构建方法,其特征在于,步骤3)中,具体包括:
采用条件随机场模型用于命名实体识别,其中,p(y│x)是模型概率分布,其中x是观察序列,y是标记序列;
p(y│x)由下公式计算:
Figure FDA0002687566550000021
其中N是词语的数目,M是特征的数目;
Figure FDA0002687566550000022
其中,f_i是一个二值函数,yj-1为前一个词的实体类型,yj为当前词的实体类型。
3.根据权利要求1所述的面向网络安全的知识库构建方法,其特征在于,步骤3),具体包括以下步骤:
步骤3-1)获取标注好的数据集,其中,网络安全相关的短文本中已经标注好对应的实体类的数据集,训练时采用的是马里兰大学人工标注的数据集,短文本主要包括漏洞描述、安全公告;
步骤3-2)构建实体词典,从漏洞库中的一些结构化的字段中提取出了软件、操作系统这两类实体类的实例,利用这些实例构建出实体词典;
步骤3-3)基于步骤3-2)构建的实体词典建立相应的特征,利用条件随机场模型训练得到网络安全领域的命名实体识别器。
CN201810039839.4A 2018-01-15 2018-01-15 一种面向网络安全的知识库构建方法 Active CN108256063B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810039839.4A CN108256063B (zh) 2018-01-15 2018-01-15 一种面向网络安全的知识库构建方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810039839.4A CN108256063B (zh) 2018-01-15 2018-01-15 一种面向网络安全的知识库构建方法

Publications (2)

Publication Number Publication Date
CN108256063A CN108256063A (zh) 2018-07-06
CN108256063B true CN108256063B (zh) 2020-11-03

Family

ID=62741589

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810039839.4A Active CN108256063B (zh) 2018-01-15 2018-01-15 一种面向网络安全的知识库构建方法

Country Status (1)

Country Link
CN (1) CN108256063B (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109241223B (zh) * 2018-08-23 2022-06-28 中国电子科技集团公司电子科学研究院 行为行踪识别方法及系统
CN109446210B (zh) * 2018-09-14 2020-09-18 华中科技大学 一种可视化多维关系安全知识体系管理平台及其构建方法
CN109063205A (zh) * 2018-09-17 2018-12-21 河南大学 一种面向网络安全的知识库构建方法
CN109299287A (zh) * 2018-10-24 2019-02-01 深圳素问智能信息技术有限公司 一种酒类信息的查询方法和装置
CN109408827A (zh) * 2018-11-07 2019-03-01 南京理工大学 一种基于机器学习的软件实体识别方法
CN110162976B (zh) * 2019-02-20 2023-04-18 腾讯科技(深圳)有限公司 风险评估方法、装置及终端
CN111475641B (zh) * 2019-08-26 2021-05-14 北京国双科技有限公司 一种数据抽取方法、装置、存储介质及设备
CN110688456A (zh) * 2019-09-25 2020-01-14 北京计算机技术及应用研究所 一种基于知识图谱的漏洞知识库构建方法
CN111193749B (zh) * 2020-01-03 2022-05-17 北京明略软件系统有限公司 一种攻击溯源方法、装置、电子设备和存储介质
CN113496120B (zh) * 2020-03-19 2022-07-29 复旦大学 领域实体抽取方法、计算机设备、计算机可读介质及处理器
CN111597353B (zh) * 2020-05-18 2022-06-07 中国人民解放军国防科技大学 网络空间威胁知识抽取方法和装置
CN111859966B (zh) * 2020-06-12 2022-04-15 中国科学院信息工程研究所 一种面向网络威胁情报的标注语料生成方法及电子装置
CN116976435B (zh) * 2023-09-25 2023-12-15 浙江辰龙检测技术有限公司 一种基于网络安全的知识图谱构建方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101645064A (zh) * 2008-12-16 2010-02-10 中国科学院声学研究所 一种浅层自然口语理解系统及方法
WO2015184221A1 (en) * 2014-05-30 2015-12-03 Georgetown University A process and framework for facilitating information sharing using a distributed hypergraph
CN105956052A (zh) * 2016-04-27 2016-09-21 青岛海尔软件有限公司 一种基于垂直领域的知识图谱的构建方法
CN106649272A (zh) * 2016-12-23 2017-05-10 东北大学 一种基于混合模型的命名实体识别方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10013404B2 (en) * 2015-12-03 2018-07-03 International Business Machines Corporation Targeted story summarization using natural language processing
CN106815293A (zh) * 2016-12-08 2017-06-09 中国电子科技集团公司第三十二研究所 一种面向情报分析的构建知识图谱的系统及方法
CN106897273B (zh) * 2017-04-12 2018-02-06 福州大学 一种基于知识图谱的网络安全动态预警方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101645064A (zh) * 2008-12-16 2010-02-10 中国科学院声学研究所 一种浅层自然口语理解系统及方法
WO2015184221A1 (en) * 2014-05-30 2015-12-03 Georgetown University A process and framework for facilitating information sharing using a distributed hypergraph
CN105956052A (zh) * 2016-04-27 2016-09-21 青岛海尔软件有限公司 一种基于垂直领域的知识图谱的构建方法
CN106649272A (zh) * 2016-12-23 2017-05-10 东北大学 一种基于混合模型的命名实体识别方法

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
信息抽取中实体关系识别研究;张奇;《中国博士学位论文全文数据库 信息科技辑》;20100915(第9期);I138-56 *
基于实体词典与机器学习的基因命名实体识别;夏光辉等;《医学信息学杂志》;20151225;第36卷(第12期);54-60 *
徐增林等.知识图谱技术综述.《电子科技大学学报》.2016,第45卷(第4期), *
知识图谱技术综述;徐增林等;《电子科技大学学报》;20160730;第45卷(第4期);589-606 *
网络安全漏洞分析知识库系统的设计与实现;孙力行;《中国优秀硕士学位论文全文数据库 信息科技辑》;20120715(第7期);I139-248 *

Also Published As

Publication number Publication date
CN108256063A (zh) 2018-07-06

Similar Documents

Publication Publication Date Title
CN108256063B (zh) 一种面向网络安全的知识库构建方法
Jia et al. A practical approach to constructing a knowledge graph for cybersecurity
Joshi et al. Extracting cybersecurity related linked data from text
CN113647078B (zh) 一种管理安全事件的方法、装置和计算机可读存储介质
Angeli et al. Leveraging linguistic structure for open domain information extraction
US10031973B2 (en) Method and system for identifying a sensor to be deployed in a physical environment
US9305116B2 (en) Dual DFA decomposition for large scale regular expression matching
US20210081437A1 (en) Systems and methods for trie-based automated discovery of patterns in computer logs
GB2557015A (en) System and method for extracting entities in electronic documents
SaiKrishna et al. String matching and its applications in diversified fields
CN102867049B (zh) 一种基于单词查找树实现的汉语拼音快速分词方法
US20190228085A1 (en) Log file pattern identifier
Qin et al. Automatic analysis and reasoning based on vulnerability knowledge graph
Gao et al. A review on cyber security named entity recognition
CN104102701A (zh) 一种基于hive的历史数据存档与查询方法
Shang et al. A framework to construct knowledge base for cyber security
CN109194605B (zh) 一种基于开源信息的可疑威胁指标主动验证方法和系统
US8266135B2 (en) Indexing for regular expressions in text-centric applications
Consoli et al. A quartet method based on variable neighborhood search for biomedical literature extraction and clustering
Wang A cross-domain natural language interface to databases using adversarial text method
Abaimov et al. A survey on the application of deep learning for code injection detection
CN116663019B (zh) 一种源代码漏洞检测方法、装置和系统
Lemoudden et al. A binary-based mapreduce analysis for cloud logs
CN117195233A (zh) 面向开源软件供应链的物料清单sbom+分析方法及装置
CN103902651A (zh) 一种基于MongoDB的云端代码查询方法与装置

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