大家读完觉得有帮助记得关注和点赞!!!
摘要
当前安全监控的研究越来越关注基于机器学习的方法,但仍有需要注意的地方。除了巨大的计算开销外,一个担忧是缺乏对“为什么”发出警报的洞察。现有的可解释性方法依赖于忽略特征间依赖关系的特征归因方法,或需要大量领域知识或计算资源的因果建模。本文提出了XION,一种仅基于良性流量建模网络流量特征间关系的方法。在检测过程中,通过识别预期特征依赖关系的违反来发现异常。此外,XION通过识别哪些特征关系被违反、在攻击时间线上何时被违反,以及依赖关系违反相对于其他已识别违反如何演变,来支持告警后分析。XION在标准IDS数据集上进行了评估,并在多种攻击场景下与孤立森林(IF)基线进行了比较,涵盖了大流量和更隐蔽的攻击。结果表明,在所有评估场景中,XION的召回率与IF相当或更高,同时推理时间最多减少7倍。在告警后阶段,依赖关系违反分析揭示了与已知攻击行为一致的时间和结构模式,这是IF单独无法提供的。总之,这些发现证实了攻击确实会破坏从良性流量中学到的特征依赖关系,并且这些破坏为理解警报提供了额外信息。
关键词: 异常检测,网络安全,事件响应,告警后分析
1 引言
在复杂的网络安全环境中,入侵检测系统(IDS)仍然是识别恶意或异常网络活动的基本工具。为了克服传统基于签名的IDS的局限性,研究已越来越多地转向基于异常的方法,这些方法利用机器学习(ML)技术学习良性网络行为的模式,并在识别出偏差时发出警报 [5]。
尽管在理论和测试环境中取得了有希望的结果,但将机器学习应用于入侵检测仍面临重大挑战 [47, 5, 6]。许多基于ML的检测器可能引入昂贵的计算开销 [8],并且可解释性有限。尽管它们可能成功检测到异常行为,但对于为什么触发警报或安全操作员应如何应对,却知之甚少。
“可解释性”技术试图通过识别对ML模型输出有贡献的特征来解决可解释性问题 [18, 41]。然而,最先进的方法存在局限性 [2, 33, 46, 20],并且它们通常将特征视为独立变量,而网络流量特征是相互依赖的,并通过复杂的关系演变。
在这项工作中,我们探索在良性条件下学习特征依赖关系是否能为网络运行期间观察到的异常提供洞察。
我们的直觉是,如果一个特征打破了其典型关系,则可能与系统中的结构性中断有关。我们查看与推理时违反密切相关的指标,以提供诊断线索。分析哪些关系被破坏以及何时被破坏,提供了从聚合异常分数中无法获得的异常行为结构化视图。事实证明,这个过程在资源利用方面也是高效的。
本工作的贡献如下:
我们提出了一种基于特征级依赖关系建模的新方法(XION),并将其违反作为异常检测和告警后分析的统一信号。
我们展示了在攻击场景中,学习到的特征依赖关系被违反,在两个开放的IDS数据集中产生的异常信号与孤立森林(IF)基线一样好,但推理时间低得多。
我们证明了依赖关系违反分析可以帮助优先考虑告警后调查的特征,并揭示随时间的攻击特定模式。
本文的其余部分组织如下。第2节总结了相关工作,并将本研究置于现有技术中。第3节介绍了理解XION所需的术语和理论概念,XION在第4节中描述,连同威胁模型、假设和研究问题。第5节描述了数据和预处理、实验方法和评估策略。结果在第6节中呈现,并在第7节中讨论,同时讨论了有效性威胁。最后,第8节以结束语和未来方向总结全文。
2 相关工作
2.1 异常检测
在本小节中,我们将比较限制在异常检测中以某种透明度建模依赖关系的方法。出于攻击检测的目的,使用重型ML不在我们的范围内。
系统级依赖关系。
基于溯源的方法捕获交互实体之间的结构和时间关系。Yang等人 [49] 提出了一种基于溯源的异常检测系统,通过溯源图嵌入对系统实体之间的结构和时间关系进行建模。类似地,Li等人 [25] 利用溯源图和答案集编程(ASP)将攻击模式表示为系统交互上的逻辑规则。这类方法以计算开销和专家努力为代价,提供了丰富的语义表示。XION则对聚合网络流量特征之间的统计依赖关系进行建模,训练和推理时间较低。
流量特征依赖关系。
更接近我们的设置,现有方法利用网络流量中的统计关系。Mirsky等人 [34] 对相关的流量特征进行分组,并使用自编码器集成对这些组进行建模,通过重建误差检测异常。Lin和Nadjm-Tehrani [26] 研究SCADA网络中服务器驱动的流量,通过对良性条件下学习的多变量流量时间序列协方差结构的偏差来建模流间依赖关系并检测异常。两者都表明,良性流量内的关系可以提供有用的异常信号,但都没有直接表示单个关系的违反,而XION将其用于后续时间分析。
图模型和通用异常检测
从建模角度来看,XION与表示条件依赖关系的图方法密切相关。Hallac等人 [17] 提出了时变图Lasso(TVGL),它估计一系列稀疏逆协方差矩阵以跟踪条件依赖关系随时间的变化。这是一种通用方法,并非为网络安全应用开发。虽然两种方法都使用稀疏精度矩阵来表示依赖关系,但TVGL重复估计依赖结构并分析图本身如何随时间变化,需要专门的优化程序进行可扩展推理。XION从良性流量中学习单一依赖结构,并使用它来定义局部特征预测模型。TVGL解决了一个不同的问题,并不是直接的异常检测基线,但我们的方法在网络安全背景下使用了相同的数学概念。
XION也不同于标准的无监督异常检测器,如k近邻(KNN)、局部离群因子(LOF)和孤立森林(IF),它们通过距离、密度或特征空间中的孤立性概念来检测异常 [39, 11, 28]。与这些样本中心(识别偏离周围数据的观测值)的方法不同,XION是关系中心的,评估特征关系是否与从良性流量中学到的一致。鉴于XION实现了无监督异常检测,我们使用IF作为参考轻量级基线。
2.2 告警后分析
特征归因
一系列研究将根本原因定义为在异常检测模型中具有高重要性的特征。它们不显式建模因果关系或依赖关系,而是将重要特征视为原因的代表。
Carletti等人 [12] 分解IF异常分数,按特征对孤立过程的贡献进行排序,而Roelofs等人 [40] 在风力涡轮机SCADA数据中识别对自编码器异常分数贡献最大的特征。Kuk等人 [23] 分析基于SHAP的特征重要性随时间的变化,以识别资产退化的早期指标。
虽然计算轻量级,但这些方法隐含地将特征归因等同于因果关系。相比之下,我们显式建模特征依赖关系,并研究依赖关系违反在相关特征上的时间进展。
因果关系建模
其他工作通过显式因果推理研究告警后分析。Tonon等人 [45] 和Wang等人 [48] 分别通过因果图和图神经网络对系统指标之间的因果依赖关系进行建模,进行根本原因定位。
Lin等人 [27] 提出了一个通过因果和反事实测试进行智能制造成因分析的框架,评估纠正一个因素(特征或特征组)是否能减少异常行为。这些方法需要因果建模,在某些情况下需要大量领域知识。XION则提供了一种基于直接从良性流量中学习的统计依赖关系的轻量级替代方案,揭示哪些关系被破坏以及如何被破坏,而不做因果声明。
依赖关系感知解释。
某些工作对特征间的依赖关系进行建模,以提高ML模型的可解释性。Aas等人 [1] 解决了SHAP [31](事实上的特征归因标准)的特征独立假设。他们使用高斯、基于Copula或经验方法估计条件特征分布。出于类似动机,Salih [42] 提出了一种全局特征归因方法,通过一系列单变量回归对特征如何用于相互预测进行建模。超越一阶特征归因,Anthony等人 [4] 引入了SHAP的交互感知扩展,量化成对特征交互,捕获二元指标之间的非线性和条件依赖关系。与这些工作不同,XION将学习到的依赖关系的违反视为异常信号本身。依赖结构仅从良性流量中学习,无需恶意样本。此外,XION保留单个依赖关系违反,使我们能够检查哪些关系被破坏,以及这些违反在攻击期间如何随时间演变。
总而言之,这些区别将XION定位为聚合异常分数和完整因果发现之间的中间地带,与经典异常检测器相比,以低计算成本提供额外信息。
3 背景
XION背后的概念包括统计依赖关系、它们与相关性和因果关系的区别,以及通过图模型表示它们。
3.1 相关性、因果关系和依赖关系
通过高保真模型对现代复杂系统进行推理是一项艰巨的任务,如果不是不可能的话。在实践中,系统行为通常通过观察到的变量(特征)来评估,而底层过程通常被视为黑盒。因此,问题归结为理解观察到的特征值随时间变化的模式和关系。
相关性、依赖关系和因果关系是相关但不同的概念,经常被混淆。相关性衡量变量之间的统计关联,量化它们共同变化的程度 [3, 36]。相关变量可能表现出相似的行为,但仅相关性并不意味着一个变量影响另一个变量。
因果关系则指一个变量的变化直接影响另一个变量的有向关系。与相关性不同,因果关系蕴含干预语义:修改原因可以改变其效果 [38]。
依赖关系描述一个变量的值是否提供关于另一个变量的信息。如果知道一个变量不改变另一个变量的概率分布,则两个变量是统计独立的。条件依赖关系通过在考虑额外变量后考虑变量之间的关系来扩展这一概念。相反,一旦已知条件变量,两个变量变得独立,则它们是条件独立的 [22]。
依赖关系建模可以被视为相关性和完整因果推断之间的中间分析层次。与相关性不同,条件依赖关系在考虑其他变量影响的同时捕获直接统计关系。同时,依赖关系建模不需要因果发现通常所需的强假设、干预或领域知识。
3.2 高斯图模型
高斯图模型(GGM)为对随机变量之间的条件依赖关系建模提供了框架 [16]。设 X ∈ ℝ^d 表示具有协方差矩阵 Σ 和精度矩阵 Θ = Σ^{-1} 的随机向量。协方差矩阵捕获变量之间的边际相关性,而精度矩阵在高斯假设下编码条件依赖关系。
设 X_i 表示第 i 个随机变量。在高斯图模型中,精度矩阵中的零对应于在考虑所有剩余变量后的条件独立性:
其中 X_{-{i,j}} 表示除 X_i 和 X_j 之外的所有变量的集合,⟂ 表示统计独立性,| 表示以其右侧的变量为条件。
如果 Θ_ij ≠ 0,则变量 X_i 和 X_j 在给定剩余变量时是条件依赖的。Θ 可以解释为图,其中节点对应变量,当 Θ_ij ≠ 0 时在节点 i 和 j 之间放置边。由于 Θ 是对称的,得到的图是无向的。在此表示中,边表示变量 X_i 和 X_j 在给定所有剩余变量时是条件依赖的,而边的缺失(Θ_ij = 0)对应于条件独立性。
GGM 假设观察到的变量是联合高斯的。在实践中,数据分布可能违反此约束。Liu等人 [30] 的非参数正态模型将 GGM 扩展到非高斯数据,对每个变量应用单调变换,使得变换后的数据近似高斯。这是通过基于秩或分位数变换实现的。
4 方法
我们的工作基于这样的直觉:在网络遥测中观察到的特征并非独立行为。相反,它们表现出反映正常系统行为的相互依赖关系。当攻击发生时,随着系统转变为异常状态,这些关系可能会被破坏。根据这一直觉,我们提出以下假设:
H1:从良性数据中学习到的特征依赖关系在攻击场景中会被违反。
H2:依赖关系违反通过为告警后分析确定特征优先级,提供用于解释异常警报的信号。
为了检验假设,我们定义了两个研究问题:RQ1:是否有证据表明在攻击场景中会出现依赖关系违反,这些信号与基于ML的异常检测器产生的警报有何关系?
RQ2:依赖关系违反信号能否用于为告警后分析确定特征优先级,这些优先级特征是否与关于攻击行为的领域知识一致?
为了解决这些研究问题,我们提出了XION,一种从良性网络流量中学习特征依赖关系并分析其在异常活动期间违反情况的方法。此外,我们评估了推理时间相对于ML基线的计算成本。
图1示意了XION的高级视图。其中,蓝色块指离线操作,黄色块指推理时间,红色块指告警后调查。
图1:XION的高层概述。
[图描述:一个流程图,显示离线阶段(蓝色):训练数据 -> 特征变换 -> 图结构学习 -> 局部预测模型。推理阶段(黄色):新样本 -> 特征变换 -> 依赖关系违反评分 -> 阈值判定 -> 警报/正常。告警后分析(红色):违反时间线 -> 特征优先级排序 -> 模式分析。]
为了在警报时量化异常行为,我们首先在良性条件下对特征如何相互关联进行建模(算法1,见第4.2节)。目标是捕获典型的条件依赖结构以及这些关系的正常幅度。依赖关系建模遵循Friedman等人 [16] 的理论,其中随机变量对应特征。遵循Liu等人 [30] 的非参数正态模型,我们应用分位数变换将每个特征映射到近似高斯分布。变换在良性数据上学习,并在计算依赖关系违反时一致应用(算法2,见第4.3节)。
4.1 威胁模型
我们考虑一个目标是破坏服务可用性、获得未授权访问、利用易受攻击服务或收集有关被监控系统或网络信息的对手。对手可以与暴露的主机和服务交互,并生成改变一个或多个可观察流级特征的恶意网络活动。
防御者被动观察网络流量特征,并从检测前收集的良性流量中学习预期的依赖结构。在推理时,检测器根据这些学习到的关系评估新流量。假定攻击者无法访问或控制良性训练数据、学习到的依赖图、模型参数或检测阈值。
我们的威胁模型关注针对被监控系统的攻击。数据投毒、监控基础设施的操纵以及利用检测器知识设计的自适应规避不在本工作范围内。
4.2 建模良性特征关系
在XION的离线阶段,给定良性训练数据集 X ∈ ℝ^{n×d},包含 n 个样本和 d 个特征,我们使用GraphicalLassoCV¹ 估计一个稀疏精度矩阵 Θ(算法1的第1-2行)。
从 Θ 的稀疏模式,我们为每个特征 i 定义邻居集 N(i)。这诱导了一个无向依赖图,表示特征之间正常的结构关系(第5行),特征对应节点,边表示相邻特征之间的条件依赖关系。
依赖图提供了关于哪些特征直接相关的结构信息,但没有说明它们的值如何相互依赖。直觉上,如果特征是条件依赖的,一个特征的值应该可以从其邻居的值预测。为了建模这些关系,我们按如下所述训练局部预测模型。
如果 N(i) = ∅,则不训练预测模型,特征在学习图中被视为独立的(第6-8行)。
对于每个具有非空邻居集的特征 i,我们使用良性数据训练一个岭回归器 [19] f_i,以从其邻居预测特征 i 的值(第10-12行)。
回归器在良性条件下从相邻特征建模特征 i 的期望值。然后,在良性训练数据上计算残差,作为观察值与预测值之间的差异:
其中 X_i^N 表示预测值向量 f_i(x_{N(i)}),x_{N(i)} ∈ ℝ^{|N(i)|} 是相邻特征值向量,ℛ_i 是残差向量。
残差尺度定义为 σ_i = Std(ℛ_i),捕获特征 i 的典型良性预测误差。
在此阶段之后,对于每个特征 i,我们保留其邻居集 N(i)、局部回归器 f_i(如果已定义)和良性残差尺度 σ_i(第15行)。这些元素稍后将用于在推理时量化关系违反(算法2)。
算法1 良性条件下建模特征关系
(见附录原文的伪代码,概述:使用GraphicalLassoCV估计稀疏精度矩阵Θ,为每个特征定义邻居集,为有邻居的特征训练岭回归器,计算残差尺度。)
4.3 依赖关系违反评分
在推理时,给定一个实例 x ∈ ℝ^d(要评估的样本),我们量化每个特征偏离其与邻居在良性条件下预期关系的程度(算法2)。
如果特征 i 没有可用的回归器,我们设置 v_i = 0,因为无法评估基于关系的违反(算法2的第1-5行)。
如果在良性建模阶段学习了局部回归器 f_i,我们使用回归器从邻居预测特征 i 的值,并定义归一化残差幅度(违反分数)为(第6-7行):
其中 x_i 是输入实例中特征 i 的观察值,x̂_i 是从相邻特征预测的值,σ_i 是在离线阶段估计的良性残差尺度。
得到的向量 v = (v_1, …, v_d) 量化了对于每个有邻居的特征,其观察值偏离在良性条件下学习的条件关系所预期值的程度(第9行)。
算法2 逐特征依赖关系违反评分
(见附录原文的伪代码,概述:对于每个有回归器的特征,使用邻居预测其值,计算归一化残差。)
4.4 异常检测
依赖关系违反向量用于区分良性和异常流量。当相应的违反分数超过阈值 τ 时,认为关系被破坏。
给定一个实例 x ∈ ℝ^d,被违反关系的数量计算为:
如果 S(x) ≥ k,则实例被视为异常,其中 k 是触发警报所需的同时依赖关系违反的最小数量。在本工作中,我们设置 k=2,要求至少两个同时依赖关系违反来触发警报,降低由孤立波动引起的虚假检测的可能性。τ 来自留出的良性验证集。在本文其余部分,使用此过程派生的组件称为“基于依赖关系的检测器”。
4.5 告警后分析
在告警后阶段,分析依赖关系违反以确定它们是否为解释异常行为提供信号。特别是,研究攻击期间特征关系被破坏的时间顺序。
设 v_i(t) 表示特征 i 在时间 t 的依赖关系违反分数。当 v_i(t) > τ 时,认为特征违反其预期关系,其中 τ 是检测器使用的违反阈值。
对于每个特征,发生依赖关系违反的首次时间与其在依赖图中邻居的首次违反时间进行比较。这使得可以分析违反是大约同时出现,还是某些特征始终比邻居更早或更晚破坏其关系。
直觉是,比邻居更早破坏关系的特征可能与早期攻击指标相关,而较晚破坏的特征可能反映异常如何随时间在系统中显现。
5 实验和评估策略
本研究中使用的源代码和数据可在GitHub² 上获取。所有实验在基于Debian的虚拟机中执行,配备Intel Core Ultra 7 155U CPU和32 GB RAM。
5.1 数据集和预处理
XION在两个不同的IDS数据集上测试:CIC-IDS-2018 [43]和CIC-UNSW-NB15 [35],以覆盖多样化的攻击集,并表明XION并非针对特定数据集定制。
CIC-IDS-2018是入侵和异常检测的成熟基准。数据集包含在不同日期收集的多个流量流,包括良性和不同攻击场景。为涵盖多样的对抗行为,评估包括以下恶意集:
HTTP洪水分布式拒绝服务(DDoS):一种攻击,其中多台被攻陷的机器用大量HTTP请求淹没目标Web服务器,耗尽网络或服务器资源,阻止合法用户访问服务。
Slowloris:一种更隐蔽的低速率DoS攻击,通过缓慢发送不完整的请求来保持许多HTTP连接打开,迫使服务器保持半开会话,直到其连接池耗尽。
SSH暴力破解攻击:一种针对SSH服务反复尝试不同用户名和密码组合的攻击,以通过凭证猜测获得未授权访问。
CIC-UNSW-NB15是一个入侵检测数据集,选择用于在更多可用良性样本上测试依赖关系建模。基于行为多样性和在数据集中的充分表示,评估的攻击包括:DoS:一种旨在通过用过多流量或资源密集型请求淹没系统或服务来破坏其可用性的攻击。
Exploit:一种利用应用程序、操作系统或网络服务中的软件漏洞或安全缺陷以执行未授权操作或获得系统访问的攻击。
Reconnaissance:一种专注于收集目标系统或网络信息(如开放端口、运行服务或漏洞)以为未来入侵做准备的攻击。
所有数据根据预处理期间派生的共同特征模式对齐:从所有84个原始CICFlowMeter³ 列开始,排除五个非特征字段(Flow ID、Source IP、Destination IP、Timestamp和Label),得到79维特征空间用于建模,全部为数值型。攻击和良性文件总共存储81列,包括Timestamp、79个特征列和Label。时间戳分析显示,除SSH暴力破解和Slowloris外,所有攻击的流量都与良性流量交错,这两种攻击发生在与良性流量分离的时间窗口。
表1总结了每个子集的维度和用途。两个数据集具有相同特征,特征语义详情可参见CIC-IDS-2018文档 [43]。
在我们的测试中,每个良性集被划分为三个角色:训练、验证和测试。训练分割用于学习依赖模型和拟合ML基线,验证分割用于检测器的配置。最终评估在良性测试分割与攻击样本上执行。
对于攻击测试数据,保留所有可用恶意样本用于测试。由于评估是无监督的,且我们部分目标是分析特征依赖关系随时间的变化,测试集未被人工平衡或二次采样;保留原始样本分布也允许在不引入选择偏差的情况下分析跨天的时间效应。
表1:跨训练、验证和评估分割的数据集组成和维度。
| 数据集 | 类别 | 样本数 |
|---|---|---|
| CIC-IDS-2018 | 训练良性 | 1,000,000 |
| 验证良性 | 200,000 | |
| 测试良性 | 200,000 | |
| DDoS HTTP | 576,191 | |
| SSH 暴力破解 | 187,589 | |
| Slowloris | 10,990 | |
| CIC-UNSW-NB15 | 训练良性 | 2,000,000 |
| 验证良性 | 200,000 | |
| 测试良性 | 200,000 | |
| DoS | 4,467 | |
| Exploits | 30,951 | |
| Reconnaissance | 16,735 |
5.2 良性条件下的依赖图
我们按照算法1(第4节)对特征之间的依赖关系进行建模。我们计算决定系数(R²),其范围从0到1,衡量局部预测模型的拟合优度,值越接近1表示在良性条件下从相邻特征预测越准确。
此外,我们测量学习依赖图和相应局部预测模型所需的总时间(第6.1节)。
5.3 依赖关系违反分布分析
为检验H1,我们通过使用两个检验比较违反分数(如方程4所定义)的分布,分析依赖关系违反行为在良性和攻击数据之间是否存在差异:双尾Mann-Whitney U检验 [32],评估违反分数在攻击条件下是否系统性更大;以及Kolmogorov-Smirnov检验 [7],检测更广泛的分布差异,包括方差和尾部行为的变化。
先前工作表明,这些检验根据底层分布表现出不同的功效特性 [37];因此,它们的组合使用允许更包容地评估分布差异。
Mann-Whitney U检验返回一个p值,指示良性和攻击分布是否显著不同。小的p值(p < 0.05)表明在零假设下(两个样本来自同一分布),观察到的差异不太可能由偶然引起。
Kolmogorov-Smirnov检验额外提供KS统计量,测量良性和攻击样本经验累积分布之间的最大距离,范围从0到1。p值指示是否存在显著差异,而KS统计量量化分布分离的幅度。因此,较高的KS值对应于良性和攻击流量之间更强的差异。
分析在两个流级指标上执行:(i)跨特征的平均违反分数 v_mean,捕获流内依赖偏差的总体幅度,以及(ii)每个流违反特征的中位数 n_viol,量化在违反阈值 τ 之外同时偏离多少学习到的特征关系。
5.4 异常检测
如第4.4节所述,τ 使用留出的良性验证集进行校准,对CIC-IDS-2018得到值2.5,对CIC-UNSW-NB15得到值3.0。这对应于在高斯假设下,预计在大约1.24%和0.27%的良性观测中发生的事件。我们还评估了对 τ 和 k 参数邻近值的敏感性。
注意,我们的目标不是构建完美的异常检测器,而是评估依赖关系违反是否在攻击期间出现,以及它们与独立训练的ML检测器产生的警报有何关系。
由于我们的目标是在推理时实现轻量级方法,我们使用IF作为ML基线。IF是一种广泛采用的无监督异常检测方法,在高维异常检测任务中已证明具有强大的检测能力和可扩展性,包括与其他无监督模型相比具有竞争力的性能 [29],并且非常适合表格数据,其中基于树的集成通常优于深度学习方法 [44]。虽然深度神经网络和最近的大型语言模型也被探索用于网络入侵检测 [52, 15],但它们不一定能提高表格网络数据的性能,并且可能带来显著更高的推理和计算成本 [8]。
对于IF基线,每个样本被分配一个异常分数,计算为负的IF样本分数,以便较高的值对应更异常的观察⁴。警报阈值使用基于百分位数的策略在良性验证集上校准。最终操作阈值选为良性异常分数分布的第90百分位数,以平衡跨攻击类别的假阳性(FP)率和检测性能。
对于两个检测器,我们测量召回率(Rec.)、平衡准确率(BA)、马修斯相关系数(MCC)、假阳性率(FPR)和特异性(Spec.)作为健全性检查检测指标。选择BA和MCC以在考虑类别不平衡的情况下准确评估准确性和整体检测质量。特异性衡量正确识别的真阴性比例。我们额外评估ROC和精确率-召回率曲线,以及AUROC和AUPRC,以评估检测器在不同决策阈值下的性能⁵。
我们进一步评估计算推理时间,定义为处理网络流量并产生警报决策所需的挂钟时间。
最后,我们分析两个异常信号之间的时间重叠。具体来说,我们计算IF异常分数和随时间的最大依赖关系违反分数。最大违反用于捕获相对于实际攻击时间线,从学习到的特征关系的最强偏离。此分析使我们能够检查两个检测器在整个攻击时间线中的响应,并结合上述统计检验回答RQ1。
5.5 告警后分析
为检验H2,我们分析特征级违反时间线。对于每个攻击,我们识别每个特征首次违反其学习到的依赖关系的时间。我们事后将受违反影响的特征分为三类:在攻击早期阶段(表示为ES区间)违反的特征,晚期阶段违反的特征(表示为LS区间),以及所有其他落入中期阶段(MS区间)的特征。此分类仅用于告警后分析,并依赖于基准数据集中已知的攻击区间。我们实验中的ES和LS值分别设定为5%和10%。
这些阈值旨在区分攻击开始后立即出现的违反与仅在攻击时间线接近尾声时出现的违反。使用相对较窄的早期区间来捕获突然的初始中断,而较宽的晚期区间允许尽管攻击间存在时间变化,仍能对攻击时间线后期出现的违反进行分组。为评估对这些定义的敏感性,我们额外将ES边界在2.5%到10%之间变化,LS边界在5%到15%之间变化。
然后,我们检查依赖关系破坏是局限于特征的小子集,还是在学习到的依赖图中跨相邻特征出现。
最后,根据已知的攻击特征解释识别出的特征组,检查早期阶段违反是否与已知攻击指标一致,以及额外违反如何在攻击过程中出现。此分析使我们能够回答RQ2。
6 结果
6.1 良性条件下的依赖图
经过第5.1节描述的预处理后,两个数据集都包含79个特征。对于CIC-IDS-2018,69个有邻居;学习到的依赖图中邻居数量范围从0到29,每个特征的中位邻居数为11。在CIC-UNSW-NB15中,图包含70个有邻居的特征。每个特征有0到26个邻居,中位数为1。
然后,为每个特征使用其邻居作为预测变量训练局部预测模型。
得到的预测器在良性数据上表现出强拟合优度:两个数据集中所有建模特征的中位决定系数(R²)均为0.99,表明在正常条件下,许多特征值可以从其邻居准确预测。表2报告了在训练和留出的良性验证数据上相应的R²分布。
表2:局部特征预测器在良性训练和留出验证数据上的拟合优度分布。Q1和Q3表示第一和第三四分位数;最大R²在所有情况下均为1.00。
| CIC-IDS-2018 | |||||
|---|---|---|---|---|---|
| 分割 | 最小值 | Q1 | 中位数 | Q3 | % R² ≥ 0.90 |
| 训练 | 0.13 | 0.96 | 0.99 | 1.00 | 90.0 |
| 验证 | 0.12 | 0.96 | 0.99 | 1.00 | 90.0 |
| CIC-UNSW-NB15 | |||||
| 分割 | 最小值 | Q1 | 中位数 | Q3 | % R² ≥ 0.90 |
| 训练 | 0.89 | 0.98 | 0.99 | 0.99 | 92.1 |
| 验证 | 0.69 | 0.96 | 0.99 | 0.99 | 89.5 |
学习依赖图和拟合所有局部预测模型所需的总时间对CIC-IDS-2018为48.85秒,对CIC-UNSW-NB15为76.51秒。值得注意的是,尽管CIC-UNSW-NB15包含两倍的良性样本,运行时间并未成比例增加。
为进一步检查学习到的依赖结构,我们检查了最强学习到的关系。这些包括密切相关或派生的特征,以及跨不同流量特征(如TCP标志、到达间隔时间、数据包长度和窗口大小)的关系。图的小子集显示在附录0.A中,因为可视化完整图将过于庞大。
6.2 依赖关系违反分布分析
表3总结了所有评估攻击场景的依赖关系违反统计量的分布分析,根据第5.3节定义的指标。在两个数据集中,攻击流量一致表现出比良性流量更大的依赖关系违反。
对于所有攻击,Mann-Whitney U检验产生统计显著差异(p < 0.01),表明依赖关系违反行为的观察变化不太可能由随机变化引起。值得注意的是,攻击流在两个评估指标上,往往产生系统性更大的违反分数 v_mean 比良性流。
Kolmogorov-Smirnov统计量进一步显示,良性和恶意流量之间的分离不仅限于平均违反幅度的变化。相反,高的KS值表明依赖关系违反分布中存在更广泛的结构差异,包括变异性和尾部行为的变化。对于 n_viol 指标,持续高的KS值表明攻击经常在学习到的多个特征依赖关系上诱导同时违反。
表3:依赖关系违反的分布分析。报告良性和攻击流量的中位数值。所有Mann-Whitney U检验均产生 p < 0.01。
| CIC-IDS-2018 | ||||||
|---|---|---|---|---|---|---|
| 类别 | v_mean | n_viol | ||||
| 良性 | 攻击 | KS | 良性 | 攻击 | KS | |
| DDoS HTTP | 0.29 | 0.46 | 0.70 | 0 | 2 | 0.71 |
| Slowloris | 1.68 | 0.70 | 11 | 0.70 | ||
| SSH BF | 0.67 | 0.47 | 6 | 0.70 | ||
| CIC-UNSW-NB15 | ||||||
| 类别 | v_mean | n_viol | ||||
| 良性 | 攻击 | KS | 良性 | 攻击 | KS | |
| DoS | 0.24 | 1.07 | 0.84 | 0 | 8 | 0.84 |
| Exploits | 1.18 | 0.85 | 10 | 0.85 | ||
| Recon | 1.18 | 0.84 | 9 | 0.83 |
6.3 异常检测
表4报告了基于依赖关系的检测器和IF基线在[0,1]范围内的标准检测指标。总体而言,基于依赖关系的检测器在大多数攻击类别中实现了高召回率,而IF性能更易变,特别是在CIC-UNSW-NB15的Reconnaissance流量中。
ROC和精确率-召回率分析进一步显示,在CIC-IDS-2018上两个检测器之间的区分能力大致相当,尽管IF在Slowloris上实现了更高的AUPRC。在CIC-UNSW-NB15上,基于依赖关系的检测器在AUROC和AUPRC上始终高于IF。完整曲线和指标值报告在附录0.C中。
对 τ 和 k 邻近值的敏感性分析显示了召回率和假阳性率之间的预期权衡。在CIC-UNSW-NB15上,性能在各种配置下相对稳定,而CIC-IDS-2018对参数选择更敏感,特别是SSH暴力破解(附录0.B)。
我们强调,检测性能不是本工作的主要目标;相反,报告指标是为了健全性检查,并理解从依赖关系违反派生的异常信号与ML基线相比如何(RQ1)。
表4:跨数据集的基于依赖关系的检测器(DP)和孤立森林(IF)的每个攻击检测性能。
| CIC-IDS-2018 | ||||||
|---|---|---|---|---|---|---|
| 检测器 | 类别 | 召回率 | BA | MCC | FPR | 特异性 |
| DP | DDoS HTTP | 0.94 | 0.86 | 0.73 | 0.22 | 0.78 |
| Slowloris | 0.80 | 0.79 | 0.29 | |||
| SSH BF | 0.50 | 0.64 | 0.30 | |||
| IF | DDoS HTTP | 0.84 | 0.85 | 0.64 | 0.14 | 0.86 |
| Slowloris | 0.78 | 0.82 | 0.38 | |||
| SSH BF | 0.51 | 0.69 | 0.40 | |||
| CIC-UNSW-NB15 | ||||||
| 检测器 | 类别 | 召回率 | BA | MCC | FPR | 特异性 |
| DP | DoS | 0.99 | 0.90 | 0.30 | 0.17 | 0.82 |
| Exploits | 0.99 | 0.90 | 0.61 | |||
| Recon | 1.00 | 0.91 | 0.51 | |||
| IF | DoS | 0.71 | 0.80 | 0.27 | 0.10 | 0.89 |
| Exploits | 0.72 | 0.81 | 0.54 | |||
| Recon | 0.39 | 0.64 | 0.23 |
图2报告了所有攻击数据集上平均每流推理时间的分布。在每个箱线图中,中心线表示中位数,箱子跨越四分位距,须表示非离群范围,绿色三角形表示平均推理时间。这些测量对应于每个网络流量的检测器处理时间;总攻击持续时间从几分钟到几小时不等,具体取决于场景。
图2:基于依赖关系的检测器和IF在攻击数据集上的平均每流推理时间分布。
图描述:两个箱线图,分别对应CIC-IDS-2018和CIC-UNSW-NB15。X轴为检测器(DP和IF),Y轴为推理时间(毫秒)。DP的推理时间明显低于IF。
图3显示了随时间的归一化IF异常分数(蓝色)和最大依赖关系违反分数(橙色)针对每个攻击。尽管存在细微差异,两个信号表现出大致相似的时间模式,表明依赖关系违反捕获的异常行为与标准ML检测器识别的相当,回答了RQ1。
在图中,虚线和点状垂直线分别表示攻击开始和攻击结束,对应于每个数据集中标记为恶意的第一个和最后一个流。显示的攻击间隔对应于连续攻击活动。
对于DDoS HTTP,在初始阶段可以观察到差异:IF信号立即以高异常分数响应,而依赖关系违反信号在稳定前表现出短暂的上升期。对于Slowloris,IF和依赖关系违反信号都表现出更高的变异性,这对更隐蔽的DoS攻击是预期的。在SSH暴力破解情况下,两个信号看起来都有噪声,但值保持在狭窄范围内,与两个检测器相对较低的召回率一致。
在DoS、Exploits和Reconnaissance场景中,差异显得不那么明显。在DoS情况下,两个信号随时间紧密跟随。对于Exploits,IF信号表现出更高的局部变异性和偶尔的峰值,而依赖关系违反信号保持更平滑,表明即使异常分数不太明显时,特征关系可能仍然被破坏。
Reconnaissance在两个检测器中产生时间上持久的信号,依赖关系违反信号持续更高,表明即使IF异常分数保持相对较弱,探测活动也会破坏特征关系。
CIC-IDS-2018
图3a:DDoS HTTP
图3b:Slowloris
图3c:SSH暴力破解
CIC-UNSW-NB15
图3d:DoS
图3e:Exploits
图3f:Reconnaissance
图3描述:六个时间序列图,每个攻击一个。X轴为一天中的时间,Y轴为归一化分数(0到1)。蓝色线为IF异常分数,橙色线为最大依赖关系违反分数。垂直线标记攻击开始和结束。两个信号大致重叠。
6.4 告警后分析
表5总结了跨攻击场景观察到的主要依赖关系违反模式及其解释。这些结果回答了RQ2并支持H2,表明依赖关系违反有助于优先考虑与不同攻击类别预期行为一致的特征。详细的定性评估见第7.3节。
每个攻击在早期、中期和晚期(ES、MS、LS)阶段表现出不同的依赖关系违反模式。DDoS HTTP和Slowloris攻击都产生涉及大量特征的广泛且协调的违反,而SSH暴力破解场景诱导了明显更局部的破坏模式。
DDoS HTTP攻击表现出最高的违反集中度,主要在攻击时间线的ES阶段,涉及流量体积、数据包计数和IAT相关特征。许多ES特征在依赖图中连接到大量同时受影响的邻居,表明攻击开始后立即发生流量关系的协调破坏。
Slowloris表现出更渐进的演变,在MS和LS阶段出现额外违反,特别是在数据包计数和TCP相关指标中。这种行为与慢速连接预期的逐渐退化一致。
SSH暴力破解则表现出相对于连接级、计时和窗口相关特征的局部违反,所有这些都在攻击开始附近首次出现。
在DoS、Exploits和Reconnaissance场景中,绝大多数违反特征在攻击时间线的ES阶段首次破坏其学习到的关系,后期几乎没有或没有额外违反出现。受影响特征始终与数据包长度统计、流量体积、吞吐量和IAT指标相关,许多在依赖图中连接到多个同时受影响的邻居。
表5:跨特征组的依赖关系违反模式总结及其对每个攻击场景的解释。
| 数据集 | 攻击 | ES特征 | MS特征 | LS特征 | 解释 |
|---|---|---|---|---|---|
| CIC-IDS-2018 | DDoS HTTP | 流量体积、数据包计数、速率、IAT | 空闲/活跃转换、流变异性 | 活动持续时间、数据包大小变异性 | 立即的高容量破坏,随后是流活动和数据包大小行为的变化,与持续洪水一致。 |
| Slowloris | 数据包长度、IAT、活动指标 | 吞吐量、数据包统计 | TCP标志、数据包计数、连接状态 | 违反的逐渐累积,正如慢速、持久连接所预期,逐渐影响吞吐量、数据包统计和连接状态。 | |
| SSH BF | 连接级指标、IAT、窗口大小 | 无 | 无 | 违反仍限于连接级特征,与重复SSH登录尝试一致,没有网络范围的流量破坏。 | |
| CIC-UNSW-NB15 | DoS | 流量体积、数据包长度、吞吐量、IAT | 连接/窗口属性 | 无 | 攻击开始后立即高度同步破坏多个关系,表示突然的资源耗尽行为。 |
| Exploits | 数据包长度、流量体积、IAT、TCP标志 | 无 | 无 | 高度同步的早期相关流量关系破坏,表明连接行为的快速变化。 | |
| Recon | 数据包长度、吞吐量、IAT、TCP标志 | 无 | 无 | 早期阶段违反,影响的总体特征少于其他攻击,与隐蔽活动一致。 |
观察到的临时模式在替代ES/MS/LS定义下保持稳定。对于CIC-UNSW-NB15,特征阶段分配在所有测试边界下不变。CIC-IDS-2018在相邻阶段之间表现出一些重新分配,特别是Slowloris以及在MS和LS之间,但ES在所有配置中仍然是主要阶段。
7 讨论
7.1 依赖关系违反分布
第6.2节(表3)的结果表明,在所有评估的攻击场景中,依赖关系违反行为在良性和恶意流量之间存在显著差异。统计显著的Mann-Whitney U检验结果表明,攻击流量系统性地产生比良性流量更大的依赖关系违反。
攻击类别之间的差异在观察到的分布分离幅度上是可见的。DDoS HTTP、DoS、Exploits和Reconnaissance场景表现出最大的KS统计量和每个流最高的违反关系数量,表明学习到的依赖结构广泛破坏。这种行为与显著改变流量组成或流动态的攻击一致。SSH暴力破解场景在 v_mean 指标上表现出较低的分离,表明攻击产生更局部的偏差,同时影响更少的特征关系。尽管如此,对于 n_viol 相对较高的KS值表明,即使在这种情况下,与良性流量相比,恶意流量仍然诱导可区分的协调依赖关系违反。
Slowloris攻击表现出中间行为。尽管攻击产生强烈的分布分离,但产生的违反模式随时间更易变,反映了低速率DoS攻击更隐蔽和逐步演变的性质。
7.2 依赖关系违反作为异常信号
如第6.3节(表4和图3)所示,基于依赖关系的检测器和IF产生高度重叠的异常信号,表明尽管依赖不同的建模假设,两种方法都捕获了类似的异常行为。对警报时间戳的检查进一步表明,两个检测器在数据集粒度上立即反应,第一个警报与数据集中标记为恶意的第一个流一致。
结果表明,基于依赖关系的检测器在大多数攻击场景中实现了与IF相当的平衡准确率,尽管通常具有更高的FP率。为分析此行为,我们检查了FP并将其与正确标记的良性样本进行比较,揭示了偏差。在CIC-IDS-2018中,这些偏差与计时和活动特征有关,而在CIC-UNSW-NB15中,它们更突出地涉及数据包和段大小,以及与标志相关的特征。这是预期的,因为基于依赖关系的检测器明确地对单个特征关系的违反做出反应,因此可能对局部偏离学习到的依赖结构的良性波动更敏感。
基于依赖关系的检测器在诱导流量行为大规模破坏的攻击(如DDoS HTTP和DoS场景)中表现良好,其中许多相关特征同时违反其预期关系。在Exploits和Reconnaissance场景中,检测器也保持高召回率,表明即使攻击不产生完全系统范围的破坏,依赖关系违反仍然信息丰富。对于SSH暴力破解场景,性能更有限,其中偏差细微且限于相对较小的连接级特征子集。IF基线也观察到类似限制,表明此类攻击在流级可能本质上更难与良性流量区分。尽管如此,基于依赖关系的检测器在Reconnaissance流量上保持了相对较强的性能,而IF难以区分良性和恶意观察。
值得注意的是,在所有评估攻击场景中,基于依赖关系的检测器实现了比IF基线更低的推理时间。依赖关系建模阶段也表现出适度的训练开销,在两个数据集上,完整的图学习和局部模型拟合过程所需时间不到两分钟。
7.3 告警后分析
告警后分析(第6.4节,表5)表明,依赖关系违反可以提供对攻击行为的洞察,并反映不同类别的网络破坏模式。
发现表明,基于依赖关系的分析可以通过根据特征的时间位置和语义角色对特征进行优先级排序,支持告警后调查。
这种异常传播的结构化视图在标准基于ML的检测器中无法直接获得,后者通常提供聚合异常分数,而没有关于特征交互的明确信息。因此,XION提供了额外的可解释性,可以帮助分析师理解和分类警报。
具体来说,突然且高度同步的违反与诱导立即、系统范围破坏的攻击一致,如高容量DoS场景,其中多个流量特征同时受影响 [50]。这种行为在DDoS HTTP和DoS场景中都观察到。
逐步出现的违反反映了随时间逐渐降低系统行为的攻击,如在逐渐耗尽资源的低速率攻击中观察到的 [51]。Slowloris场景通过更分布式的时间结构表现出这种行为,在攻击时间线的中期和后期阶段继续出现依赖关系违反。
暴力破解攻击涉及通过SSH会话的重复认证尝试,主要影响连接级行为,而非诱导系统范围的流量破坏,这使得它们与产生大规模流量异常的攻击相比,本质上更难检测 [21]。
这种特征反映在我们的实验中,基于依赖关系的检测器和IF都表现出较弱的异常信号。然而,观察到的依赖关系违反模式仍然提供了有用的洞察。违反仍限于一小部分特征,不跨依赖结构传播,表明破坏是局部的,不影响全局流量关系。
Exploits和Reconnaissance场景表现出类似的依赖关系违反模式,大多数违反在攻击开始后立即出现。在这两种情况下,违反高度同步,并影响依赖图中多个相邻特征。与Exploits相比,Reconnaissance场景影响的总体特征数量更少,表明对学习到的流量关系的破坏相对更受限制。然而,违反的总体时间结构在两个场景中保持相似。
7.4 有效性威胁
尽管结果有希望,但在解释发现时应考虑一些局限性。我们的评估依赖于预收集的数据集,可能无法完全捕获真实世界网络流量的多样性和可变性。
最近的研究关注标签标准实践的问题,这在迁移到生产环境时可能存在不足 [10, 9]。标签可能包含不准确或歧义,一些标记为恶意的样本可能类似于良性行为,反之亦然,可能影响训练和评估结果。此外,先前研究已识别出CIC数据集中流量捕获、流构建和标签的问题,一些与CICFlowMeter相关 [24, 13]。此类伪影可能影响特征值及其间学习到的依赖关系。因此,一些观察到的模式和性能可能是数据集特定的,可能不会不变地迁移到运营网络。然而,这些局限性在IDS文献中很常见,这些数据集仍被广泛用作事实上的基准。
XION限于数值特征,并在CICFlowMeter提取的聚合特征上操作。虽然这种表示在网络入侵检测中是标准的,但它不捕获数据包级或协议特定信息,这些信息可能为检测或解释某些攻击提供额外证据。同时,XION不依赖数据包有效载荷内容,表明在有效载荷可见性受限的加密流量中具有潜在适用性。该工作将受益于在加密流量上的应用和测试。
8 结论
在这项工作中,我们探讨了是否可以将网络流量中的异常理解为流级特征之间正常关系的破坏。通过仅从良性流量中学习条件依赖关系,我们对网络流量特征之间预期的交互结构进行了建模,并通过这些关系的违反来识别攻击。
在CIC-IDS-2018和CIC-UNSW-NB15数据集上的实验表明,依赖关系违反在攻击场景中一致出现,并产生与基线IF检测器相当的异常信号。
在两个数据集中,XION捕获了与不同攻击行为相关的不同时间和结构破坏模式,范围从大规模破坏性攻击中的高度同步违反,到更隐蔽或面向连接场景中的更局部和逐步演变的违反。
除了检测,XION通过揭示哪些关系被破坏、何时被破坏以及违反如何在学习到的依赖结构中传播,提供了额外的可解释性。
这些发现证实了我们最初的假设,表明依赖关系违反捕获了网络行为中有意义的结构变化,并可以通过优先考虑潜在相关特征和关系来协助告警后调查。更广泛地说,现代网络监控依赖于多个指标和分析工具来检测和调查攻击;我们的结果表明,依赖关系建模可以通过提供对异常流量行为的结构洞察,在这个工具箱中发挥补充作用,而不需要显式的因果模型或特定领域规则。
有几个方向可以扩展这项工作并进一步验证XION。为解决公开可用数据集的缺点,近期文献提出了生成合成但仍逼真攻击流量的方法 [14],这可以作为第一步。然而,更强的验证将涉及一个受控测试平台,其中异常的原因是明确已知的。在受控环境中生成或收集数据将允许我们直接将依赖关系违反与已知因果事件联系起来,从而更严格地验证XION的可解释性和诊断能力。
未来工作将研究基于依赖关系的分析在多步骤攻击场景中的应用。在复杂攻击链中,单独考虑各个阶段可能不会产生强异常信号。我们正在进行的工作研究依赖关系违反作为攻击进展结构化表示(例如,AI规划模型)的补充,目标是捕获异常如何在阶段间演变并识别攻击时间线中的转换点。
另一个重要方向是评估依赖模型在概念漂移下的鲁棒性,即良性数据分布随时间变化。理解这种变化如何影响学习到的特征关系,对于评估XION在现实环境中的适应性将很有价值。