Page 300 - 《软件学报》2025年第8期
P. 300
赵浩钧 等: 基于 BERT 与自编码器的概念漂移恶意软件分类优化 3723
在模型训练阶段, 运行开销会根据分类方法类型和所使用的学习算法而表现出较大差异. 从结果可以看出, 基
于图像转换的方法 ResNet-50、VGG-16、Inception-V3 和 IMCFN 分别需要 8.4 min、44.0 min、6.4 min 和 18.8 min
进行模型训练. MAGIC 需要高达 246 min 进行模型训练, 是模型训练时间最长的方法. 这是因为这些方法在训练
过程中使用了复杂的卷积神经网络模型, 需要大量的计算资源和开销对复杂的模型参数进行调整. Word2Vec+
KNN 和 CBOW+MLP 的训练时间最短, 因为它们使用简单的词嵌入模型和机器学习分类算法. 然而, 简单的词向
量模型缺乏对上下文信息的关注从而影响分类性能的稳定性. MCBA 的基于几何中位数子空间和瓶颈自编码器
的模型训练仅需要 2.8 min 即可充分理解输入样本的上下文信息和模型调整, 能够以较短的训练时间达到优秀的
分类性能.
在样本预处理阶段, 基于图像转换的方法直接将二进制文件转换并重构为灰度图像, 不需要其他的分析处理,
因此其处理速度很快. 基于反汇编分析的方法通常耗时较长, 分别需要 17.8 s、17.7 s 和 4.5 s. 这是因为自定义的
反汇编分析过程会带来额外的分析开销. MCBA 使用一个仅关注操作码的轻量级反汇编分析模块和预训练的
BERT 模型进行特征向量生成, 平均仅需要 1.0 s 就可以完成一个样本的预处理. 这其中包括 0.9 s 的反汇编处理和
小于 0.1 s 的 BERT 词向量嵌入过程.
在单样本预测阶段, 基于图像转换的方法表现都十分优秀, 预测单个样本的时间仅需要 2 ms. Word2Vec+
KNN 和 CBOW+MLP 的预测时间非常长, 分别需要 95 243 ms 和 5 441 ms. 这可能是因为它们的特征处理方式过
于简单, 分类方法不够有效, 因此需要更长的时间生成预测结果. MCBA 的单样本预测时间为 1.8 ms, 快于所有的
方法, 这得益于有效的特征降维对特征向量进行的简化.
总之, MCBA 在常见场景和概念漂移场景下的分类性能均优于其他 9 种最先进的方法并且拥有较低的运行
开销, 这证明了 MCBA 的有效性以及较高的实际应用意义.
5 总 结
针对概念漂移场景下恶意软件分类模型的性能极易受到影响而产生性能下降的问题. 本文提出了一种基于
BERT 和自编码器的概念漂移恶意软件分类优化方法. 通过将执行导向的程序操作码序列作为自然语言输入到
BERT 中, 对程序隐含的深层上下文信息进行捕获. 进一步通过结合几何中位数子空间投影和瓶颈自编码器的方
法进行特征降维和提取, 获得与任务相关的特征信息, 以此增强分类性能的稳定性, 减少概念漂移为分类模型带来
的负面影响. 通过与 9 种最先进的工作进行对比实验, 验证了本文所提出的方法无论是否在概念漂移场景下, 都能
表现出比现有 Windows 恶意软件分类相关工作更优秀的分类准确性和鲁棒性.
但是, 目前工作仍具有一些局限性, 例如基于静态分析的方法容易受到来自攻击者各种攻击手段影响 [41] , 因
此在未来工作中, 我们将会尝试更多特征信息提取方法, 增强对模型训练的优化. 此外还将对方法的预处理部分进
行改善, 增加自动化查壳和自动化脱壳的预处理模块, 以面对更复杂的实际应用情况.
References:
[1] Gibert D, Mateu C, Planes J. The rise of machine learning for detection and classification of malware: Research developments, trends and
challenges. Journal of Network and Computer Applications, 2020, 153: 102526. [doi: 10.1016/j.jnca.2019.102526]
[2] Shalaginov A, Banin S, Dehghantanha A, Franke K. Machine learning aided static malware analysis: A survey and tutorial. arXiv:
1808.01201, 2018.
[3] Wang JL, Zhang C, Qi XY, Rong Y. A survey of intelligent malware detection on Windows platform. Journal of Computer Research and
Development, 2021, 58(5): 977–994 (in Chinese with English abstract). [doi: 10.7544/issn1000-1239.2021.20200964]
[4] Ma YX, Liu S, Jiang JJ, Chen GH, Li KQ. A comprehensive study on learning-based PE malware family classification methods. In: Proc.
of the 29th ACM Joint Meeting on European Software Engineering Conf. and Symp. on the Foundations of Software Engineering.
Athens: ACM, 2021. 1314–1325. [doi: 10.1145/3468264.3473925]
[5] Hassen M, Chan PK. Scalable function call graph-based malware classification. In: Proc. of the 7th ACM on Conf. on Data and
Application Security and Privacy. Scottsdale: ACM, 2017. 239–248. [doi: 10.1145/3029806.3029824]
[6] Kinable J, Kostakis O. Malware classification based on call graph clustering. Journal in Computer Virology, 2011, 7(4): 233–245. [doi:

