作者郑晓敏
1 引言
近年来,高级持续性威胁(advanced persistent threat,APT)越来越引起人们的广泛关注,APT具有应用技术手段高超、潜伏时间长、目的明确等特点,其引发的安全事件往往是对关键要害部门造成极大安全威胁的社会性事件。由于APT攻击者在进行攻击前往往进行长时间的准备,且进行攻击时的时间跨度可长达数月甚至数年,这使得如何准确预测APT的攻击时间成为难点。
目前,已有大量的学者对APT攻击的原理及特点进行了相关研究,也有学者提出了应对APT攻击的安全架构和防御策略。杜跃进等人提出了一种高低位协同监测的方法,剖析了APT的外延和内涵,将其抽象为数学模型并建立了威胁模型,从APT攻击的源头、途径和终端3个层面监测和发现APT异常行为;李凤海等人提出了站在全局角度,利用大数据全方位地对APT攻击进行统筹预测与防御的方案;Cole E提出了应对APT几个关键性阶段针对性防御的策略。但是,目前对于如何尽可能早地发现APT攻击行为还没有具体可实施的方案。
APT攻击的一个显著特点是其在一个长时间跨度内进行持续性进攻,可能是几个月甚至几年。在这样一个长时间跨度的攻击中,如何能尽可能早地发现攻击者的行为是APT攻击的防御方所面临的难题。而在攻击实施的最初阶段,攻击者往往寻找被攻击方的一个薄弱点
进行攻击(单点突破阶段)。在此过程中,攻击者会利用技术手段或社会工程学手段先控制被攻击网络中的一台主机、一个路由器或者一个用户权限作为跳板来为下一步攻击行为做好准备。在这一时段内,同一来源的主机、设备或者操作者的行为必将出现反常,如访问非常
用IP地址、权限扩大、频繁登录等。本文旨在抓住APT攻击的这一特点,对同源行为进行分析,从而尽早发现APT攻击。
在一个较长的可信时间段内,以网络中各台主机为对象,收集其在该时段内的所有单位时间窗内的网络数据流信息,包括操作者身份、使用权限、源IP地址、目的IP地址、源端口信息和目的端口信息,生成历史同源行为文件Mi,对其进行相应处理后建立历史同源行为数据库。进行检测时,收集实时同源行为数据与历史同源行为数据做对比验证,判断是否有异常同源行为的发生,为进一步判断是否存在APT攻击行为提供依据。
以APT攻击的单点突破阶段为突破点,创新性地提出一种基于同源行为分析的APT异常发现策略,该策略依托Hadoop架构以及MapReduce技术,运用基于散列函数的数据标签技术和伪随机置换并行验证技术,对防御网络中来自同一主机的网络行为进行学习并建立云数据库,对网络数据流进行实时监控,通过与数据库中的数据标签进行对比来判断是否有APT攻击行为。本文的创新点在于:利用APT攻击在单点突破阶段的特征,提出同源行为的
概念,并通过分析同源行为对APT攻击进行检测:提出基于散列函数的数据标签技术来对网络流量数据进行处理,从单个数据对比验证的角度降低数据对比验证时的开销:提出基于伪随机变化的数据标签对并行验证技术,对实时监测时的历史行为数据库进行抽样,从全流量检测的角度进一步降低数据对比验证时的开销。
2基于散列函数的数据标签技术
如果简单地将一定时间段内一台主机的不同历史同源行为数据进行存储,实时同源行为数据通过遍历数据库进行对比验证,这样不仅不能满足数据库的安全要求,当历史同源行为数据的大小超过某个值以后,进行验证的开销和耗时将随实时同源行为数据大小的增加而呈指数倍增长。最直接的数据对比验证方法是将原始数据与现有数据进行直接对比验证,虽然这种方法能够完全准确地比较出数据是否相同,但是在APT防御中将实时同源行为文件与海量历史同源行为文件进行对比验证,显然开销太大且太过低效,为此本文提出一种基于散列函数的数据标签技术。
数据标签是由历史同源行为文件进行相应运算后生成的、唯一代表历史同源行为的一种信息。在验证时,无需访问原始历史同源行为文件,也不需要网络传输文件,只需少量的数据传输即可进行实时同源行为与历史同源行为的对比验证。
数据标签生成模块将历史同源行为文件Mi以时间窗序列分割成Ⅳ个子文件,对每个子文件进行运算生成数据标签,计算式为:
其中,Wi=vlli,i为历史同源行为子文件mi中的索引i,v为一个安全素数,在文件处理的过程中随机生成.将v和i连接之后相当于对索引文件进行了加密处理,可以保证Wi不同且不可预测,满足了安全性要求。h(x)为散列函数,在这里使用MD5消息摘要算法,经散列转换后可得到一个128位的二进制数并将其转换成大数,参与随后的运算。g为一个安全素数,并满足g mod n=1,m为文件块转化的十进制大数,d是RSA算法中生成的密钥,n是RSA算法中生成的大素数模底。
生成的数据标签传输给云数据库进行保存,原始历史同源行为文件则可以不作保留。在这里需要解释的是,考虑到云数据库也作为需防御保护的一部分,也可能遭受APT攻击,为满足其安全性,采用散列函数的数据标签技术而不是应用简单的数据标签技术。
3基于伪随机置换的数据标签对并行验证
在实时检测过程中,可根据实际防护需求将系统部署在网络的主干链路中,针对全网进行检测,也可将系统部署在分支网络中,特定地针对某一台主机进行检测。在对网络中的全数据流进行检测的过程中,可简单地通过抓取分组技术获取分组头五元组信息作为数据源,从而能使检测数据的获取相对简单,但可靠性有所降低;也可以把通过深层协议解析技术获取的协议类型、使用权限等同源信息作为数据源,从而使检测数据的可靠性更高,但网络开销更大。为实现对网络全数据流的检测,解决检测中的开销问题,本文从硬件架构和检测策略两个方面进行解决。
在硬件架构方面,将数据库存储在云端,采用Hadoop架构,并利用MapReduce技术对数据标签的对比验证请求进行处理,合理分配分布式计算资源,使大规模网络数据环境下的实时检测成为可能。实时检测时获得的数据将通过系统直接上传至云端,数据的处理与对比验证在云端完成,占用的是检测系统的计算资源而不是网络传输资源。同时,利用Hadoop架构可随时增加DataNode的数量,系统具有很强的易扩展性。
在策略方面,传统的全流量检测通常是对数据源进行抽样来降低开销,这样做将使漏报率大大增加。提出了一种全流量数据源采集而抽样数据库对比的思想,在验证实时行为数据标签时,采用基于伪随机置换的数据标签对验证方法,在降低漏报率的同时大大降低了对比
认证时的网络开销。伪随机置换( pseudo-randompermutation,PRP)是序列密码中产生伪随机数的一种方法。由于一台主机的历史同源行为数据量很大,且有相同行为的数据同时存在云数据库中,只是因为序列索引使得数据标签有所不同。同时,对于一台主机而言,由网络行为学分析可知,在绝大多数时间段内,其网络行为是稳定且“一致”的。由此,在进行实时同源行为数据标签与厉史同源行为数据标签的对比时,并不需要遍历100%的历史同源行为样本。
同源行为并行对比验证过程如图1所示。
具体步骤如下。
步骤1 由相应主机对应的历史同源行为文件分割成的子文件数N,确定需对比的子文件数据标签数C。C是一个小于Ⅳ的数,其值越接近Ⅳ则可认为数据标签对比的完整性越高,相应的计算开销也会越大。C的具体取值是由Ⅳ、检测对比需求和计算开销综合决定的。
步骤2 在对比验证时,由π:{O,1}Kx{0,1}lbn→{0,1}lbn随机生成一个验证密钥K,最后生成ij,其中ij与mj中的i有确定的对应关系,且1≤j≤C。由此,随机选择出历史同源行为子文件数据标签中的一部分与实时同源行为进行对比验证,如图2所示。
步骤3对一定时间段内的不同时间窗中的实时数据并行进行验证,即无需依循时序限制,生成随机验证样本后将i值赋予各时间窗的实时数据生成验证标签,采用并行计算,同时进行多个标签对的对比。
步骤4-旦发现有与历史数据标签吻合的实时数据则马上滤除并认为其可信。
步骤5将通过一轮随机验证样本而没有发现吻合验证的实时数据导入下一轮。如果在一个合理的时间段内都不能找到吻合样本标签,则可判断其为异常行为,将其标记并上报。
另一方面,在检测过程中,由于是对全流量进行检测,对比验证结果会有一定的时延,并不能做到绝对实时性,但这样的时延对整个单点突破阶段及时间跨度长达数十个月的整个APT攻击来说可忽略不计。因此,可认为这样的同源行为异常发现是有效的。
4实验测试
利用5台IBM X系列机架式服务器搭建Hadoop平台.10台PC终端和一个交换机组成测试环境,其网络拓扑如图3所示。准备不同大小的历史同源行为数据分组和实时同源行为数据分组,分别对本文提出策略的效率和可靠性进行测试。
4.1效率测试
在不同大小历史同源行为数据库下,对不同大小的实时同源行为数据按照本文提出的策略和一般对比验证策略进行对比测试,测试结果见表1。
由测试结果可以看出,当检测的历史同源行为样本与实时同源行为数据都较小时,一般的对比验证方法在效率上高于基于本文策略的对比验证方法。然而,当历史同源行为样本与实时同源行为数据的大小增加时,一般的对比验证方法的耗时呈线性增长,而基于本文策略的对比验证方法的耗时的增长并不明显且远小于一般的对比验证方法,符合在大规模网络环境下应用的要求。
在实际应用环境下,随着网络中主机用户的增多,Hadoop平台中的分布式计算节点的数量可以相应地增多,由于是并行分布式计算,单位节点下处理数据的开销趋于一致,所以可以认为效率测试的结果具有普遍性。
4.2可靠性测试
在历史同源行为文件大小为512 GB的情况下,对不同大小且存在威胁的实时同源行为文件分别进行100次测试,统计其误报率和漏报率,测试结果见表2。
由测试结果可以看出,基于本文策略的对比验证方法的准确性极高,可以说几乎不会出现漏报情况,而误报率则会随实时同源行为文件大小增加相应出现,合理控制实时检测时实时同源文件的分块大小将有效解决这一问题。总体而言,可认为系统安全可靠。
5结束语
本文提出的基于同源行为分析的APT异常行为检测策略,针对的是APT攻击的单点突破阶段,尽可能早地发现APT攻击行为。依托Hadoop平台与MapReduce的分布式计算能力,运用数据标签技术和伪随机置换并行标签对比技术,做到了全流量检测,达到了预期效果。然而,APT攻击由于其攻击手段的复杂性、攻击技术的高超性、攻击时间的持续性等特点,对其的防御不可能仅仅依赖单一的技术手段与方案,往往需要在多个层面运用多种技术手段来综合应对APT攻击,而本文提出的策略可作为应对APT攻击的第一步,为后续研究起到抛砖引玉的作用。
6摘 要:APT( advanced persistent threat)攻击的日益频繁对APT攻击行为的检测提出了更高的要求,对同源行为进行分析是尽早发现APT攻击行为的一种有效方法。针对数据量过大造成数据对比认证效率低下的难题,提出了借助数据标签技术,建立历史同源行为数据库,并将数据库存储到云端;依托Hadoop平台和MapReduce聚合计算能力,基于伪随机置换技术完成网络全流量并行检测,通过与数据库中的数据标签进行对比验证,来判断是否有APT攻击行为。测试结果表明,该方法可尽早从网络中发现APT异常行为,提高全数据流检测的效率。
下一篇:返回列表