原作者: Raja Khurram Shahzad, Muhammad Mustaqeem, Haroon Elahi
原作者: Raja Khurram Shahzad, Muhammad Mustaqeem, Haroon Elahi
原始论文采用 CC BY 4.0 许可(http://creativecommons.org/licenses/by/4.0/)。 ✨ 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明
技术摘要:一种基于次级特征融合的恶意软件分类混合方法
问题陈述
恶意软件的快速演变(其特征为多态性、混淆性和零日变体)使得传统的检测方法难以为继。现有的反恶意软件软件往往无法检测变体样本或将其分类为特定的家族,从而阻碍了有效的缓解措施。虽然机器学习(ML)已被应用于恶意软件检测,但在特征跨不同家族的泛化能力、数据集中的类别不平衡,以及对单一静态或动态分析的依赖方面仍存在挑战。此外,广泛使用的 Microsoft 恶意软件分类挑战赛数据集缺乏良性样本,这限制了其在二元检测(良性 vs. 恶意)以及多类家族分类方面的效用。
方法论
作者提出了一个解决两个不同阶段的混合方法:特征工程和建模。该方法包含以下步骤:
数据集扩展与准备:
- 研究通过在现有的 10,868 个恶意样本(涵盖九个家族)中添加 1,609 个良性反汇编文件(
.asm),对 Microsoft Kaggle 数据集进行了修改。 - 这种扩展使得二元分类(恶意 vs. 良性)和多类分类(特定恶意软件家族)均成为可能。
- 采用分层随机采样并进行有放回抽样,以缓解原始数据集中固有的类别不平衡问题。
- 研究通过在现有的 10,868 个恶意样本(涵盖九个家族)中添加 1,609 个良性反汇编文件(
特征提取:
- 主要特征: 系统从反汇编文件的
.text部分提取应用程序编程接口(API)调用、动态链接库(DLL)导入和操作码(OpCode)助记符。 - 次级特征:
- OpCodes: 以 unigram(一元语法)形式提取,通过基于字典的选择进行过滤(移除不规则/自定义的 OpCode),然后转换为固定长度的 quad-gram(四元语法)和变长 n-gram(n 元语法)。
- APIs 和 DLLs: 组合分析表明,bi-gram(二元语法)是这些特征的最佳尺寸,平衡了准确性和计算成本。
- 噪声削减: 进行频率分析以丢弃出现频率较低(阈值 < 50)的特征,确保仅保留具有代表性的特征。
- 主要特征: 系统从反汇编文件的
特征选择:
- 实施了两阶段选择过程:
- 初级选择: 通过基于字典的过滤和频率分析来移除不规则和稀有的特征。
- 次级选择: 评估了过滤器(Shannon Entropy)、包装器(提出的基于 Random Forest 和 Regularized Greedy Forest 的后向选择)和嵌入式(Lasso, XGBoost)方法。
- 提出了一种定制的后向选择算法,通过迭代移除最不重要的特征,直到达到最小特征计数,从而针对特定算法优化特征集。
- 实施了两阶段选择过程:
特征融合:
- 作者并未选择单一的最佳特征集,而是通过取所有表示形式(API bi-grams、DLL bi-grams、quad-grams 和变长 grams)中最佳特征的并集,来进行特征融合,以创建一个全面的输入矩阵。
算法融合(集成):
- 评估了十种基分类器,包括 CART、Naive Bayes、SVM、Logistic Regression、kNN、Neural Networks、Random Forest、AdaBoost、XGBoost 和 LightGBM。
- 使用前五名表现最好的分类器构建了一个基于加权投票的集成模型。
- 每个分类器的权重使用序列最小二乘规划(SLSQP)确定,以最小化测试集上的对数损失(log loss)。
- 最终预测是通过计算集成成员加权概率输出的几何平均值得出的。
核心贡献
- 数据集修改: 通过添加良性样本扩展 Microsoft 数据集,以支持二元分类和多类分类任务。
- 特征工程: 利用 API 调用、DLL 导入和 OpCode n-gram(特别是 quad-grams 和变长 grams)作为主要和次级特征。
- 定制化特征选择: 提出了一种后向选择算法,并评估了一种结合过滤器、包装器和嵌入式方法的混合方法,以识别最有价值的特征。
- 双重融合策略: 实现特征融合(结合多样化的特征集)和算法融合(加权投票集成),以增强检测的鲁棒性。
- 全面评估: 与包括 Microsoft Kaggle 竞赛获胜者及其他近期研究在内的最先进方法进行了详细对比。
实验结果
所提方法在标准硬件配置(Intel i7-8700, 16GB RAM)下进行评估,未使用 GPU 加速。
- 性能指标: 集成模型实现了 99.72% 的准确率、0.989 的 AUC 以及 0.01 的对数损失。
- 与最先进技术的比较:
- 与原 Microsoft Kaggle 竞赛的获胜者(其对数损失约为 ~0.0023)相比,所提模型的对数损失略高(0.01),但计算资源需求显著降低(标准桌面级设备 vs. 拥有 104GB 内存的 Google Compute Engine)。
- 作者认为,获胜团队的方法过度依赖加密文件特征和针对特定竞赛的硬编码超参数,这可能限制了泛化能力。相比之下,本文提出的方法使用的特征(API、DLL、变长 n-grams)可追溯至文件功能,具有更好的泛化性。
- 与 Ahmadi 等人(2016)的研究相比,所提方法通过避免使用随数据集变化而大幅波动的特征(如依赖于文件大小的指令计数)并使用更稳健的特征选择过程,提供了更好的泛化能力。
意义与主张
论文声称,所提出的混合方法能有效实现恶意软件检测和家族分类的自动化。其意义在于证明了:
- 特征融合(将次级特征 n-grams 与主要特征 API/DLL 进行融合)比使用任何单一类型的特征都能创建更稳健的输入矩阵。
- 通过加权投票集成实现的算法融合优于单个基分类器,即使在资源受限的机器上也能实现高准确率。
- 该方法具有泛化性且适用于实际部署,因为它不依赖于用于顶级 Kaggle 解决方案的大规模计算资源或特定于竞赛的特征工程(如加密文件的像素强度)。
- 良性文件的加入允许实现完整的安全工作流:首先确定文件是否为恶意,随后识别其特定家族以进行针对性缓解。
作者得出结论,尽管其对数损失略高于竞赛获胜者,但其方法提供了一种更可持续、更具泛化性且资源效率更高的恶意软件分类解决方案。未来的工作计划研究十六进制数据与反汇编数据特征之间的融合,并将加密样本纳入训练集。
您所在领域的论文太多了?
获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。
每周获取最佳 AI 论文。
受到斯坦福、剑桥和法国科学院研究人员的信赖。
请查收邮箱确认订阅。
出了点问题,再试一次?
无垃圾邮件,随时退订。