您的当前位置:首页正文

基于知识图谱的网络安全数据组织方法及计算机存储介质[发明专利]

2024-03-23 来源:星星旅游
(19)中华人民共和国国家知识产权局

(12)发明专利申请

(10)申请公布号 CN 110321394 A(43)申请公布日 2019.10.11

(21)申请号 201910614670.5(22)申请日 2019.07.09

(71)申请人 中国电子科技集团公司第二十八研

究所

地址 210002 江苏省南京市秦淮区苜蓿园

东街1号(72)发明人 张阳 王佳贺 魏松杰 袁德砦 (74)专利代理机构 南京苏高专利商标事务所

(普通合伙) 32204

代理人 柏尚春(51)Int.Cl.

G06F 16/28(2019.01)H04L 29/06(2006.01)

权利要求书1页 说明书6页 附图3页

(54)发明名称

基于知识图谱的网络安全数据组织方法及计算机存储介质

(57)摘要

本发明公开了一种基于知识图谱的网络安全数据组织方法及计算机存储介质,所述方法包括以下步骤:1)采集海量网络安全数据,通过清洗和过滤的方式进行预处理;2)构建网络安全知识库;3)根据数据的上下文信息制定特征模板,并结合特征模板将数据生成字向量;4)将字向量输入BiLSTM模型,通过底层参数共享完成网络安全实体识别和网络安全实体关系抽取;5)将网络安全实体识别和网络安全实体关系抽取的结果与所述网络安全知识库结合,构建网络安全数据知识图谱。本发明解决了现有技术中网络安全数据组织和管理所面临的数据关联性弱、组织效率不高和表现形式单一等问题,有效提高了数据关联性和融合度,提升了数据的组织效率。

CN 110321394 ACN 110321394 A

权 利 要 求 书

1/1页

1.一种基于知识图谱的网络安全数据组织方法,其特征在于,包括以下步骤:(1)采集海量网络安全数据,通过清洗和过滤的方式进行预处理;(2)构建网络安全知识库;

(3)根据数据的上下文信息制定特征模板,并结合特征模板将数据生成字向量;(4)将字向量输入BiLSTM模型,通过底层参数共享完成网络安全实体识别和网络安全实体关系抽取;

(5)将步骤(4)中网络安全实体识别和网络安全实体关系抽取的结果与所述网络安全知识库结合,构建网络安全数据知识图谱。

2.根据权利要求1所述的基于知识图谱的网络安全数据组织方法,其特征在于:步骤(1)中所述的网络安全数据包括从网络资产信息、网络威胁信息、网络状态信息、网络脆弱性信息和安全事件信息五个方面进行采集。

3.根据权利要求1所述的基于知识图谱的网络安全数据组织方法,其特征在于,步骤(1)中的预处理具体为:

(1)选择格式规范的原始数据作为过滤规则的制订依据,并根据其定义对应的正则表达式,筛查出不规范的数据值、数据类型和数据格式的数据,予以纠正;

(2)采用Bloom-Filter算法去除重复的数据;(3)采用均值插补的方式补足残缺数据值,对于定类数据采用众数进行插补,对于定量数据采用均值进行插补。

4.根据权利要求1所述的基于知识图谱的网络安全数据组织方法,其特征在于:步骤(2)中所述网络安全知识库包括物理安全、主机安全、网络结构安全、应用安全和数据安全五个本体。

5.根据权利要求1所述的基于知识图谱的网络安全数据组织方法,其特征在于:所述的特征模板为当前识别字和当前识别字前后所设置数目的识别字所组成的识别字的集合。

6.根据权利要求1所述的基于知识图谱的网络安全数据组织方法,其特征在于,步骤(3)中的数据生成字向量的方法具体为:按照特征模板读取数据,通过Bert模型生成字向量。

7.根据权利要求1所述的基于知识图谱的网络安全数据组织方法,其特征在于,步骤(4)中完成网络安全实体识别和网络安全实体关系抽取的方法为:将字向量输入BiLSTM模型进行网络安全实体识别,所述BiLSTM模型包括输入层、特征模板、字嵌入层、BiLSTM层及CRF层,然后将所述BiLSTM模型的CRF层更换为Attention层和Softmax层进行输出,完成网络安全实体关系抽取。

8.根据权利要求1所述的基于知识图谱的网络安全数据组织方法,其特征在于:步骤(5)所述的网络安全数据知识图谱包括两部分,其一是通用知识图谱,包括先前已知的网络漏洞信息、攻击威胁信息及安全公告信息;其二是扩展知识图谱,主要包括网络节点信息、网络拓扑信息、网络连通信息、网络运维信息。

