APP下载

基于多标签机器学习的攻击技巧提取方法

2020-03-05杨频李孟铭

现代计算机 2020年1期
关键词:词频攻击者语义

杨频,李孟铭

(四川大学网络空间安全学院,成都610065)

0 引言

为了应对快速发展的网络安全威胁,网络安全研究从业者以报告和记录的形式在个人博客、公司网站上分享最新发生的网络安全事件。这些报告既包含有所发生事件详细经过以及所发现的。通过收集、利用这些报告中所含有的IP、域名等低级IOC 数据和攻击者所使用的攻击技巧等高级IOC,各类网络安全防御产品能够做出及时调整以应对最新的网络安全威胁。随着网络安全事件频频发生,相关事件报告也在不断发布,以人工阅读的方式提取报告中出现的攻击技巧将给网络安全人员带来较大的工作量,同时又可能因为个人经验的不足引入难以预计的误差。因此自动提取网络安全事件报告中的攻击技巧,成为开源威胁情报应用于网络防御的重要技术手段。

根据MITRE 公司的定义[1],攻击技巧是指攻击者在网络安全事件中所采取的方法、或者攻击者尝试获取的目标信息。例如,APT28 组织在对美国民主党总部进行攻击的初始阶段,通过鱼叉链接的方式入侵目标网络。在这个例子中,鱼叉链接这种方法就是攻击者所采用的攻击技巧之一。目标信息被看作是一种攻击技巧,是由于特定信息可以帮助网络安全研究人员更好地理解攻击者的行动目的。但是在网络安全研究人员分享最新网络安全事件的过程中,很少有安全人员会去参考现攻击技巧标准,如CAPEC[2]、ATT&CK[1]等,只有少数报告会明确标注攻击者所使用的攻击技巧。

为了更好地利用网络中现有的网络安全事件报告,本文提出一种结合机器学习算法和自然语言处理技术的攻击技巧提取方法。该方法将攻击技巧提取问题视为一种有监督的多标签机器学习问题,首先使用隐藏语义分析算法从文章中提取关键词组,再通过计算各关键词词组与各个攻击技巧之间的关系获得语义相似度,并将该语义相似度作为特征进行机器学习。经实验验证,本文所提出的攻击技巧提取方法准确率达到60%以上,该准确率在多标签学习领域已属于令人满意的结果。深入实验表明,本文所提出的方法在攻击技巧提取方面,具有直接和间接的参考借鉴价值。

1 相关工作

从网络安全事件报告中提取攻击技巧正成为学术界研究的热点。

Husari 提出一种基于本体的方法来提取同攻击技巧[3]。该方法首先通过人工方式构建若干攻击技巧本体,然后从文本中通过关键字匹配的方式提取与本体相关的动词作为候选词,再通过计算语义相似度的方式判断该候选词是否为所定义的攻击技巧。该方法所定义的攻击技巧并没有包含如目标信息类的、常常以名词形式出现的攻击技巧。Noor 等人也提出一种基于语义相似度的方法来从与APT 组织有关的报告中收集攻击技巧进而进行攻击事件溯源的方法[4]。该方法使用隐藏语义分析方法来发现一组与某一APT 组织相关的报告中,攻击者常用的攻击技巧,并利用提取的攻击技巧做特征,进行机器学习,对发生的网络安全事件进行溯源。

2 攻击技巧提取方法

本文所提出的攻击技巧提取方法,可以划分为三个部分,包括文章主题提取、语义相似度计算和多标签机器学习分类方法。首先,本文使用隐藏语义分析算法从与网络安全事件有关的文章中提取文章主题词;然后,使用语义相似度方法,计算文章主题词与各个ATT&CK 标准之间的相似度;最后,将提取出的相似度作为文章特征,利用多标签机器学习算法,提取文章所含有的攻击技巧。

对文章中所含的网络攻击技巧进行提取,首先需要对网络攻击技巧进行明确定义。目前被学术界、产业界广泛接受的网络攻击技巧包括美国国土安全部推出的CAPEC 标准和MITRE 公司推出的ATT&CK 标准。由于ATT&CK 提出时间较晚且更新频次更快,更能适应当前网络安全趋势的发展,因此本文选取ATT&CK 作为攻击技巧标准。

2.1 基于隐藏语义分析方法的主题词提取

本文使用隐藏语义分析算法(Latent Semantic Analysis,LSA)提取文章的主题词。LSA 算法是一种常用的主题词提取算法,常被用于文本数据挖掘。LSA算法假设文章中语义相近的词汇将分布于文章的同一位置,并根据该假设对一组文章的单词进行聚类、过滤以获得一组文章中所含有的不同类别的主题词组合。在网络安全事件相关的文章中,通常对攻击者实施的某一手法、采用的某一工具的详细描述集中在文章中的某一段落中,且语言力求正式、明确。为将LSA 算法应用于提取文章主题词,本文作了如下假设:每一篇文章都是由主题相同或不同的“短文”组成,每一个段落是包含一个或多个主题的“短文”,文章的每一句话都是对于一个具体主题的描述。

