一种APT攻击检测方法技术

技术编号:15624211 阅读:279 留言:0更新日期:2017-06-14 05:52
本发明专利技术公开了一种高级持续性威胁(Advanced Persistent Threat,APT)攻击检测方法,利用半监督学习算法来标记特征相似的数据,利用少量已标记数据生成大规模的训练数据集,并引入信息增益率来确定不同特征对检测的影响程度;采用信息增益率对检测模型中划分的每个子数据集进行特征提取,以实现对未知攻击的准确识别。本发明专利技术利用改进的k‑means算法来标记特征相似的数据,在少量人工标记数据的基础上实现了大量训练数据集的准确标记,保证了模型的检测精度;通过在模型中引入信息增益率来确定不同特征对检测的影响程度,减少数据中冗余及噪声特征的影响,从而选取重要的流量特征,提高检测模型的泛化能力,以应对未知攻击的检测。

【技术实现步骤摘要】
一种APT攻击检测方法
本专利技术属于网络安全领域,尤其涉及一种APT攻击检测方法。
技术介绍
高级持续性威胁是一种有组织、有特定目标、持续时间极长的新型攻击。随着震网(Stuxnet)、Duqu、火焰(Flame)以及2015年针对乌克兰电厂的Killdisk攻击的曝光,可以看出,APT攻击会对各类工控网络和关键信息基础设施的安全造成巨大的威胁。APT攻击的主要目标是窃取军事机构、政府机关、国家基础设施以及高新技术企业等机密信息或造成指定的破坏。其特点主要有以下两点:(1)攻击手段高级。攻击者多利用0day漏洞等未知攻击进行入侵,如对伊朗核电站发起的攻击,攻击者在6年时间里分别利用了Flame病毒、Stuxnet病毒以及Duqu病毒等多种未知漏洞进行攻击。然而,当前对未知网络攻击的检测具有很大的挑战性。(2)攻击持续时间长。攻击者为了完成攻击目标可能潜伏数月甚至数年,如从2006年开始的“暗鼠行动”渗透并攻击了全球多达72家公司和组织的网络,直到2011年才被McAfee和Symantec公司发现并报告。再如从2007年开始针对5家西方跨国能源公司的油田操作机密信息窃取的“夜龙攻击”,4年后才由McAfee报告并发现。正是由于该特性,使得本专利技术需要从大量的网络流量/主机行为数据中对APT攻击进行检测。APT攻击虽然采取的手段不同方式各异,但最终均会在网络底层原始数据流上反应。由于机器学习(MachineLearning,ML)在处理大数据及攻击检测方面具有明显的优势,共同使得它在APT攻击检测领域极具研究前景。当前基于机器学习的APT攻击检测方案均采用监督学习的方法,其基本思想是通过提取当前网络流量数据或主机行为数据的特征,将已知正常或异常的历史流量数据作为训练数据集,在此基础上利用分类算法对网络流量数据或主机行为进行标记分类,以区分正常和异常行为。然而,这些方法存在以下问题:(1)针对特定网络的训练数据集有限。在实际APT攻击场景下,训练数据往往需要通过专家知识进行人工标记而产生,因此准确的已标记数据集一般规模非常有限,大部分是未标记历史网络流量数据,不知道其为正常或异常。而监督学习本身需要大量的已标记数据作为训练数据集,训练数据集的规模及准确程度直接影响到模型的检测性能。因此,如何利用少量已标记数据生成准确的训练数据集以保证模型的检测精度是当前APT攻击检测面临的一大挑战。(2)网络流量特征难以选取。当前基于监督学习的APT攻击检测更多是基于传统入侵检测开展研究,对于已知攻击的检测具有一定的优势。然而APT攻击多利用0day漏洞等未知攻击,针对不同目标网络所采取的攻击可能各不相同,即使对于相同的目标网络攻击者利用的0day漏洞也可能是动态变化的,而不同的未知攻击所表现出来的底层网络流量特征也不尽相同。因此,如何针对特定目标网络动态选取合适的网络流量特征以检测所遭受的未知攻击是面临的另一挑战。网络级持续性威胁是一种新型的智能网络攻击,其主要特点为0day漏洞等未知攻击的利用以及持续时间长。综上所述,当前基于机器学习的APT攻击检测中训练检测模型的人工标记数据过少、未知攻击的流量特征难以选取的问题。
技术实现思路
本专利技术的目的在于提供一种APT攻击检测方法,旨在解决当前基于机器学习的APT攻击检测中训练检测模型的人工标记数据过少、未知攻击的流量特征难以选取的问题。本专利技术是这样实现的,提出一种APT攻击检测方法,所述APT环境下基于信息增益率的半监督学习攻击检测方法利用半监督学习算法来标记特征相似的数据,以少量已标记数据生成大规模的训练数据集,实现对历史数据的自动标记并获得更大规模且准确标记的训练数据集;并引入信息增益率来确定不同特征对检测的影响程度,采用信息增益率对检测模型中划分的每个子数据集进行特征提取,针对不同目标网络选取最有助于划分数据样本的特征,以实现对未知攻击的准确识别;最后采用基于信息增益的加权多数算法优化模型APT攻击检测性能。进一步,所述半监督学习算法具体步骤如下:(1)在已标记的正常和异常数据中分别随机选取一条数据作为簇的中心,选取N1,N5作为已标记数据簇和已标记数据簇的簇心c1,c2;(2)利用公式计算每条数据Ni分别与簇心c1,c2的距离d(Ni,ck),并将d(Ni,ck)值小的数据划分到一个簇内;(3)利用公式分别计算两个簇中所有点的质心并将其作为新的簇心c1′,c′2;(4)重复步骤(2)、(3)直至总的簇内离散度总和J达到最小时停止,其中离散度总和为每条数据Ni到其对应簇心ck的距离d(Ni,ck)的总和;(5)计算每类已标记数据在每个簇中出现的概率Pl,k,并以Pl,k最大时的l标记簇k的类别,最终得到训练数据集D;其中,Ni,m表示第i条数据的第m个特征值,ck,m表示第k个簇心的第m个特征值,m为网络流量特征的个数;I为数据集中样本总个数,I′为簇k中数据样本总个数。进一步,所述基于信息增益率的随机森林检测方法,利用Bootstrap重采样算法,每次有放回地从集合D中抽取一个数据样本,一共抽取I次,除去重复的数据,得到一个子训练集S1,重复此步骤q次,得到q个子训练数据集{S1,S2,...,Sq}用于生成q个不同的决策树以构建随机森林。进一步,生成每棵决策树Tq的具体步骤如下:步骤一,选取信息增益率最大的流量特征作为决策树的根节点;步骤二,找到选取的特征所对应数据集Sq中使该特征最快分裂到叶子节点的阈值,对该节点进行分裂;步骤三,在每个非叶子节点选择特征前,以剩余特征作为当前节点的分裂特征集,选取信息增益率最大的流量特征作为根节点分裂的非叶子节点;步骤四,重复步骤二和步骤三直至每个特征都对应有叶子节点为止,构建出Sq对应的决策树Tq。进一步,具体计算公式如下:其中,Sq为通过Bootstrap重采样随机选取的训练数据集D的子集;GainRatio(Sq,m)、Gain(Sq,m)、Split(Sq,m)分别表示子数据集Sq的信息增益率、信息增益和分裂信息,V(m)是特征m的值域;Sv是集合Sq中在特征m上值等于v的子集;A表示特征m的属性总数,特征Protocol_type,其属性有TCP、UDP、ICMP,所以其A=3;H(x)为数据集x的熵;pl为第l类样本数占总数据集的比例。本专利技术提供的一种APT攻击检测方法,利用半监督学习算法来标记特征相似的数据,并引入信息增益率来确定不同特征对检测的影响程度。实验结果表明,提出的模型对未知攻击检测的准确率、检测率较传统随机森林模型相比分别提高了3.18%、4.5%,误报率和漏报率分别降低了53.54%和40.76%。本专利技术利用改进的k-means算法来标记特征相似的数据,在少量人工标记数据的基础上实现了大量训练数据集的准确标记,保证了模型的检测精度;通过在模型中引入信息增益率来确定不同特征对检测的影响程度,减少数据中冗余及噪声特征的影响,从而选取重要的流量特征,提高检测模型的泛化能力,以应对未知攻击的检测。附图说明图1是本专利技术实施例提供的一种APT攻击检测方法流程图。图2是本专利技术实施例提供的网络流量特征示意图。图3是本专利技术实施例提供的基于半监督学习的历史网络流量数据标记过程示意图。图4是本专利技术实施例提供的基于信本文档来自技高网
...
一种APT攻击检测方法

【技术保护点】
一种APT攻击检测方法,其特征在于,所述APT环境下基于信息增益率的半监督学习攻击检测方法利用半监督学习算法来标记特征相似的数据,利用少量已标记数据生成大规模的训练数据集,并引入信息增益率来确定不同特征对检测的影响程度;采用信息增益率对检测模型中划分的每个子数据集进行特征提取,以实现对未知攻击的准确识别。

【技术特征摘要】
1.一种APT攻击检测方法,其特征在于,所述APT环境下基于信息增益率的半监督学习攻击检测方法利用半监督学习算法来标记特征相似的数据,利用少量已标记数据生成大规模的训练数据集,并引入信息增益率来确定不同特征对检测的影响程度;采用信息增益率对检测模型中划分的每个子数据集进行特征提取,以实现对未知攻击的准确识别。2.如权利要求1所述的一种APT攻击检测方法,其特征在于,所述半监督学习算法具体步骤如下:(1)在已标记的正常和异常数据中分别随机选取一条数据作为簇的中心,选取N1,N5作为已标记数据簇和已标记数据簇的簇心c1,c2;(2)利用公式计算每条数据Ni分别与簇心c1,c2的距离d(Ni,ck),并将d(Ni,ck)值小的数据划分到一个簇内;(3)利用公式分别计算两个簇中所有点的质心并将其作为新的簇心c′1,c′2;(4)重复步骤(2)、(3)直至总的簇内离散度总和J达到最小时停止,其中离散度总和为每条数据Ni到其对应簇心ck的距离d(Ni,ck)的总和;(5)计算每类已标记数据在每个簇中出现的概率Pl,k,并以Pl,k最大时的l标记簇k的类别,最终得到训练数据集D。3.如权利要求2所述的APT环境下基于信息增益率的半监督学习攻击检测方法,其特征在于,所述半监督学习具体公式如下:l=argmaxPl,k;其中,Ni,m表示第i条数据的第m个特征值,,ck,m表示第k个簇心的第m个特征值,m为网络流量特征的个数,m=28;I为数据集中样本总个数,I′为簇k中数据样本总个数。...

【专利技术属性】
技术研发人员:李兴华许勐璠苗美霞刘海马建峰李晖
申请(专利权)人:西安电子科技大学
类型:发明
国别省市:陕西,61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1