Open-CyKG:开放式网络威胁情报知识图
Abstract:
网络安全报告的即时分析对安全专家来说是一个根本性的挑战,因为每天都有不可估量的网络信息产生,这就需要自动化的信息提取工具来方便数据的查询和检索。 因此,我们提出了Open-CYKG:一个开放的网络威胁情报(CTI)知识图(KG)框架,该框架使用基于注意力的神经开放信息抽取(OIE)模型从非结构化的高级持续威胁(APT)报告中抽取有价值的网络威胁信息。更具体地说,我们首先通过开发一个神经网络安全命名实体识别器(NER)来识别相关实体,该识别器有助于标记OIE模型生成的关系三元组。然后,通过采用使用词嵌入的融合技术来规范化所提取的结构化数据以构建KG。因此,安全专业人员可以执行查询以从Open-CyKG框架检索有价值的信息。实验结果表明,我们提出的构建Open-CyKG的组件优于最先进的模型。1
关键词:网络威胁情报、知识图命名实体识别、开放信息抽取、注意网络
1 导言
网络威胁的快速发展促使安全分析人员动态地利用各种自然语言处理(NLP)技术作为防御、识别、分析和可能缓解各种网络安全攻击的手段。 其中包括文本记忆[1]、信息提取[2,3]和命名实体识别(NER)[4,5]。为了了解不同网络攻击的手段和后果,安全专业人员依赖以前的报告,如安全公告或在线报告,以更好地掌握手头的威胁。 不幸的是,这种报告通常以非结构化的方式存储,这使得高效的信息检索变得更加困难。
目前,现有的信息抽取系统缺少两个基本组成部分。 首先,一种能够提取有价值信息的方法,这种方法不需要预先定义的关系集或现有的本体论[6],将提取限制在特定的信息集上,从而增加了丢失重要知识的可能性。 第二,一种数据结构,支持有效地存储提取的数据,以允许成功的信息检索和知识理解。 缺乏这种数据结构将使安全分析师无法充分利用提取的信息。
本文介绍了一个由开放信息抽取(OIE)三元组构造的开放网络威胁情报(CTI)2知识图(KG)。 Open-CYKG是一个框架,能够有效地从非结构化高级持久威胁(APT)报告中提取有价值的信息,并将检索到的数据表示在一个KG中,该KG提供了对威胁相关信息的有效查询和检索。 Open-CYKG由两个主要组件组成,如图所示 1. 首先,提出了一种基于注意力的OIE体系结构,用于从非结构化数据中提取与领域无关的关系三元组。 二是网络安全术语自动标注的NER模型。 更准确地说,我们首先使用OIE从APT报告中提取结构关系元组,然后在NER任务的帮助下将其填充到KG中。
注意机制在几个深度学习任务中取得了显著的成功[8-10]。 第一个构建块是基于注意力的OIE。 我们提出了一种新的注意机制,它强调给定句子的句法和语义特征,根据词对句子的贡献程度赋予不同的权重。 我们证明了基于注意力的方法改善了识别语义关系的过程。 提取的元组由一个谓词和一组属性组成,其形式为
Open-CYKG中的第二个组件是NER,它既是一个独立的NLP应用程序,也是几个NLP任务的预处理阶段,包括信息提取、问题回答和KG构造[11,12]。 在不同的领域对其进行了大量的研究,但针对网络安全领域的研究很少。 我们证明了NER模在KG构造和精化中的重要性。
在KG构建过程中面临的主要挑战之一是数据冗余和模糊性。 因此,为了克服这一挑战,我们采用精化和规范化技术,通过使用层次凝聚聚类进行实体分组,在基于上下文化词嵌入的KG中融合信息。 对Open-CYKG的各个组成部分进行了各种实证分析,证明OIE能够高度支持知识库的开发。 我们通过提出一个新颖的、开放的网络安全KG模型来应对上述挑战。 本工作涉及Open-CYKG的不同阶段,其贡献如下:
•我们在网络安全领域提供了第一个基于OIE的KG,该KG不限制提取预先指定的一组信息。 我们的模型将OIE和NER与KG融合技术相结合,形成了一个有效的开放式网络威胁情报KG模型:Open-CYKG。
•我们介绍了一个基于注意力的序列到序列OIE模型,该模型的性能优于目前最先进的网络体系结构,从而证明了它在信息抽取任务中的有效性。
•我们开发了一个网络安全NER模型来标记这个领域中的突出词汇,当与几个基线和现状模型相比较时,该模型取得了显著的结果。 我们在Open-CYKG中进行了一个细化和融合过程,使用生成的NER标签和上下文化的词嵌入来进一步提高检索的质量。
•我们表明,一旦创建了open-cykg,就可以使用两个示例查询有效地执行信息检索。
本文的其余部分结构如下。 第2节回顾了OIE、NER和KG以前的工作,随后在第3节中介绍了我们提出的Open-CYKG框架,而第4节介绍了Open-CYKG的结果和评估。 最后,第五部分对全文进行了总结,并对今后的工作进行了讨论。
2.1.2.网络安全中的信息提取
据我们所知,之前没有专门探讨国际兽疫局在网络安全领域的工作。然而,最近提出了几种针对网络安全领域的其他信息提取技术。2019年,Gasmi等人[4]提出了一种基于LSTM的关系提取(RE)系统,用于从文本中挖掘预定义的网络安全实体。与OIE相比,在RE中,任务关系必须在提取之前预先确定。作者主要关注于识别与漏洞相关的关系,这些漏洞将软件与供应商或特定文件联系起来。Jones等人[3]引入了另一个RE框架,该框架将基于自举模式的方法应用于元组提取。他们的模型集成了主动学习组件,这些组件询问用户以向系统提供精确的输入。与Gasmi的RE模型类似,Jones等人[3]使用了对应于漏洞和软件属性的预定义关系,这些关系来自网络安全本体,这两种RE模型都旨在更好地理解漏洞相关信息。
2.2.命名实体识别的最新技术
NER是在几个不同领域中得到充分研究的主题,其中新闻和生物医学领域与其他不太受欢迎的领域(如网络安全)相比,主导了NER任务的研究。它的任务是识别和定位非结构化文本语料库中的命名实体,并将它们分类到预定的类别集合中,如位置、人物、组织、日期和时间表达式。在过去的几年中,神经网络(NN)技术已经在NER系统中占据了主导地位,因为它们最小化了在构建实现适当的准确度水平所必需的特征和规则方面对人力的需要。在本节中,我们将回顾创新的神经网络方法。
2.2.1.神经网络方法
深度学习系统只需要最少的特征工程,而基本上不需要词典或本体,从而使其更加独立于领域。2008年引入的第一个基于NN的NER系统是[21],其中利用单个卷积神经网络(CNN)架构来创建多任务学习系统,该多任务学习系统预测命名实体、POS标签和语义相似的词。此外,作者还证明了同步任务学习增强了模型的泛化能力。GRAM-CNN [22]是另一种使用CNN进行生物医学实体提取的NER方法。[22]的作者使用字符嵌入而不是词嵌入来获得词的更多信息表示,其中标签经由条件随机场(CRF)层来预测。
RNN通过使用LSTM或GRU网络为NER任务铺平了道路。CharNER [23]是字符级标记器,其利用堆叠Bi-LSTM来编码模式; 然后利用解码器将所生成的字符级概率表示变换为单词级标签。与字符级模型相反,Yang等人[24]在2016年引入了一个多任务、语言独立的NER模型,该模型连接了字符级和单词级特征。为了编码上述两个特征,在将分级GRU的输出传递到CRF层用于序列标记预测之前,利用分级GRU。
2.2.2.网络安全中的命名实体识别
随着自动文本处理和信息提取需求在各个领域的相对增长,NER进入了网络安全领域。尽管如此,从技术角度来看,为网络安全领域引入的NER系统与上述系统高度可比。
Bridges等人[5]实施了最大熵模型,用于标记三个不同网络安全数据集上的命名实体:Microsoft安全公告、国家漏洞数据库(NVD)和Metasploit Framework数据库,所有这些都是作者公开提供的。在数据集的片段上训练平均感知,同时不断地监视成功的实体分类。此外,还包括单字和双字特征。
Kim等人[25]使用深度Bi-LSTM-CRF神经网络构建了一个NER系统,以自动提取网络威胁的命名实体。关键思想是在他们提出的模型中加入几个特征,主要是基于Bag-Of-Character(BOC)表示的字符。它们预定义的命名实体由一组不同的网络安全术语组成,例如恶意软件、散列和常见漏洞与暴露(CVE)。他们的模型适应字符级特征,此外,GloVe [26]被用于嵌入单词。
除了Gasmi等人[4]提出的网络安全RE模型(在第2.1.2节中讨论)外,他们还引入了一种NER系统,该系统利用了类似于[25]提出的模型的Bi-LSTM-CRF神经网络,不同之处在于采用了单词级特征而不是字符级特征。与[5]类似,NVD数据集用于培训和测试目的。Simran等人[27]设计了另一种结合Bi-GRU和CNN的深度学习方法。Bi-GRU层在将向量馈送到CNN层之前对其进行抛光,在CNN层中,在将特征传递到CRF预测层之前对其进行微调。
2.3.知识图概述
自动信息提取的到来和问答时代,KGs3满足的需要有效地挖掘结构化知识从详尽的文本。在本节中,我们首先简要介绍最流行的公斤应用程序和其他NLP的任务可以受益于公斤,紧随其后的是走过不同的方法来建立公斤和不同的规范化技术。最后,我们回顾前一公斤在网络安全领域工作。
2.3.1.知识图应用
第一个KG由Google在2012年引入[28],主要目标是增强查询结果,进一步丰富最终用户的整体搜索体验。这是点燃KG研究和其他基于KG的应用程序开发的开始。DBPedia [29]是一个著名的多语言KG项目,它允许用户通过语义查询来检索信息;DBPedia中的数据主要从维基百科信息框中获取。Freebase [30]是一个由社区成员组成数据的协作知识库,也被描述为“一个开放共享的世界知识数据库”。值得注意的是,Freebase为Google KG的一部分提供了支持,然而,它在2016年下线,并由Wikidata接替[31]。
除了上述的应用,KG还帮助了几个NLP任务,从信息提取[32,33]和问题回答[34]到推荐系统[35]。
2.3.2.知识图的构造与规范化
有几种方式来构造KG。它可以从YAGO [36]和Wikipedia等现有知识库中进行管理,后者主要用于构建DBPedia [29],或者KG可以由用户填充和修改,如Freebase [30]和Wikidata [31]。第三种选择是使用信息提取技术从非结构化或半结构化文本中获取数据以创建KG。如[37]所述,无论使用哪种方法构建KG,都不会完全正确或完整。DBPedia的情况也是如此,尽管它拥有近460万个实体,但其中只有一半包括不到5个关系。因此,需要KG规范化来克服通过采用融合和细化技术来提高KG的整体质量,这可能会导致KG的准确性和覆盖范围之间的权衡[38]。
在[39],一个属性字符嵌入形成创建表示学习。模型使用上述嵌入在公斤区分实体之间的相似之处。此外,动词的规则应用于进一步加强一个实体的属性和协助实体链接过程。另一种方式以确保类似的实体和关系公斤躺在同一空间是通过使用实体描述符所部署的钟山等人[40]。对齐模型由[40]的作者不需要依赖特定的数据源,因此它可以被集成到任何公斤只要实体识别。实体连接的另一种方式规范化,通过文本中的实体映射到现有的实体在一公斤(第四十一条、第四十二条)。虽然实体消歧是视为实体连接的子任务,它是连接标识实体的过程在公斤到地面真理实体(43、44)。
2.3.3.网络安全知识图
遵循上述两个NLP任务OIE和NER的相同趋势,与新闻和生物医学领域等更受欢迎的领域相比,网络安全领域的KG是研究最不足的领域之一。Narayanan等人[45]借助语义丰富的知识表示构建了一个协作框架。他们的认知辅助系统被指定用于早期检测网络安全攻击,该系统从最近发布的威胁情报报告中获取漏洞相关数据,这些威胁情报报告来自多个来源,如在线博客和CVE报告,而信息随后在预先构建的KG中显示,该KG之前加载了早期检测到的威胁、攻击模式和实施攻击所需的工具等信息。
作为根据漏洞相关数据构建KG的替代方法,Piplai等人[12]根据恶意软件事后报告(AAR)构建了网络安全KG,因为这些报告包含了对网络安全事件的深入分析,从而为安全分析师提供了可靠信息。由于阿尔斯提供了有关攻击检测和缓解技术的关键数据,因此它们还可以通过将模式相似性与预定义事件进行匹配来帮助处理新的未识别网络安全事件。此外,为了简化提取阶段,创建了一个基于斯坦福大学NER [46]的传统恶意软件实体提取器,该提取器在CVE和安全博客上进行了训练,以相应地标记每个单词。
持续维护的另一个网络安全KG是Kiesling等人[47]引入的SEPSES。SEPSES封装并关联从漏洞到攻击模式和弱点的基本信息。KG中的数据来自多个来源,修改内容会立即纳入真实世界中,例如,CVE数据会持续输入到其模型中,并每两小时更新一次,这对于捕获入侵检测系统引起的警报以及提供更新的漏洞评估非常有价值。
然而,本节中的上述工作要么依赖于结构化文本来填充KG,要么将提取限制为预定义的信息集。对于[12]的工作,作者使用RE,而[47]的作者完全依赖于Apache Jena用于特定关系的三元组公式化。这进一步证明了Open-CyKG的优势,因为它采用了OIE,所以它不局限于预定义的关系集或本体论来从网络安全报告中提取信息。
3.开放CyKG框架
我们的Open-CyKG框架如图2所示。管道由三个主要模块组成;从非结构化APT报告中提取关系三元组的神经OIE系统、根据预定义的标签集识别和分类每个词的网络安全NER模型、以及KG构建和融合阶段,其中示出了从OIE阶段提取的三元组。KG被构造为使得所提取的实体表示KG节点,并且边对应于耦合实体的所提取的关系。
3.1.神经元OIE模型
我们的OIE模型如图3所示。这是我们在[17]和[18]中描述的OIE之前工作的升级。我们使用BIO(开始、内部和外部)标记方案[48]将OIE作为序列标记任务来处理,以这种方式产生的结果是每个句子的一组重叠元组。
因为RNNs隐藏单元中存储信息的能力,他们被认为是合适的选择处理连续数据相比,前馈人工神经网络就像cnn也难以捕捉长途单词之间的依赖关系。然而,RNNs更难火车较长的序列由于消失和爆炸的梯度下降的并发症,导致性能显著降低。RNNs通过反向传播训练时间,进一步我们通过几个时间步,逆向传播梯度越小起床直到它消失或爆炸。作为解决方案,介绍了扩展版本的RNNs——LSTMs和GRUs——减轻消失梯度问题通过部署适当的盖茨允许梯度有效流动,同时保持长期依赖[15,49]。GRUs被视为少LSTMs的复杂变化,都是建立在控制概念,在LSTM架构编制的三个门;输入、输出和忘记,GRU两输入和忘记门到单个更新门。我们选择部署GRUs而不是LSTM也是因为GRUs使用较少的训练参数,与LSTM相比,GRUs的执行和训练时间更快。
除了嵌入单词及其对应的POS,并将它们作为输入传递到我们的神经网络之外,特征向量还通过传递短语的谓词来进一步丰富,因为谓词被视为任何句子的构建块。输入特征向量(F. V)表示为等式(一).
其中表示3个输入的连接:用w表示的单词,使用NLTK工具包[50] POS(w)获得的其对应的POS和句子的谓词wPred,其中每个单词属于句子S。所有前面提到的输入都是使用如第4.2.1节中所讨论的上下文化单词嵌入来嵌入Emb的。
然后将嵌入的特征向量传递到两个Bi-GRU层。如图3所示,Bi-GRU由两个反向操作的GRU组成,利用Bi-GRU而不是单向GRU的意义在于,在每个时间步长期间,在两个方向(前向和后向)上捕获信息,以有效地执行序列标记。
我们的OIE模型采用所有输入的级联,并将输入传递到两个双向门控递归单元(Bi-GRU)层,然后是注意层、两个时间分布密集(TDD)层,最后是用于预测的SoftMax层。
然后,来自Bi-GRU层的输出张量通过基于附加注意模块的注意层[51]。第2.1.1节中讨论的大多数拟定OIE神经模型的制定方式使得所有单词具有相同的重要性水平,然而,需要强调的是,并非句子中的所有单词在OIE任务中具有相同的贡献水平。为了解决这个问题,我们在我们的网络中采用注意机制来学习每个短语中单词的不同重要性,并将输出聚合到下面的双层时间分布密集(TDD)层,该层在每个时间步对传递的张量采用一致的密集层。最后,TDD层产生的张量被馈送到SoftMax层,其中输出是覆盖所有可能标签的个体概率分布。
3.2.网络安全-NER
对我们数据集中的网络安全实体进行分类的任务类似于第2.2.1节中讨论的先前研究的工作,但是使用了不同设计的神经网络,如图4所示。与我们的OIE方法类似,我们将NER任务表述为使用BIO标记器的序列标记问题,因为它被认为是最适合NER的标记模块,特别是在使用CRF的神经模型中[52],其中数据集中的每个单词根据其位置根据一组预定义实体进行标记。
最初,单词被翻译成它们各自的嵌入,并直接前进到下一层。由于NER中的长依赖关系建模是必不可少的,我们也选择部署RNN。为了捕获后向和前向信息,我们提出的网络安全-NER部署了一个Bi-GRU层,该层输出一个张量,随后将其传递到TDD层。最后,CRF预测层通过在每个可用标签上生成似然分布来标记数据集中的每个单词。
我们实现的网络安全NER神经模型体系结构由四个主要层组成;用于标签预测的嵌入、双向门控递归单元(Bi-GRU)、时间分布密集(TDD)和条件随机场(CRF)。
3.3.知识图的构造与规范化
为了产生Open-CyKG,处理从OIE阶段提取的关系三元组,并在KG中概述,如公式(2):
在所提取的OIE三元组(nh,e,nt)的集合由节点头nh和节点尾nt组成,其中节点头nh和节点尾nt都属于实体E的情况下,使用表示位于两个实体之间的关系R的边e将两个节点链接在一起。此外,命名实体标记作为属性分配给每个节点。使用Neo4J [53]生成的KG的非规范化样本如图5所示。
在构建KG时使用了多个信息源,这可能会导致重复。因此,应用细化和融合技术来解决这个问题是至关重要的。第一步是三重精炼:这两个步骤的过程包括去除冗余和模糊信息以及实体混合,其中在识别和去除非必要单词之后将相同实体合并在一起以仅保留信息实体。过滤任务还涉及消除OIE阶段生成的无信息三元组,其中,形成三个提取组件的所有单词未分配网络安全NER阶段的任何命名实体标签。
构建过程中另一个在前一步骤中未捕获的常见挫折是实体歧义消除,其可以以两种矛盾的方式来感知,第一种是确保实体向其所有连接的节点表示相同的语义概念,而第二种是统一和合并表示相同概念的实体。KG中的实体消歧被认为是一个独立的研究问题,超出了本文的范围。然而,我们通过使用上下文化的词嵌入来捕获实体的语义来执行实体融合来简要地关注这个问题。在我们的工作中,我们对4.2.1节中详细讨论的几种单词嵌入进行了实验。
在Open-KG规范化中使用词嵌入来解决生成的知识图中的歧义的潜力已经由的工作证明。首先对生成的所有主题在实体中的词嵌入进行平均,然后利用余弦相似度作为距离度量,进行层次凝聚聚类(HAC)对实体进行聚类。我们选择HAC是因为它不需要预先定义集群的数量。 此外,它支持完全链接聚类,类似于最远邻居聚类的概念,最初每个平均嵌入都是一个单独的聚类,在每一步中,具有最小最大成对距离的两个聚类被合并。完全连锁聚类适合于KG规范化,如[38]所示,因为与单一和平均连锁聚类相比,小尺寸的聚类是预期的。 图 6说明了图的规范版本 5、节点在聚类过程后进行合并。
最后一个阶段是为每个集群确定一个代表。根据[38]的工作,我们计算所有生成元素嵌入的平均值,加权每个元素在输入中的出现次数。选择与加权聚类均值距离最小的实体作为代表。
为了进一步阐明规范化在解决歧义和冗余方面的重要性,请考虑以下两个三重摘录:
4.1. MalwareDB数据集
随着世界的数字化发展,设备更容易受到恶意软件的攻击,这可能导致从未经授权访问个人数据到设备损坏等不幸事件。 MalwareDB[60]是一个基于恶意软件属性枚举和特征描述(MAEC)词汇表的注释数据集,它主要概述了从39个APT报告中收集的恶意软件特征。 图 7显示了前面提到的数据集中的一个示例,其中包含从OIE任务中提取的三元组。
OIE是Open-CYKG中构造KG的主要构建块,因此我们的主要目标是有效地识别成功查询所需的关系三元组。因此,训练数据在我们的工作中是至关重要的。不幸的是,持续的挑战之一是缺乏生物标记数据,特别是在网络安全等研究不足的领域。虽然构成MalwareDB数据集的39个APT报告最初包含6,819个句子,但我们只能将1,910个句子归类为信息句子,这很有挑战性地形成了我们的训练、测试和验证集。 无信息句可以定义为:
1.由O组成的句子:只在标签之外。
2.没有任何关系标签的短语。
3.只包含单个实体的句子。
然而,目前在网络安全领域没有生物标记的替代数据集。
4.2. 实验结果与分析:OIE
在本节中,我们评估我们提出的基于注意力的OIE模型的结果,我们遵循分别在3.1和4.1节中讨论的框架配置和数据集。
4.2.1. 字嵌入
近年来,人们提出了各种类型的嵌入,从字符和单词嵌入到句子和文档嵌入。 尽管如此,它们都提供了将文本输入映射到语义上有意义的向量表示的相同功能。 创新的上下文化词嵌入能够通过将上下文结合到生成的嵌入中来捕获一个词的密集语义和句法特征。 在我们的OIE任务中,三个输入被嵌入并馈送到网络,使嵌入的选择成为基础,因此我们选择了使用不同的词嵌入技术进行实验,通过选择一个传统的非上下文嵌入-手套[26]-和三个具有不同维度并在不同域集上训练的上下文嵌入。 为了进行我们的实验,我们使用了Flair[61],这是一个由Zalando Research开发的强大的开源框架,它为广泛的最先进的单词、文档和句子嵌入提供了统一的接口。 所使用的嵌入及其维数如表1所示。
4.2.2. MalwareDB的实验与评价
为了评估我们的模型的能力,我们用不同的实验设置和词嵌入对它进行了严格的分析。 如表2所示,BI-GRU的总体得分高于BI-LSTM神经网络模型。 更准确地说,我们的BI-GRU+注意力模型的F-测度得分为59.4%,比使用BI-LSTM+注意力网络时高出2.2%,两者在XLM-Roberta嵌入下都获得了最高的得分。
我们进行了一项消融研究,通过在BI-GRU网络上测试来测量注意机制的有效性,该网络类似于Sarhan等人引入的模型。 [17]和[18]。 通过去除注意力成分,BI-GRU模型获得了56.8%的F-测度得分,验证了部署注意力机制的影响,因为它有助于F-测度增加2.6%。 尽管GRUS和LSTMs比传统的RNN更好地捕获了长程依赖关系,但它们不能够将焦点指向某些输入词,从而指出对我们的任务重要的词,这进一步表明了在信息抽取任务中部署注意机制的重要性。
为了进一步评估我们的基于注意力的OIE模型的潜力,我们将我们的模型与Stanovsky等人提出的由BI-LSTM组成的另一种先进的神经OIE网络进行了比较。 [16]。 与以前的最先进的模型相比,我们的模型能够获得4.2%的更高的F-度量值。 BERT嵌入在BI-LSTM和BI-GRU两种网络中都获得了最高的结果。
Bi-GRUS比Bi-LSTMS性能更好的原因是GRUS能够公开完整的内存,而不像LSTMS。 此外,LSTM比GRU有更多的门,这导致梯度流过,这导致稳定的进展在许多历元后保持更加复杂[65]。 从我们的消融研究中可以得出的另一个有趣的结论是,采用了一种注意力机制来充分利用双向上下文信息,正如[66]和[8]的作者所阐述的那样。
应当强调的是,尽管实现适当的查全率和查准率是最佳情况,但查准率在我们的工作中更为重要,因为它反映了所提取信息的确定性。 在KG中,假阳性的维护成本很高,在高查全率和低查准率的情况下,KG中会充斥着无信息或虚假的信息,这将导致效率较低的查询体验。 然而,重要的是要注意到,我们的模型实现的最高精度是62.9%,使用Bert,Tradingoff的召回率较低,为54.7%,这导致F-度量值下降了0.9%,与表2中报告的我们的最高实现得分59.4%相比。
我们的模型的结果对超参数变化很敏感,因此进行网格搜索来挑选出最优的训练时间数和批量大小。 表3中报告了实现最佳结果的超参数配置。 所有BI-GRU层的隐藏大小设置为128,这也是两个TDD层中使用的相同数量的单元。 出于防止过度拟合的正则化原因,辍学率调整为0.1。 此外,根据模型在开发集上的性能,采用提前停止的方法终止训练。 此外,在两个TDD层中应用了一个线性激活函数,即整流线性单元(RELU)[67],而ADAM优化器[68]用于训练我们的模型。
此外,由于训练集的有限大小影响了神经网络的性能,我们能够通过在一个更大的注释新闻数据集[69]上进行实验来进一步评估我们提出的基于注意力的OIE模型,该数据集由2906个训练句子组成。 F-Measure提高了3.2%,强调了训练数据的有限规模确实发挥了重要作用。
4.3.实验结果及分析:NER
由于MalwareDB数据集没有命名实体注释,我们无法基于MalwareDB提取来训练或评估我们的模型。在本节中,我们将讨论用于训练和验证3.2节中描述的NER神经网络的数据集。
4.3.1.数据集
为了执行对KG节点进行细化和标记所必需的NER,我们使用了两个不同的训练集,每个训练集包含不同的标记集。然后合并两遍处理的输出,以将两个数据集的标签分配给命名实体。[5]中使用的第一个数据集Microsoft Security Bulletins也被作者注释并广泛访问。它由5072个句子组成,讨论Microsoft软件产品中的漏洞和安全缺陷,以及各种修补程序和缓解信息。从Microsoft安全公告数据集中抽取的随机样本如图8所示。[25]中使用的第二个数据集是从各种CTI报告中收集的恶意软件特定数据集,共产生3450个句子,其中包含与恶意软件相关的预定义命名实体,这些实体被视为我们基于恶意软件的APT报告中的关键元素。两个数据集中的预定义标签及其在训练集中的相应比率如图9所示。值得注意的是,当两个标签分配给一个单词时,我们选择恶意软件特定的CTI报告标签,因为它与我们的APT报告数据集更密切相关。
4.3.2.实验与评价
对于这两个数据集,我们将语料库分成两个部分,80%用于训练,20%用于测试,为了验证的目的,设置训练集的0.1的分数,以评估每个时期结束时的损失。为了验证我们模型的质量,我们进行了五重交叉验证。我们选择了分层的K-折叠,因为它通过在训练和测试拆分中保留类的分布,避免不平衡的标签分布,使交叉验证过程更进一步。为了验证我们的NER网络架构的效率,我们将我们的模型的性能与不同基线和最先进模型的结果进行了比较。
表4显示了Open-CyKG在Microsoft安全公告数据集中采用的NER模型的完整结果。我们可以清楚地发现,通过评分98.5% F-测量值,提出的模型优于基线和最新模型。更准确地说,当将我们的Bi-GRU + CRF结果与Bridges等人[5]报告的采用手工规则的传统方法的基线进行比较时,我们可以看到我们的模型优于F-测量评分的20%以上。此外,当我们将我们提出的Bi-GRU模型与具有50批和30个历元的Bi-LSTM网络架构进行比较时,F度量增加了1.9%。
结果表明,所有模型都获得了较好的精度,但神经网络模型的总体性能明显优于手工规则。Bridges等人[5]模型实现的低召回率促成了这一下降,其背后的基本原理是由于自然语言表达的巨大变化,特别是反映在任务(如NER和RE)中,[70]的工作也显示了这一点。
我们的NER模型在第二个数据集-CTI报告-上的性能如表5所示。在本实验中进行了三个比较;第一种是最初注释和构建CTI报告数据集的基线模型,该数据集采用Simran等人[25]提出的基于BOC的Bi-LSTM + CRF网络架构。第二种是基于字符的CNN,也使用Bi-LSTM架构。纯Bi-LSTM + CRF网络是我们的第三个比较,其用我们模型的相同超参数训练。正如我们的模型与基线比较时观察到的,我们的模型评分为79.8%,比Simran等人[25]的评分高4.7%,主要体现为我们模型的召回率提高了10.3%。除了报告他们的模型在CTI报告数据集上的发现之外,[25]的作者还报告了使用基于CNN的Bi-LSTM + CRF网络的评分-第二次比较-与BOC系统的评分几乎相同,与我们的模型评分相比,F测量值降低了4.8%。此外,根据我们对Microsoft安全公告数据集进行的评价,我们实施了最先进的Bi-LSTM + CRF网络,在表5中报告的所有其他模型中,该网络在10个训练阶段(批量为50)获得了71.1%的F指标评分,从而实现了最低评分。
除了第4.2.2节中提到的Bi-GRUs优于Bi-LSTM的原因外,在本实验中,我们将增长归因于本NER任务中使用的CTI数据集的性质,这是一个包含长句的小数据集。在[71]的工作中也观察到这种现象。
表6列出了我们的超参数配置,实现了表4和表5中报告的两个数据集的评分。Bi-GRU层和TDD层具有相同数量的单元(50),其中ReLU被选择作为TDD层中的激活函数。与我们的OIE网络类似,脱落率设置为0.1,以防止过度拟合,并使用提前停止。所有模型均采用Adam优化算法进行训练。
虽然MalwareDB数据集没有注释命名实体标记, 结果表明, 我们的模型可以有效地标签cybersecurity-related条款。为了进一步验证我们的尼珥的性能模型,随机样本的10%被选MalwareDB测试集和人工注释比较模型的预测标签。当微软安全公告数据集训练我们的模型实现了召回,精度和Fmeasure 85.5%,分别为87.7%和86.6%。培训在CTI报告导致召回,精度和F-measure 83.6%,分别为82.3%和82.9%。
4.4.规范化评价
为了使用Open-CyKG中执行的上下文化单词嵌入来评估规范化,我们手动构建了表示所有提取实体的地面真实聚类的聚类的金标准。我们遵循[38,54,72]的工作,使用宏观、微观和成对度量来评估规范化。我们在下面简要解释这些指标。令C是由Open-CyKG规范化产生的簇,G表示金标准簇。
宏观:宏观精度(Pmacro)可以定义为通过我们的方法在C中形成的连接到相同金标准G的纯簇的分数。而宏召回率(rmacro)是(pmacro)的反面,通过交换C和G的角色,如EQS中所见。 (3)和(4)。
微观:微观精度(Pmicro)测量聚类C的纯度,假设在聚类中提及的最频繁的黄金实体是正确的实体[73],如等式所示。(5),其中N表示中提及的次数输入。以类似的方式,微召回率(Rmicro)是(Pmicro)的倒数,如公式(六).
成对:集群C中的命中表示两个提及引用了相同的黄金实体。 成对精度(ppairwise)测量C中的命中数(#hitsc)与C[38]中的总可能对数(#pairsc)的比率,其中 EQS. (7)和(8)分别定义了成对查准率(p-pairwise)和成对查全率(r-pairwise)。
在所有情况下,F测度被定义为模型的查准率和查全率的调和平均值。 HAC聚类的最优阈值是通过对验证集进行网格搜索来确定的。 由于XLM-Roberta是OIE阶段得分最高的语言模型,我们使用生成的嵌入来计算距离度量。 需要强调的是,聚类阶段使用的词嵌入是基于整个输入句子生成的,以充分利用上下文嵌入的概念。 结果见表7。 我们观察到,在所有指标中实现的召回都是中等到良好的,符合相关著作[38,54,72]中报道的规范化结果。 然而,如果我们观察成对精度,我们可以注意到它相对较低,这表明C中不是所有的对实体都指向同一个Gold实体。
4.5. 用Open-CYKG演示信息检索
在本节中,我们将介绍两个示例查询,一个是针对恶意软件的常规查询,另一个是针对漏洞攻击的更具体的查询。 为了进一步说明所应用的融合技术的效果,我们通过单独应用我们的细化过程的第一阶段来进行烧蚀分析,如第3.3节所述。 消融分析是通过分析查询的结果来支持的,以检查Open-CYKG规范化中单词嵌入的结果。
Cypher[74]是Neo4J中官方支持的查询语言。 它是一种受SQL启发的声明性查询语言,允许用户从图数据库中检索数据。 执行的查询及其密码翻译显示在图 10.
在第一个查询中,open-cykg能够检索不同的信息,只要它直接连接到“恶意软件”节点。 大多数检索到的数据捕获了关于恶意软件威胁的有价值的见解,而在某些情况下,提取可以被认为信息较少,如“恶意软件通过电子邮件”,或不信息,如“恶意软件发送被恶意软件捕获的数据”。 在第二个查询中,检索到的数据必须与“攻击者”和“水洞攻击”有关,因为这个查询具有更高的特异性,所以它只导致两次提取,尽管“攻击者使用水洞攻击来感染其受害者”可能被解释为没有信息的提取。 然而,当在OpenCyKG的规范化版本上执行查询时,KG能够对所请求的数据提供更多的见解。 此外,由于在4.3.1节中讨论的生成的命名实体标记被作为属性分配给节点和边,因此可以在查询时利用它们来消除无信息或不明确的提取。
正如所观察到的,使用上下文化词嵌入的规范化有助于捕获更多的信息,因此,安全分析师可以查询Open-CYKG以检索关于特定网络实体的数据,尽管在各种APT报告中的表达不同。