基于LSA 算法和以上假设,本文应用LSA 算法从网络安全事件文章中提取不同类别的主题词。首先,针对一篇文章所包含的“短文”组构建词频矩阵。在词频矩阵中,每一行向量代表一个“短文”中出现的各个单词的词频,每一列向量代表一个单词在不同“短文”中出现的频次。然后,对所构建的词频矩阵进行奇异值分解,获得一个比原词频矩阵要小得多的语义空间,实现不同类别主题词提取。如果一篇文章详细描述攻击者使用了基于附件的钓鱼攻击技巧,同时使用DNS隐蔽信道技术构建受害者与控制服务器之间的通信,则通过LSA 算法提取出的主题词组可能包含有(“phishing”,“email”,“attachment”)和(“DNS”,“connection”,“C&C”)。

2.2 文本相似度计算

本文通过计算关键词与各个攻击技巧之间的语义相似度作为多标签机器学习的特征向量。如前文所述,本文选取ATT&CK 标准作为攻击技巧标准并通过构建词频矩阵和计算余弦相似度的方法获取语义相似度。

本文从所选取的各个攻击技巧标准集合中构建词频矩阵。首先,所有文本都按照Bag-of-Words 模型构建词典,然后计算词典中每个单词在不同攻击标准中出现的频次,最后将所获取的词频数值进行归一化。所构建的词频矩阵,每一行代表不同攻击技巧标准所含词汇的词频特征,每一列代表某一词汇在不同攻击技巧中出现的归一化频次。在构建词频矩阵后,对待查询的关键词进行检索,获取该关键词词组的向量表示,并计算该向量与词频矩阵每一行之间的余弦相似度。

计算关键词词组所对应的不同攻击技巧的向量和,即可求出该文章的特征向量。假设共有4 类攻击技巧,基于隐藏语义分析方法从文章中提取出3 组关键词,通过计算余弦相似度,可以获取三组特征值,如(0.11,0.06,0.25,0.05),(0.02,0.12,0.04,0.31)和(0.13,0.05,0.11,0.21),则能够代表该文章的特征向量可以表示为(0.26,0.23,0.40,0.57)。

2.3 面向攻击技巧提取的多标签分类问题

在传统的单一标签文本分类任务种,一个文档只与一个标签相关。包括二分类机器学习和多分类机器学习都属于单一标签分类任务。在多标签分类任务中,一个文档可能同时属于多个标签类别。常用的多标签任务解决策略包括BR(Binary Relevance)法和LP(Label Powerset)法。BR 法按照标签数量构造相互独立的二分类机器学习模型,而LP 法将每一个标签组合视为一个标签组,将问题转换为针对标签组的多分类问题。考虑到一次安全事件中出现的攻击技巧组合的随机性,本文选用BR 法作为解决多标签分类问题的策略。

由于多标签分类问题与单一标签分类问题的不同,多标签分类问题的分类评估方法也需要做出改变。针对多标签问题,常用的评价标准包括分类准确率、回归率和F-1 值。设D 为样本总和,T 为第i 个样本所含有的真正的标签集合,P 代表通过多标签分类模型预测出的标签集合,则该模型分类结果的准确率(Precision)、回归率(Recall)和F-1 值可以分别通过式(1-3)求得。

3 实验验证

本文对所提出方法的有效性进行实验验证。实验首先验证不同多标签问题解决策略下,使用多种机器学习算法取得的效果;然后研究多标签机器学习分类模型对于不同类型攻击技巧的分类效果。本实验所使用的数据集合为SCU-iGroup 整理的Attack-Technique-Dataset 数据集[5]。该数据集包含有55 篇网络安全事件相关的报告,共有10 种攻击技巧,这10 类攻击技巧包括信息混淆、附件形式的鱼叉攻击和用户执行等。

3.1 不同策略下的多标签分类结果

本文选择支持向量机算法、朴素贝叶斯算法和决策树作为基本的机器分类模型,将所选的三类分类器模型分别按照BR 策略和LP 策略构建多标签分类模型。经过10 折交叉验证,结果如表1 所示。根据结果可知,BR 策略整体上优于LP 策略,且在BR 策略下,支持向量机算法能够获取最好的F-1 值,决策树算法能够获取最好的分类准确率。同时,本文所提出的方法整体接近在60%的分类准确率,在多标签机器学习领域也属于较好的结果。

表1 BR 策略与LP 策略对比

3.2 攻击技巧的提取效果

实验选取BR 策略下的支持向量机算法,采用10折交叉验证方法,统计各类攻击技巧的提取结果,结果如表2 所示。结果表明,针对每类攻击技巧,本文提出的方法有不同的表现效果。对于如鱼叉攻击类型的攻击技巧,本方法能够取得较好效果;但是对于如远程文件复制以及用户执行这类的攻击技巧却没有取得理想结果。这是由于报告的作者并没有详细地描写攻击者的此类行为,更多作者都忽略了此类攻击技巧,限制LSA 算法的效果。

表2 不同攻击技巧的提取效果

4 结语

本文提出了基于多标签机器学习的攻击技巧提取方法,并通过实验验证了所提出算法的实现效果,实验结果表明所提出的攻击技巧提取方法可以用来从开源网络安全事件报告中收集与攻击者攻击手法相关的信息,具有一定的应用价值。进一步,可以通过在关键词提取、语义相似度计算和数据集标注方面进行深入探究,提升分类效果。

猜你喜欢

词频攻击者语义
真实场景水下语义分割方法及数据集
基于贝叶斯博弈的防御资源调配模型研究
正面迎接批判
正面迎接批判
词频,一部隐秘的历史
汉语依凭介词的语义范畴
汉语音节累积词频对同音字听觉词汇表征的激活作用*