一种基于大数据行为序列分析的apt攻击检测方法
【技术领域】
[0001]本发明涉及网络威胁检测技术领域,尤其涉及一种基于大数据行为序列分析的APT (Advanced Persistent Threat,高级持续性渗透)攻击检测方法。
【背景技术】
[0002]随着网络技术的迅猛发展,网络规模不断扩大,信息服务也广泛普及,无论是民用还是军用的很多关键业务都依赖于网络,导致网络攻击越来越频繁,使得信息安全形势日趋严重。尤其是近年来针对特定目标进行的高级持续性渗透攻击(简称APT攻击,AdvancedPersistent Threat)更是对网络安全造成了巨大的威胁。极光攻击、震网病毒、火焰病毒、暗鼠行动等都是APT攻击的典型案例。而随着智能终端的不断普及,APT攻击的威胁更是从传统网络扩展到移动互联网领域。
[0003]APT攻击具有持续时间长、攻击特征难以提取、单点隐蔽性强以及攻击渠道多样化的特点,防范难度很大。目前针对APT攻击的防范措施大多针对网络层的威胁,而APT攻击范围包括物理层、链路层及应用层等整个信息系统,现有的防范措施只是简单的提升防护壁皇,仅仅提高了攻击者的成本,无法实现对APT攻击的全面感知。
[0004]对于APT攻击的威胁,目前的主流解决方法是基于异常的流量检测技术,它通过建立流量行为轮廓和学习模型来识别流量异常,进而检测APT攻击威胁。本质上,它通过流量建模检测威胁,是一种基于统计学和机器学习的技术。如专利号为CN103916406A公开的“一种基于DNS日志分析的APT攻击检测系统与方法”,该方法是一种轻量级的攻击检测方式,仅根据DNS查询日志进行模式匹配来检测威胁,准确率较低,对于APT攻击检测的准确率不高。
【发明内容】
[0005]本发明提供了一种基于大数据行为序列分析的APT攻击检测方法,能够提高检测威胁的准确率,进而构建了安全高效的网络主动防御体系,可以有效克服APT攻击对网络安全造成的威胁。
[0006]本发明提供了一种基于大数据行为序列分析的APT攻击检测方法,包括:
[0007]探测用户的操作行为,构建用户操作行为序列库;
[0008]去除所述用户操作行为序列库中的冗余行为序列,优化所述用户操作行为序列库;
[0009]基于大数据方法提取用户操作行为序列;
[0010]将提取的所述用户操作行为序列与所述用户操作行为序列库中的行为序列进行匹配分析,输出匹配结果;
[0011]分析所述匹配结果,输出威胁行为。
[0012]优选地,所述探测用户的操作行为,构建用户操作行为序列库包括:
[0013]探测用户的操作行为,所述操作行为为正常行为;
[0014]利用串表压缩算法提取所述操作行为中的序列模式;
[0015]判断所述序列模式是否存在于行为列表中,若否,则将所述序列模式记录在所述行为列表中,并将所述序列模式的出现次数设为1 ;若是,则将所述序列模式的累计出现次数加1 ;
[0016]判断所述序列模式的累计次数是否大于等于预设阈值,若是,则将所述用户的操作行为作为有效行为加入用户操作行为序列库。
[0017]优选地,所述去除所述用户操作行为序列库中的冗余行为序列,优化所述用户操作行为序列库包括:
[0018]计算用户操作行为序列库D中的任一序列?1与用户操作行为序列库D中其余序列的编辑距离,将编辑距离为1的所有序列构成候选子集合Si,其中,所述编辑距离为两个序列之间,由一个序列转成另一个序列所需的最少编辑操作次数;
[0019]在所述候选子集合Si中提取出权值与序列长度之积最大的序列模式,并去除其余序列;
[0020]重复上述过程,提取出出现频次最高且长度最大的序列,构成优化后的用户操作行为序列库。
[0021]优选地,所述基于大数据方法提取用户操作行为序列包括:
[0022]通过Map模块得到的中间结果(key,Values),所述key值是用户ID,Values值是行为序列和出现频次的组合(操作行为,出现频次);
[0023]将所述中间结果(key,Values)输入Reduce模块,所述Reduce模块计算出一个特定用户所有行为序列之间的编辑距离;
[0024]得到用户ID所对应的长度最长且出现频次最高的操作行为序列。
[0025]由上述方案可知,本发明提供的一种基于大数据行为序列分析的APT攻击检测方法,通过探测用户的操作行为,构建用户操作行为序列库,去除用户操作行为序列库中的冗余行为序列,对用户操作行为序列库进行优化,然后再基于大数据方法提取用户操作行为序列,将提取的用户操作行为序列与构建的用户操作行为序列库中的行为序列进行匹配分析,当用户操作行为序列与用户操作行为序列库中定义的行为相符合时,则判断该用户行为是正常行为,反之,则判断该用户行为为非正常行为,将作为威胁行为输出。提高检测威胁的准确率,进而构建了安全高效的网络主动防御体系,有效克服APT攻击对网络安全造成的威胁。
【附图说明】
[0026]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0027]图1为本发明实施例公开的一种基于大数据行为序列分析的APT攻击检测方法的流程图;
[0028]图2为本发明实施例公开的一种构建用户操作行为序列库的流程图;
[0029]图3为本发明实施例公开的一种优化用户操作行为序列库的流程图;
[0030]图4为本发明实施例公开的一种优化用户操作行为序列库的示例图;
[0031]图5为本发明实施例公开的一种提取用户操作行为序列的流程图;
[0032]图6为本发明实施例公开的一种提取用户操作行为序列的示例图。
【具体实施方式】
[0033]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0034]如图1所示,为本发明公开的一种基于大数据行为序列分析的APT攻击检测方法,包括以下步骤:
[0035]S101、探测用户的操作行为,构建用户操作行为序列库;
[0036]当需要对用户的操作行为进行网络威胁检测时,首先,探测用户的操作行为,其中,所探测的用户的操作行为均为正常的行为,即不存在异常行为,通过探测到的用户的操作行为构建用户操作行为序列库,即构建用户操作行为的标准序列库。
[0037]S102、去除所述用户操作行为序列库中的冗余行为序列,优化所述用户操作行为序列库;
[0038]由于用户的重复操作行为以及不同用户相同的操作行为,构建好的序列库还需进一步压缩,去除其中的冗余序列信息,使序列库得到优化。
[0039]S103、基于大数据方法提取用户操作行为序列;
[0040]然后,实时提取用户产生的操作行为序列。
[0041]S104、将提取的用户操作行为序列与优化后的所述用户操作行为序列库中的行为序列进行匹配分析,输出匹配结果;
[0042]将实时提取到的用户操作行为序列与优化后的用户操作行为序列库中的行为序列进行匹配分析,即判断实时提取到的用户操作行为序列是否与优化后的用户操作行为序列库中的行为序列相匹配。
[0043]S105、分析所述匹配结果,输出威胁行为。
[0044]当判断提取到的用户操作行为序列与用户操作行为序列库中的行为序列相匹配时,则判定该用户的操作行为为正常行为,当判断提取到的用户操作行为序列与用户操作行为序列库中的行为序列不相匹配时,则判断该用户的操作行为为非正常行为,将该用户的操作行为作为威胁行为输出。
[0045]具体的,如图2所示,