9.根据权利要求1所述的基于知识图谱的网络安全数据组织方法,其特征在于,步骤(5)还包括将网络安全数据知识图谱采用OrientDB图形数据库进行存储。

10.一种计算机存储介质,其上存储有计算机程序,其特征在于:所述计算机程序在被计算机处理器执行时实现权利要求1至9任一项所述的方法。

2

CN 110321394 A

说 明 书

1/6页

基于知识图谱的网络安全数据组织方法及计算机存储介质

技术领域

[0001]本发明涉及一种网络安全数据组织方法及计算机存储介质,特别是涉及一种基于知识图谱的网络安全数据组织方法及计算机存储介质。

背景技术

[0002]随着计算机网络和通信技术的不断革新和完善,网络空间也面临着前所未有的机遇和挑战。面对如此严峻的安全态势,实时反映网络动向的网络安全数据已然成为洞察网络情况、分析网络异常、评估网络环境等要素的关键纽带。网络安全数据具体指“人、机、物”三元世界在网络空间中彼此交互、融合所产生的,且在互联网上可获取并反映网络状态的具有时效性和关联性的数据。作为网络安全信息的载体,网络安全数据的组织和关联对于信息资源的开发和利用具有十分重大的意义。[0003]然而,现有的数据组织方法大都侧重于数据的存储,对于数据之间的关联规则考虑的不够充分,导致数据间的融合程度下降,因此数据的价值无法充分体现,最终会显现出“信息过载、知识缺乏”等问题。此外,上述数据组织方法大都是受限于某一专业领域的特定场景,对于多源异构、海量繁杂的网络安全大环境下的数据组织研究涉猎甚少。随着人工智能和机器学习等新兴技术的崛起,网络空间安全问题变得日益紧迫,亟需一种全面的、高效的数据组织方法为数据提供安全性保障。

发明内容

[0004]发明目的:本发明要解决的技术问题是提供一种基于知识图谱的网络安全数据组织方法及计算机存储介质,解决了现有技术中网络安全数据组织和管理所面临的数据关联性弱、组织效率不高和表现形式单一等问题,有效提高了数据关联性和融合度,提升了数据的组织效率。

[0005]技术方案:本发明所述的基于知识图谱的网络安全数据组织方法,包括以下步骤:[0006](1)采集海量网络安全数据,通过清洗和过滤的方式进行预处理;[0007](2)构建网络安全知识库;[0008](3)根据数据的上下文信息制定特征模板,并结合特征模板将数据生成字向量;[0009](4)将字向量输入BiLSTM模型,通过底层参数共享完成网络安全实体识别和网络安全实体关系抽取;[0010](5)将步骤(4)中网络安全实体识别和网络安全实体关系抽取的结果与所述网络安全知识库结合,构建网络安全数据知识图谱。[0011]进一步的,步骤(1)中所述的网络安全数据包括从网络资产信息、网络威胁信息、网络状态信息、网络脆弱性信息和安全事件信息五个方面进行采集。[0012]进一步的,步骤(1)中的预处理具体为:[0013](1)选择格式规范的原始数据作为过滤规则的制订依据,并根据其定义对应的正则表达式,筛查出不规范的数据值、数据类型和数据格式的数据,予以纠正,无法纠正的数

3

CN 110321394 A

说 明 书

2/6页

据进行丢弃;[0014](2)采用Bloom-Filter算法去除重复的数据;[0015](3)采用均值插补的方式补足残缺数据值,对于定类数据采用众数进行插补,对于定量数据采用均值进行插补。[0016]进一步的,步骤(2)中所述网络安全知识库包括物理安全、主机安全、网络结构安全、应用安全和数据安全五个本体。[0017]进一步的,所述的特征模板为当前识别字和当前识别字前后所设置数目的识别字所组成的识别字的集合。[0018]进一步的,步骤(3)中的数据生成字向量的方法具体为:按照特征模板读取数据,通过Bert模型生成字向量。[0019]进一步的,步骤(4)中完成网络安全实体识别和网络安全实体关系抽取的方法为:将字向量输入BiLSTM模型进行网络安全实体识别,所述BiLSTM模型包括输入层、特征模板、字嵌入层、BiLSTM层及CRF层,然后将所述BiLSTM模型的CRF层更换为Attention层和Softmax层进行输出,完成网络安全实体关系抽取。[0020]进一步的,步骤(5)所述的网络安全数据知识图谱包括两部分,其一是通用知识图谱,包括先前已知的网络漏洞信息、攻击威胁信息及安全公告信息;其二是扩展知识图谱,主要包括网络节点信息、网络拓扑信息、网络连通信息、网络运维信息。[0021]进一步的,步骤(5)还包括将网络安全数据知识图谱采用OrientDB图形数据库进行存储。

