重组与预测:一种基于自动编码器的离散事件异常检测方法

  • A+
所属分类:安全文章

重组与预测:一种基于自动编码器的离散事件异常检测方法

原文作者:Lun-Pin Yuan, Peng Liu, Sencun Zhu
原文标题:Recomposition vs. Prediction: A Novel Anomaly Detection for Discrete Events Based On Autoencoder
原文链接:https://arxiv.org/pdf/2012.13972.pdf
原文来源:AsiaCCS 2021
笔记作者:[email protected]

离散事件日志的异常检测在入侵检测领域很有挑战,早期的工作多基于工程特征应用无监督学习,作者受自然语言处理的启发,提出基于LSTM自动编码器的异常检测模型,为异常检测重组事件序列,可以检查序列的结构以及单个事件之间的双向因果关系。

介绍

先前广泛采用的预测模型的方法有一个基本限制:事件预测可能无法完全利用序列的独特特征。事件预测方法假设事件的分布仅受事件之前的先前事件影响(e.g.,当模型看到打开的文件操作时,它可以猜测此打开操作之后是读取操作),但分布也可能会受到以后事件的影响(e.g.,当模型看到读取操作时,它应该检查它是否曾见过任何打开操作)。因此,异常检测方法还应该更深入地了解事件之间的顺序结构和双向因果关系。由于此限制,被广泛采用的方法可能导致大量FP和FN。

作者提出了DabLog,一种基于LSTM自动编码器的离散事件日志异常检测方法。与现有方法相比的根本区别在于:LSTM自动编码器通过分析(编码)和重构(解码)给定序列而不是预测即将发生的单个事件来确定序列是正常还是异常。不仅可以检测到未见或罕见事件的序列,而且可以检测结构异常的序列,评估结果表明,新方法可以显着减少FP的数量,同时获得更好的F1分数。

主要贡献为:

  • 解决传统基于预测变量的模型方法的局限性。
  • 根据HDFS控制台日志数据集评估DabLog效果良好。
  • 第一个证明自动编码器可以有效地用于检测离散事件日志中对时间敏感的异常的情况,其中事件涉及的上下文涉及更多不同的事件。

系统设计

DabLog包含四个主要组件(如下图所示):嵌入层,深层LSTM自动编码器,事件分类器和异常注释器。

重组与预测:一种基于自动编码器的离散事件异常检测方法DabLog模型

嵌入层

异常检测接受离散事件序列作为输入,需要将离散事件嵌入到一个特定的模型可识别的向量。通过添加额外的嵌入层用于嵌入,嵌入层由V(唯一的离散事件的数量)和δ(输出维数)的大小实例化,然后包含将日志事件et = ki(离散事件键)映射到xt(大小为δ的嵌入式矢量)的随机矩阵。然后,该矩阵在训练阶段与时间敏感的编码器-解码器网络一起通过反向传播进行训练。在嵌入层中还加入了三个特殊的填充键:begin-of-sequence、end-of-sequence和unknown。begin-of-sequence和end-of-sequence为LSTM模型提供了额外的序列特征,unknown用于提高计算性能(先前工作中的嵌入功能会为所有未知事件启动未经训练的嵌入矢量,事件分类器还会为未知事件启动未使用的logit维,不必要地使用了大量资源时,模型训练效率低下)。

LSTM自动编码器

论文的不同在于编码器φ和解码器ψ是由堆叠的LSTM(至少两层)实现的。隐藏单元的数量在φ中逐层减少,而在ψ中逐层增加。使用多个LSTM层堆叠的主要好处:堆叠隐藏状态可能使每一层的隐藏状态都可以在不同的时间尺度上反映信息,并且最后一层可以通过学习或组合先前层给出的表示而受益(因此效果更好)。

作者采用的自动编码器是无条件的,因为虽然条件暗示了在预测变量中应解码哪个后缀,但提供条件在自动编码器中没有其他目的。其次,通常相邻事件之间存在很强的短期依存关系,因此提供一种条件可能导致模型轻松获取短期依存关系而忽略长期依存关系。

事件分类器

在深度自动编码器之后,添加一个附加的单层全连接前馈网络γ用作多分类器,激活函数为softmax。它接受输入Y(从ψ重构的分布)并生成概率矩阵P(离散事件键ki实例的可能性)。整个嵌入-编码-解码-分类网络试图最小化以下函数进行训练:重组与预测:一种基于自动编码器的离散事件异常检测方法

异常注释器

采用基于等级的标准,在序列级别上给出了异常标记(例如正常或异常),给序列加标签,如果任何et∈S异常,则序列S = [et | 1≤t≤T]是异常的。

评估

和传统模型的对比效果

重组与预测:一种基于自动编码器的离散事件异常检测方法不同型号和不同配置之间的指标比较(系统日志数据集)

重组与预测:一种基于自动编码器的离散事件异常检测方法
ROC曲线下面积

未来工作

  • 更全面的嵌入:建立一个Event2Vec嵌入模型E,通过检查离散事件中的单词来得出事件的嵌入。
  • 基于Rank-Distance的双阈值标准:基于等级的标准和基于阈值的标准都具有一定局限性。因此,考虑将嵌入距离合并到基于等级的注释器中(将其命名为Rank-Distance双阈值标准)。除了检查top-N重组之外,还检查在阈值半径内的邻居标签。
  • 融合更多不同的模型:考虑新的混合模型或构建复合模型。
  • 更多重组方法和更多的数据集。


安全学术圈招募队友-ing, 有兴趣加入学术圈的请联系secdr#qq.com

重组与预测:一种基于自动编码器的离散事件异常检测方法


本文始发于微信公众号(安全学术圈):重组与预测:一种基于自动编码器的离散事件异常检测方法

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: