大家读完觉得有帮助记得关注和点赞!!!
摘要
在恶意软件分类中,分布外(OOD)检测仍然是一个关键挑战,这是由于多态和变体恶意软件变体引入了显著的家族内差异性。大多数现有的基于深度学习的恶意软件检测器依赖于封闭世界假设,未能充分建模这种类内差异,导致在遇到以前未见过的恶意软件家族时性能下降。本文提出了MAD-OOD,这是一个新颖的两阶段、集群驱动的深度学习框架,用于鲁棒的OOD恶意软件检测和分类。在第一阶段,使用从高斯判别分析(GDA)推导出的类条件球形决策边界对恶意软件家族嵌入进行建模,从而能够在训练期间无需OOD数据的情况下,实现基于统计的分布内样本和OOD样本的分离。利用跨多个类质心的基于Z分数的距离分析,以可靠地识别潜在空间中的异常样本。在第二阶段,一个深度神经网络集成了基于集群的预测、精炼的嵌入和有监督分类器的输出,以提高最终分类的准确性。在包含25个已知家族和多个新颖OOD变体的基准恶意软件数据集上进行广泛评估,结果表明MAD-OOD显著优于最先进的OOD检测方法,在未见过的恶意软件家族上实现了高达0.911的AUC。所提出的框架为不断发展的网络安全环境中的现实世界恶意软件检测和异常识别提供了一个可扩展、可解释且具有统计原则性的解决方案。
1 引言
恶意软件无论系统多么复杂都能成功渗透的能力,使其成为当今网络犯罪分子不可或缺的工具,因为恶意软件已被证明在提取敏感数据方面非常成功,这些数据可被网络犯罪分子用来攻击受害者。已经广泛提出了几种基于机器学习和深度学习的方法来对抗恶意软件攻击的猖獗威胁,但是,当最先进的模型暴露于以前未见过的分布外恶意软件攻击时,相同样本的封闭世界假设很快就被违反了。因此,恶意软件的持续扩散对全球网络安全系统构成了一个不断演变的挑战。随着越来越复杂的恶意软件变体的出现,以及多态和变体转换的普遍性,传统的恶意软件检测机制在实现高检测精度方面面临重大限制,特别是在分布外(OOD)检测的背景下[zhou2022rethinking, ige2024depth, ige2024towards]。虽然深度学习和机器学习已成为恶意软件分类任务中的主导范式,但大多数最先进的模型在评估训练数据中未出现的先前未见过的恶意软件家族或变体时,表现出显著的性能下降[ige2024investigation, ige2024deep, ige2023performance]。这项研究的动机源于一个关键观察:现有方法未能有效利用同一恶意软件家族内各个变体之间在潜在嵌入空间中的差异——这是一个普遍存在但未被充分利用的特性[ige2022enhancing, ige2022implementation, nguyen2022out, wood2025lmp, park2019generative, ige2023adversarial]。
恶意软件分类通常依赖于这样一个假设:来自特定类别的样本提供了该类别的全面表示。然而,在恶意软件领域,这个假设并不成立。每个恶意软件家族包含多个变体,这些变体通常使用加密、加壳或多态性等混淆技术生成,这些技术会极大地改变这些样本的特征表示,同时保留其恶意意图[datta2025topology, shafiq2008embedded, kan2021investigating, ige2022ai, ige2024investigation]。因此,单个恶意软件变体不足以代表该家族在特征空间中的多样性。这一见解是我们方法的核心原则,我们认为这解释了现有OOD检测方法应用于恶意软件数据集时性能不佳的原因。
1.贡献
本研究的主要贡献有三个方面:
• OOD检测的新框架:我们提出了一个用于OOD检测和恶意软件分类的两阶段框架,该框架利用了同一恶意软件家族变体在嵌入空间中的差异。第一阶段使用通过高斯判别分析定义的球形决策边界来评估测试样本属于分布内的可能性,而第二阶段将此信息集成到深度神经网络中进行最终预测。
• 基于距离的置信度建模:我们的方法利用统计度量,包括Z分数和变异系数,来确定测试样本距离类别分布质心有多远。一个关键的见解是跨类别边界使用多个Z分数比较,其中一个样本必须相对于至少一个质心位于标准范围内才能被视为分布内。这种多边界方法考虑了恶意软件分布的多维性质。
• 实证验证:我们使用包含25个已知恶意软件家族和多个分布外变体的恶意软件数据集,对我们的模型进行了全面评估。我们的模型在OOD检测方面优于现有的基线方法,特别是在新型恶意软件类型上取得了优异的AUC分数。
2 背景与相关工作
分布外检测是指识别不属于训练数据分布的输入的任务。这对于在实际环境中部署机器学习系统至关重要,因为它们经常会遇到与训练数据不同的数据。计算机视觉中的传统OOD检测方法,例如基于softmax置信度分数、马哈拉诺比斯距离和自编码器重建误差的方法,已在CIFAR-10和ImageNet等标准基准数据集上展示了有希望的结果[fort2021exploring, yang2022openood, yang2024generalized, adewale2023encoder, okomayin2023ambient]。然而,由于恶意软件数据的独特特征,包括高类内方差和不同恶意软件家族之间的分布重叠,这些技术在恶意软件领域的应用有限且效果不佳。
先前使用深度学习进行恶意软件检测的工作通常采用在二进制文件图像表示上训练的卷积神经网络(CNNs)[wood2025lmp]、在操作码序列上训练的循环神经网络[karunanayake2025out]或利用控制流信息的基于图的模型[um2025spreading]。尽管这些方法在封闭世界设置下实现了高分类精度,但当需要识别新颖的、未见过的恶意软件家族时,它们的性能显著下降。单类分类方法,例如单类SVM和支持向量数据描述(SVDD)[ruff2018deep],已被探索用于解决此问题[golan2018deep, liang2017enhancing]。例如,SVDD在训练数据周围构建一个超球体以捕获正常类分布,并将落在球体外的样本标记为异常。然而,当面对现代恶意软件数据集所展现的复杂嵌入分布时,这些方法通常缺乏可扩展性或鲁棒性。
最近的进展试图将基于距离的异常检测技术集成到深度学习流程中。例如,Deep SVDD[lee2018simple]和用于OOD检测的几何变换[golan2018deep]等工作试图重塑表示空间以更好地分离分布内和分布外样本。尽管如此,这些方法很少考虑单个类别内的差异粒度,特别是在由于多态行为导致类别边界本身模糊的数据集中。我们的工作基于这个方向,通过从高斯判别分析推导出的球形决策边界,明确地对恶意软件家族内的类内方差进行建模。
3 研究方法论
3.A 用于恶意软件分类的球形边界建模
由于每个恶意软件家族都有不同的变体,导致嵌入空间存在差异(参见图标签: fig:_Malevis_and_Malimg)。为每个类别找到球形决策边界,可以通过将高斯判别分析的概念(公式1)集成到深度神经网络中,来确定测试样本是否在训练期间出现过。这使得它能够学习类条件分布,这些分布被明确地建模为可分离的高斯分布,并使用测试样本到每个类条件分布的距离来定义置信度分数,最终用于识别OOD样本。

为了有效地建模数据集内的各个球体,每个球体被视为不同的类条件分布,特别是假设各向同性的高斯分布,以确保OOD样本位于所有预定义类别分布更远的位置,而无需依赖OOD样本进行验证。

在所提出的方法中,引入了一个创新的两阶段框架来解决当前OOD检测方法在恶意软件数据集中的局限性。第一阶段涉及使用从高斯判别分析(GDA)[lee2020multi]推导出的球形决策边界对类条件分布进行建模。该方法假设每个类别为各向同性的高斯分布,从而能够估计测试样本与类质心之间的距离,以确定OOD检测的可能性和置信度分数。

图1: 通过高斯判别分析得到的类条件概率[lee2020multi]
这种方法为使用诸如Z分数等指标进行OOD分类提供了统计基础,Z分数衡量样本偏离均值的标准偏差单位。通过使用一个标准范围(例如,-1到+1)将样本分类为分布内或分布外,该模型有效地引入了一个鲁棒、可解释的决策框架。虽然与之前基于距离的分类尝试相似,但该方法创新性地将这些统计见解与针对恶意软件数据集独特特征定制的深度学习嵌入相结合[Ige2024Exploiting, Ige2025Impact]。该方法与Deep SVDD[5]的最新进展密切相关,后者将SVDD损失函数集成到神经网络训练中,以学习分布内数据的紧凑表示。类似地,所提出的方法利用潜在嵌入空间的结构来形成定义明确的球形聚类,从而更细致地理解家族间的差异。
通过测量测试样本与推导出的类条件分布之间的距离,我们可以确定样本属于每个类别的概率和置信水平。将基于距离的分类器集成到深度神经网络(DNNs)中的理论基础由高斯判别分析(GDA)提供。该方法获得的潜在空间的定性分析提供了强有力的证据,表明与其他方法相比,它将OOD样本放置在空间中更清晰地区分于ID样本的位置。数据描述任务,也称为单类分类,涉及定义训练数据的表示,并利用它来确定测试样本是否属于同一分布。该领域的早期研究主要探索基于核的方法,这些方法试图通过识别的支持向量来建立决策边界。一个值得注意的方法是支持向量数据描述(SVDD),它构建了一个包含大部分数据的封闭球形边界(超球体)。
3.B 集群辅助的恶意软件检测与最终预测网络
在初始基于集群的分类之后,该框架采用了第二个深度学习模型,该模型整合了来自聚类算法的初始预测、有监督DL模型的输出以及输入图像本身,以优化最终预测。这种类似集成的设计通过结合互补的信息源,增强了分类的鲁棒性。值得注意的是,与恶意软件检测中使用的传统基于视觉的DL模型[6](通常仅依赖图像到标签的映射)不同,该架构通过基于嵌入的特征和先前的统计分析,利用了潜在空间的结构知识。这种策略在处理多态恶意软件样本方面提供了独特的优势,这些样本通常不符合简单的视觉模式。

图2: 在包含先前未见过的分布外变体的样本测试集上的混淆矩阵
表I: 分布外恶意软件分类的AUC分数
|
Adposhel |
0.0059 |
InstallCore |
0.539 |
|
Agent |
0.105 |
MultiPlug |
0.576 |
|
Allaple |
0.113 |
Neoreklami |
0.629 |
|
Amonetize |
0.166 |
Neshta |
0.585 |
|
Androm |
0.266 |
VBA |
0.619 |
|
BrowseFox |
0.257 |
Sality |
0.573 |
|
Elex |
0.305 |
Snarasite |
0.830 |
|
Expiro |
0.360 |
Stantinko |
0.846 |
|
Fasong |
0.383 |
分布外(新型) |
0.911 |
|
HackKMS |
0.424 |
VBKrypt |
0.916 |
|
Hlux |
0.463 |
Vilsel |
0.993 |
|
Injector |
0.499 |
表II: MAD-OOD与其他最先进的分布外模型在基准恶意软件数据集上的比较
|
MSP |
0.611 |
0.464 |
0.322 |
0.613 |
0.526 |
53.82 |
|
OE |
0.247 |
0.634 |
0.709 |
0.751 |
0.592 |
0.407 |
|
EnergyOE |
0.651 |
0.660 |
0.792 |
0.736 |
0.808 |
0.682 |
|
OCL |
0.637 |
0.529 |
0.558 |
0.771 |
0.690 |
0.625 |
|
PASCL |
0.209 |
0.405 |
0.392 |
0.229 |
0.393 |
0.592 |
|
OS |
0.692 |
0.442 |
0.842 |
0.793 |
0.712 |
0.827 |
|
Class Prio |
0.596 |
0.376 |
0.816 |
0.728 |
0.693 |
0.606 |
|
BERL |
0.846 |
0.572 |
0.561 |
0.807 |
0.737 |
0.812 |
|
MAD-OOD |
0.906 |
0.951 |
0.861 |
0.940 |
0.817 |
0.907 |
|
a |
表III: 在基准恶意软件数据集上的模型评估
|
MaleVis |
0.911 |
0.864 |
0.822 |
0.813 |
0.926 |
93.82 |
|
BODMAS |
0.847 |
0.834 |
0.809 |
0.851 |
0.792 |
0.907 |
|
Virus-MNIST |
0.851 |
0.860 |
0.792 |
0.936 |
0.908 |
0.882 |
|
Stamina |
0.837 |
0.929 |
0.858 |
0.871 |
0.890 |
0.925 |
|
MalImg |
0.906 |
0.951 |
0.861 |
0.940 |
0.817 |
0.907 |
|
a 在基准恶意软件数据集上OOD-MAD模型的总结 |
4 度量评估
我们的度量评估基于每个决策边界的质心,我现在可以测量测试样本与推导出的类条件分布之间的距离,并利用它来确定任何特定样本属于一个类别的概率和置信水平,从而判断它是分布内样本还是分布外样本。在此过程中,利用类条件分布来确定每个决策边界的质心。之后面临的挑战是,一个新的数据点距离任何一个质心有多远才能被分类为分布内样本或分布外样本。

图3: 所提出框架在预测先前未见过的分布外分类上的ROC性能评估
我们计算了任何新样本的数据点到每个球形边界质心的标准偏差,以了解其距离有多远。结果是,新样本的数据点到质心的标准偏差较低,而到其他质心的标准偏差较高。这就产生了没有一个单一规则来确定跨多个质心的低标准偏差的问题。这导致了计算变异系数(CV),它是距离平均值与标准偏差的比率,考虑到它有特定的范围来确定离群值。Z分数作为一种统计方法,可以通过测量数据点偏离均值的标准偏差数来检测离群值,使用公式:

其中:
• z是Z分数(数据点距离均值的标准偏差数)
• x是观测值
• μ是集群内数据点的均值
• σ是新数据点到质心集群的标准偏差
• 计算均值和标准偏差:计算所选特征在良性和潜在恶意样本数据集上的均值 (μ) 和标准偏差 (σ)。
• Z分数计算:确定每个由质心代表的家族的Z分数。
• 预设分布内阈值:离群值检测的常用阈值:
Z > 1 (或 Z < -1) → 可能的离群值
Z > 2 → 高度可疑
• 初始输入分类:如果样本的Z分数超出所选阈值,则被标记为离群值,因此最初分类为可能的分布外样本。
因此,为了比较来自测试集的新数据点,我使用Z分数,因为它有一个确定离群数据点的标准范围。Z分数 (z) = (新数据点 – 均值) / 标准偏差。Z分数中确定离群值的标准是,任何超出-1到+1范围的值都是离群值。因此,对于任何被分类为分布内样本的样本,其到每个球形边界质心的Z分数中至少有一个必须在-1到+1的范围内。如果所有的Z分数都落在-1到+1范围之外,则将其视为分布外样本。如果Z分数小于-1或大于1,则该数据点是离群值,因为它比大多数其他数据点离均值更远。
4.A 训练基于计算机视觉的深度学习分类器进行初始家族预测
数据拆分 训练集、验证集和测试集被仔细划分为:训练和验证集:仅包含分布内(已知恶意软件和良性)数据以及来自分布外集合的样本表示。测试集:包含分布内和OOD样本,用于评估。
训练过程
步骤1:在分布内数据上训练
损失函数:使用交叉熵进行分类(恶意软件 vs. 良性)。
优化器:Adam 和 SGD,带有学习率调度。
正则化:我们应用了 dropout 和批量归一化。
评估指标
分布内性能:恶意软件分类的准确率和混淆矩阵。
OOD检测性能:AUROC(ROC曲线下面积):衡量分布内和OOD的分离度。
4.B 训练基于计算机视觉的深度学习分类器进行最终预测
第二个模型是一个基于深度神经网络的模型,它接受三个参数:
参数1:来自集群分析的预测
参数2:来自第一个模型的预测输出
参数3:输入图像
与第一个模型不同,我们利用来自球形边界的新嵌入空间来训练第二个模型,因为最终预测来自第二个模型。这里有两个阶段:
i. 来自第二个模型的初始预测,由于第二个模型是在新嵌入空间上训练的,我们可以期望从其获得更好的预测输出。
ii. Z分数计算
虽然之前的工作已经探索了基于嵌入的OOD检测[3][4],但很少有人解决恶意软件数据集带来的独特挑战。本研究填补了一个关键空白,它承认并明确地对恶意软件的家族内差异进行建模,而这通常被为了简化假设而忽视。GDA启发的决策边界、Z分数分析和多输入深度学习分类器的集成,提供了一种整体方法,在分离分布内恶意软件与新颖、未见过的威胁方面优于现有方法。此外,实证结果支持了所提出方法的有效性。例如,已知恶意软件家族如Regrun(0.761)、Snarasite(0.830)和Stantinko(0.846)的曲线下面积(AUC)分数表明在潜在空间中具有改进的分离性,而新型OOD样本的检测分数高达0.911——凸显了其在现实世界恶意软件检测中的实际潜力。
5 相对于先前工作的贡献
本研究引入了一个新颖的两阶段框架,用于恶意软件分类中的分布外(OOD)检测,它利用了同一家族内恶意软件变体之间固有的差异性。与传统模型假设类别均匀性不同,该方法将无监督聚类与深度神经网络和高斯判别分析(GDA)相结合,在恶意软件家族嵌入周围建立球形决策边界,从而无需在训练期间使用OOD数据即可有效识别未见过的样本。基于Z分数的统计分析增强了分布内数据与离群数据之间的区分能力。第二阶段利用丰富的嵌入和多源输入优化分类,从而实现了卓越的预测和OOD检测性能。该模型实现了0.911的AUC分数,优于传统方法,为精确的恶意软件检测提供了一个鲁棒、可扩展且基于统计的解决方案,并有可能扩展到实时网络安全应用中。




