作者:{JSN}@ArkTeam
原文作者:何波
原文题目:基于日志分析的网络异常行为检测关键技术研究
原文来源:何波. 基于日志分析的网络异常行为检测关键技术研究[D].中国民航大学,2016.
随着网络环境的日益复杂,攻与防的技术在相互竞争中不断发展。近年来,入侵检测系统(Intrusion Detection System, IDS)不断发展更新,但是仍然存在较高的误报率、漏报率。学界和业界对IDS进行优化的研究从来没停止过,这其中针对IDS日志信息进行数据挖掘、关联分析是一个很重要的方向。随着攻击方式的增加,攻击过程也越来越复杂,此时简单的针对单一设备日志分析发现隐蔽和复杂攻击的能力有限,尤其针对机场这样同时有较多信息系统同时运行的企业部门,单一设备日志分析很难完全发现针对性的复杂攻击,所以非常有必要对应用系统、操作系统、防火墙、IDS等各种系统日志来进行综合性的分析以便发现更加复杂隐蔽的攻击过程与方式。
文章提出了一种基于攻击图的入侵检测方法,能够将网络中多种设备日志信息作为攻击图的数据来源,通过将各设备信息进行统一建模增加入侵检测过程中的攻击场景还原能力,能够更加完整地展现攻击过程步骤以及提高入侵检测的检测率。
一、多源攻击图概念和术语
攻击头节点:用来标识攻击过程,每个攻击头结点都可唯一表示一个攻击过程,结构如下。

警告节点:通过对来源于不同设备的警告日志进行收集、归一化处理后,可以将所有不同设备的日志信息组织成统一结构的警告节点,其中每个节点的威胁等级及威胁指数均来自产生该警告的设备本身。结构如下。

二、攻击图构建过程
根据攻击事件将多个来源于不同设别的警告按照时间先后顺序组织成一个完整的攻击场景,根据攻击事件类型将同一类型的攻击场景进行融合,使得同一类型的攻击场景只保留一个经融合后的攻击过程,以便确定一类攻击过程成立所需的最低威胁值。
例如一个攻击类型A(worm)有三个攻击场景:

经文中提出的公式计算,得出攻击头节点、警告节点的威胁值,然后进行攻击场景融合,合成一个攻击场景后如下:

最终经过对多个攻击场景的融合汇总,多个攻击场景构成完整的攻击图,攻击图中不仅包含了各个攻击场景所需要的设备警告类型,同时也包含了该类警告所需的最小威胁值,这样有助于屏蔽掉一些威胁值较低的虚假警告,提高入侵检测的检测效率。
三、攻击识别
可疑攻击队列是由新设备警告构成,尚不能确定但是又与攻击图中某些攻击场景部分匹配的警告组成的链表形式的队列。
每种设备都有相应的可疑攻击队列,当有新警告产生时,都会与攻击图中相应设备的警告链比对,如果图中包含该类警告,且威胁等级满足最低要求,则将该警告加入可疑攻击队列,多个可疑攻击队列最终组织成如下的可疑攻击队列图。

具体攻击图生成算法可以参考原文。
四、实验结果和分析
现有的基于攻击图的入侵检测方法大都基于DARPA的入侵检测评估数据集进行验证,该数据集包含了多种不同类型攻击的完整攻击序列,然而该数据集中并没有网络中其他设备相关的警告信息,且其他同类数据集中都没有包含其他设备信息,所以为了对所提方法进行验证,作者在内网自己搭建相应的实验环境进行验证。

实验过程中使用常用的攻击工具针对实验环境中能够利用的一些常见漏洞进行模拟攻击。通过对攻击发动过程中收集的各类设备警告进行分析,最终收集各类警告共12628条。按攻击过程进行汇总后,针对133次不同攻击有效警告2181条,汇总成有效攻击场景后共有警告818条,其中来自IDS警告362条。根据133次攻击可初步形成133个攻击场景,其中100个作为训练集,剩余33个作为验证集。
将上述攻击场景中的100个作为训练集,根据13种常见攻击类型进行攻击场景融合。

相较于因果关联分析方法以及普通攻击图方法,该方法能根据各设备警告呈现攻击过程,对攻击场景的还原更加完整。为了模拟IDS漏报警告,在随机减少IDS的警告的情况下再进行实验,前两种方法会因警告的不足造成攻击场景的分裂,不能很好地进行攻击场景还原,而文章提出的方法因为使用多种设备来源的警告,在IDS有漏报时其他设备警告能帮助识别攻击过程从而进行攻击场景的还原,提高攻击的识别率。