前言
随着网络技术的发展,大量未知、新型网络攻击层出不穷,越来越多的网络攻击行为具有协同性、主机群性和隐蔽性,同时涌现出试图躲避安全设备检测的方法和技术,使网络流量的结构、组成和规模呈现出复杂性、动态性和关联性,网络监控的难度剧增。传统特征库的防火墙、入侵检测系统采用的安全防御技术,由于其原理是必须在了解攻击特征的前提下才能进行有效防御,因此,这些检测技术难以应对与防御恶意变种、未知威胁以及新型攻击,迫切需要采取全新的威胁分析与检测技术。因此,网络行为分析作为网络安全威胁检测的重要研究课题,越来越受到学术界和产业界的关注。网络行为异常检测是指在一段时间内建立一个正常网络行为基线,确认正常网络行为的相关参数定义后,将任何背离这些参数的行为都标记为异常。近年来,该领域的研究工作成果显著,但仍然存在一些问题。如目前的研究多从单一网络行为层面出发,较难完整揭示异常发生的原因和本质,导致检测能力较差,不能全面地为异常处理提供支撑;异常检测的训练数据难于获取;异常检测系统适应能力差,各类异常检测系统容易被攻击者绕过;尤其是网络行为呈现的潜在社会化关系,没有考虑网络交互过程对网络行为主体关系和属性的影响,导致网络主机群事件难以形式化描述和检测。因此,探索出行之有效的网络行为分析的异常流量检测方法,对了解网络情况、提升网络管理和监测的能力,具有重要的理论和现实意义。
本书首先系统地总结了网络行为分析的相关研究背景和最新进展,重点针对“整体”“个体”“主机群”网络行为的研究现状进行了对比和总结,分析了网络行为特征和异常检测方法在检测率、运行效率、全面性和新型异常行为的识别能力等方面的不足。
其次,针对这些不足,结合图论、特征工程、数据挖掘以及大数据分析等技术,以网络流量作为切入点,将图结构、属性以及动态变化的信息引入模型中,通过对用户行为特征的理解、分析和建模,从宏观到微观、由整体到局部,系统地研究了整体网络行为、网络个体行为和主机群行为,定义了更为有效的网络行为特征集、异常检测模型及其并行化算法,并进行了实验和异常案例分析。
本书的主要研究内容如下。
第一,面向整体网络行为的研究:针对IP地址之间的全部网络活动体现的网络行为开展研究工作,从宏观角度研究所有网络行为主体的网络行为,定义了一种整体网络行为的异常检测方法。
在现有研究中,传统的行为特征具有较好的检测率,被研究者广泛采用;然而,网络异常造成的影响往往是多方面的,通信模式异常尤其值得注意,由于其不会影响网络正常运行而被研究者所忽视。研究发现,当异常发生时,各个特征值都或多或少地呈现出相关性,各类特征值对异常检测的贡献能力存在较大差异。某些网络异常表现在流量负载强度的特征值上,另一些网络异常则表现在通信模式的特征值上,而且相同类型的特征值呈现出较强的相关性。基于上述分析,本研究还采用了流量图,并定义了整体网络行为特征抽取方法。
在时序数据的异常检测研究中,基于时间序列的异常检测方法因算法时间和空间复杂度较高,对各个维度上特征值的稳定性有较高的要求。因此,为了解决异常检测算法直接应用于流量数据适配度不高,以及多维特征的异常检测算法性能较低等问题,本研究定义了历史时间取点法,利用不同时刻的多维特征值序列构成的检测向量之间的绝对变化、相对变化和趋势变化来优化检测率。
在网络流量数据上,从检测能力和运行效率两个方面进行了分析,检测结果表明,本研究方法比采用传统特征的检测方法的效果更好、运行效率更高。本研究还在不同数据集中进行了实验对比和结果分析,结果表明基于通信模式抽取的特征集对异常检测有积极贡献,并与传统特征互补,能够有效提高异常检测率。
第二,面向网络个体行为的研究:将网络行为汇聚到主机,从而开展网络个体行为的研究工作,从微观角度纵深研究网络个体行为,定义了一种网络个体行为异常检测方法。
研究发现,基于网络行为分析的异常检测方法比基于规则库的检测方法更具发现未知异常和新型攻击的优势,但通常只能在网络异常发生时发出告警,无法为安全管理员提供更加详细的异常信息、解释异常现象导致无法采取针对性的安全管控措施来抑制该异常带来的影响。宏观的整体网络行为是微观的全体网络个体行为网络活动的集中体现,但不是简单的叠加。研究发现对网络个体行为进行细粒度的分析,可以为网络行为研究提供更全面的分析视图。
鉴于网络个体行为同一时刻不同特征值之间关系、不同时刻特征值之间关系都存在相关性,首先定义了Graphlet方法,对特征值之间的关系进行量化,利用图节点属性、Graphlet属性构建网络个体行为特征集,将正常情况下的特征向量视为网络个体行为轮廓的基线。其次,分析发现网络个体行为特征在正常情况下不同时间窗口的特征向量之间、不同天同一时刻特征向量之间存在的相似性,以及在异常发生时特征向量都或多或少地呈现出差异性。进而定义了异常检测算法,利用了特征向量时间上的相似性、网络个体行为之间的相似性和受害可疑度来提高检测率。
在多个数据集上进行了实验对比和结果分析,检测结果表明本研究方法比TOP方法具备更为有效的检测率,特别是所提出的方法能够高效地识别未引起关注的异常行为,算法在时间和空间复杂度上虽然比传统TOP方法高,但是通过优化Spark作业参数依然能够达到满意的运行效率。
第三,面向主机群行为的研究:通过识别网络行为中汇聚成簇的主机群,开展主机群行为动态演化过程的研究工作,定义了一种主机群行为异常检测方法。
在流量异常检测研究中,聚合性、协同性和大规模性的主机群网络交互行为往往被研究者所忽视。本书对比分析了图聚类算法和演化事件定义的选择问题,采用Fast Unfolding算法发现网络行为中聚集成簇的主机群,采用基于标识主机的动态图演化事件,作为主机群行为规模或结构变化的量化方法。为了进一步提高数据集检测率,根据主机群行为动态演化属性和演化事件的时序属性的实验分析结果,定义了基于历史演化事件、群成员相似性、群数和群成员数等主机群属性,进一步识别了以网络攻击行为聚合的主机群异常检测算法。
本研究在多个数据集上进行了实验对比和结果分析,检测结果表明所提出的方法能够有效揭示重要的图演化事件,准确发现异常的主机群及其群成员,具有较高的检测率。
综上所述,本书的研究工作针对网络行为分析的网络流量异常检测研究中存在的检测率、运行效率、全面性和新型异常行为的识别能力等方面存在的问题,围绕行为特征构建和异常检测及其优化问题涉及的若干个关键技术展开研究,并展开了丰富充实的研究工作,论证了研究理论、算法及方案的科学性与有效性。研究取得的成果不仅对丰富和发展网络行为分析理论基础、推广图分析技术在网络安全领域的应用大有裨益,还为解决具体的海量数据分析的实际问题提供了全新的解决方案,具有重要的理论与应用价值。由于作者水平有限,书中内容的错误和疏漏在所难免,恳请广大读者不吝指教。