[0022]本发明所述的计算机存储介质,其上存储有计算机程序,所述计算机程序在被计算机处理器执行时实现上述的基于知识图谱的网络安全数据组织方法。[0023]有益效果:本发明针对于网络安全数据海量、多态、异构等特征,利用知识图谱的建立有效提高数据间的关联性和融合度,增强数据的组织效率,减少了大量人工标注的负担,体现出良好的数据管理效果,充分发挥数据的价值,进而能够推动数据优势经由知识优势转化为决策优势。本发明具有数据关联性强、融合度高等优点,可提升数据的组织效率,使得数据价值最大化。

附图说明

[0024]图1是本发明实施方式的总体架构图;

[0025]图2是本实施方式的网络安全知识库结构图;[0026]图3是本实施方式的网络安全实体识别模型图;[0027]图4是本实施方式的网络安全关系抽取模型图;[0028]图5是本实施方式的网络安全数据知识图谱结构图。

具体实施方式

[0029]本发明实施方式的方法步骤如图1所示,具体步骤为:[0030]步骤1、从不同层面采集海量的网络安全数据作为数据源,然后将接入的数据通过清洗和过滤的方式进行预处理。[0031]其中,网络安全数据从网络资产信息、网络威胁信息、网络状态信息、网络脆弱性

4

CN 110321394 A

说 明 书

3/6页

信息和安全事件信息五个方面进行采集。其中,漏洞信息主要来自各个漏洞数据库如CVE、NVD、中国国家漏洞数据库;攻击威胁数据和安全公告信息从信息安全网站和安全应急响应中心采集,前者主要包括看雪论坛、吐司论坛和Freebuf,后者主要是国家互联网应急中心、腾讯、携程安全应急响应中心;其它数据通过开源工具进行资产扫描探测、脆弱性扫描、拓扑发现,以获得网络结构的相关原始数据。[0032]针对获取到的数据源,其清洗和过滤的具体步骤是:[0033](1)初步过滤:选择格式规范的原始数据作为过滤规则的制订依据,并根据其定义对应的正则表达式,筛查出不规范的数据值、数据类型、数据格式,予以纠正。对于无法纠正的数据进行丢弃。[0034](2)去除冗余:采用Bloom-Filter算法去除重复数据,Bloom-Filter算法底层使用的是位图,当一个元素被加入集合时,通过K个Hash函数将这个元素映射成一个位阵列中的K个点,并把它们置为1。在冗余检索时,只需查看这些点是否全部为1,就能够判断集合中是否存在冗余。如果这些点出现0,则被检索的元素存在的概率为0;如果结果都为1,则被检索的元素存在的可能性非常大。[0035](3)补足残缺:采用均值插补的方式处理残缺数据值,对于定类数据采用众数进行插补,对于定量数据采用均值进行插补。[0036]步骤2、通过本领域的知识经验构建网络安全知识库,综合考虑数据的上下文信息,制定特征模板并生成字向量。本领域的知识经验就是该领域专家对网络安全领域的实践经验归纳的知识,实际过程中可以根据已有的数据库进行总结来获得实现。[0037]其中,网络安全知识库模型如图2所示。整个知识库包含五个本体,即物理安全、主机安全、网络结构安全、应用安全和数据安全,各个部分相互独立工作,同时又通过网络体系形成大的整体,每个本体详细介绍如下:[0038](1)物理安全:包括整个网络所处环境安全和网络所属的相关设备安全;[0039](2)主机安全:包括服务器、终端设备的操作系统安全和文件安全;[0040](3)网络结构安全:包括整个网络拓扑安全、访问控制安全、入侵防范安全和设备防护安全;[0041](4)应用安全:包括网络应用软件安全和系统应用软件安全;[0042](5)数据安全:包括数据完整性安全和数据保密性安全。[0043]根据专家经验构造的网络安全知识库,并以此作为基础,通过预先构造的本体关系初步筛选,提取局部上下文特征,形成特征模版。其中,特征模板的具体设计如下:

[0044]所述的特征模板为当前识别字和当前识别字前后所设置数目的识别字所组成的识别字的集合,特征模板包括了当前识别字及其前后几个位置,特征模板的大小可以根据实际情况进行设置。即,定义当前识别字的相邻几个位置为“监视窗口”,特征模板的大小也就是监视窗口的大小和所包含的上下文信息成正相关,本实施例的“监视窗口”设置为7。[0045]本实施例的特征模版为:

[0046]x[0,-3],x[0,-2],x[0,-1],x[0,0],x[0,1],x[0,2],x[0,3][0047]其中,特征模板的格式为x[row,col],通过row和col来标定特征的来源,row代表相对当前字符位置的行,即当前行的row值为0,col对应所选特征的列。[0048]最后,利用Bert模型预先训练字向量文件,结果是将输入的词语或字表示成一定

5

CN 110321394 A

说 明 书

4/6页

长度的数值向量形式,并包含着潜在的语义关系。[0049]步骤3、将结合局部上下文特征的字向量作为输入,利用BiLSTM模型通过底层参数共享完成网络安全实体识别和网络安全实体关系抽取。[0050]其中,将结合了局部上下文特征的字向量作为BiLSTM神经网络的输入进行实体识别,如图3所示。网络安全实体识别过程是通过BiLSTM-CRF模型实现的,具体包括输入层、特征模板、字嵌入层、BiLSTM层及CRF层。网络安全实体识别模型的正确率输出的定义如下:[0051]对于给定输入序列X=(X1,X2,…,Xn),假设A是大小为n×k的BiLSTM网络的输出的分数矩阵,k为标签种类数,Ai,j为第词的第j标签所得分数。那么对于预测的标签y=(y1,y2,…,yn),其分数定义为:

[0052][0053]

其中,T是k+2阶的转移分数矩阵,Ti,j表示从标签i转移到标签j的分数,y0和yn是在句子开始和结束位增加的标签,产生标签序列y的概率为:

[0054][0055]

最后利用最大似然估计函数来计算最大化正确标签序列的对数概率为:

[0056]

网络安全实体识别模型的具体训练过程如下:[0058](1)进入epoch循环,接着进入batch循环;[0059](2)初始化参数;[0060](3)根据特征模板及Bert模型提取字符特征;[0061](4)利用BiLSTM-CRF算法前向传递提取特征;[0062](5)利用CRF算法计算全局正确标签的概率;[0063](6)利用BiLSTM-CRF算法后向传递提取特征;[0064](7)更新参数;[0065](8)结束batch循环和epoch循环。[0066]在实体识别模型的基础上,通过保留底层并实现参数共享,将CRF层更换为Attention层和Softmax层进行输出,构建网络安全实体关系抽取模型,如图4所示。其中,Attention层可以生成一个权重向量,通过与这个权重向量相乘,使每一次迭代中的词汇级别的特征合并为句子级别的特征,Attention层的权重矩阵可以通过下面得到:[0067]M=tanh(H)

T[0068]α=softmax(ωTM)r=Hα

[0069]

[0057]

其中,

dω为词向量的维度,ωT是一个训练学习得到的参数向量的转

置。然后,将用以分类的句子表示如下:

[0070]h*=tanh(r)[0071]最后,使用一个Softmax分类器来预测标签,将上一层得到的h*作为输入。

6

CN 110321394 A[0072][0073][0074][0075]

说 明 书

5/6页

f(y|S)=softmax(Wsh*+bs)

那么,就是求解的实体关系类别,其中Ws代表学习权重,bs代表偏置参数。

步骤4、将实体识别和关系抽取的结果与专家知识相结合,构建网络安全数据知识

图谱并对其进行存储,最终完成网络安全数据的组织。[0076]其中,将实体识别和关系抽取的结果与专家知识合并,过滤掉重复知识并构建完整的知识图谱。所设计的网络安全知识图谱包括两部分内容,如图5所示。其一是通用知识图谱,即先前已知的网络漏洞信息、攻击威胁信息及安全公告信息。其二是涵盖网络结构的扩展知识图谱,主要包括网络节点信息、网络拓扑信息、网络连通信息、网络运维信息。最后,知识图谱的存储采用OrientDB图形数据库来组织和管理网络安全数据。

[0077]本发明实施例如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read Only Memory)、磁碟或者光盘等各种可以存储程序代码的介质。这样,本发明实例不限制于任何特定的硬件和软件结合。[0078]相应的,本发明的实施方式还提供了一种计算机存储介质,其上存储有计算机程序。当所述计算机程序由处理器执行时,可以实现前述基于知识图谱的网络安全数据组织方法。例如,该计算机存储介质为计算机可读存储介质。[0079]本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

[0080]本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。[0081]这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

[0082]这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一

7

CN 110321394 A

说 明 书

6/6页

个方框或多个方框中指定的功能的步骤。

8

CN 110321394 A

说 明 书 附 图

1/3页

图1

图2

9

CN 110321394 A

说 明 书 附 图

2/3页

图3

10

CN 110321394 A

说 明 书 附 图

3/3页

图4

图5

11

因篇幅问题不能全部显示,请点此查看更多更全内容