Page 289 - 《软件学报》2026年第4期
P. 289
1730 软件学报 2026 年第 37 卷第 4 期
与 IMCFN 相同的预处理方法生成安卓软件的图像模态数据用于训练和测试. 特别地, 为了更好地且针对性地训
练中各个子模态的神经网络, 对于第 2.3.1 节中基于卷积神经网络的灰度图特征学习方法而言, 具体采用典型的
ResNet34 网络 [62] , AdamW 优化器的初始学习率为 1E–5; 对于第 2.3.2 节中基于 LSTM 的 API 调用序列特征学习
方法而言, LSTM 模型的隐藏特征维度设置为 200, AdamW 优化器的初始学习率为 0.01; 对于第 2.3.3 节中基于图
神经网络的控制流图特征学习方法而言, GraphSAGE 网络的层数 T 为 2 且输出维度均为 300, 并且在每层 Graph-
SAGE 网络之后都添加一层概率为 0.3 的 Dropout 网络以及 ReLU 激活函数避免模型过拟合, 此外, 其 AdamW 优
化器的初始学习率为 0.001.
对于第 3.1.4 节中的对抗性攻击基线方法, 本文选择图像领域经典的对抗性攻击方法 FGSM、PGD 以及 Carlini-
Wagner 作为 COPYCAT 中集成的对抗样本生成方法. 其中 FGSM 的扰动参数 ϵ 设置为 0.05; PGD 的扰动参数 ϵ
设置为 0.033 3, 最大迭代次数为 250 次, 学习率设置为 0.01; Carlini-Wagner 的迭代次数设置为 100, 学习率设置
为 0.1. GADGET 攻击遵循论文设置, 采用大小为 140 的滑动窗口, 短序列用 0 填充, 长序列按窗口分割后逐段处
理. 每次窗口处理尝试插入 API 的最大次数为 250 次, 插入时保持窗口长度不变, 将末尾 API 移至剩余序列. 对于
HRAT 而言, 本文使用具有 3 个隐藏层的全连接神经网络和 ReLU 激活函数作为 DQN 代理近似 Q(s,a) 函数进行
行为决策, 隐藏层神经元数量自底向上分别为 1 000 和 50, 输入为状态向量, 输出层包含 4 个神经元, 对应 HRAT
所设计的 4 种动作的 Q 值. DQN 使用学习率为 1E–3 的 Adam 优化器进行训练, 折扣因子 γ 设置为 0.9. 此外, 本文
采用大小为 32 的经验回放缓冲区, 以及批大小为 16 的 mini-batch 进行训练, 目标网络每 100 步更新一次. Episode
设置为 30, 每个 episode 的最大步数设置为 500.
3.2 实验结果与分析
为了充分地评估本文所提出 RMDroid 在安卓恶意软件鲁棒检测任务上的实际效果, 本节首先通过对比
RMDroid 与 3 个基线检测方法在同一数据集上的有效性指标, 对在恶意软件上的有效性进行系统的分析; 然后,
使用相同设置分析 RMDroid 的鲁棒性.
3.2.1 有效性实验结果与分析
(1) 对比实验
为了评估本文所提出 RMDroid 能够准确地检测出一般性恶意软件的能力, 即有效性实验, 本文选取 IMCFN、
MaMaDroid 与 MalScan 这 3 种最新的安卓恶意软件检测方法作为基线, 与本方法一起作为实验对象进行对比实
验. 具体而言, IMCFN 是当前最具代表性的基于图像的安卓恶意软件检测方法, 而 MaMaDroid 和 MalScan 是当前
最先进的基于 API 调用信息的安卓恶意软件检测方法. 特别地, 由于 MaMaDroid 中所采用的 API 调用信息的特
征粒度对安卓恶意软件检测的性能影响较大, 因此本文进一步训练两个 MaMaDroid 变体模型, 即 MaMaDroid(f)
和 MaMaDroid(p), 分别代表利用家族 (family) 信息和包 (package) 信息的 MaMaDroid 检测方法.
综上, 为了公平地对比与所有基线方法的有效性, 本文采用第 3.1.2 节中定义的 AUC、TPR 与 bACC 这 3 类
有效性评价指标. 特别地, 由于只有在保证 FPR 相同的情况下比较 TPR 和 bACC 才有意义, 因此对于每个待评估
的安卓恶意软件检测方法, 本文在保证 FPR 分别等于 1% 和 0.1% 的情况下计算相应的 TPR 和 bACC. 显然地, TPR
和 bACC 的值越高, 说明相应安卓恶意软件检测方法的有效性越好. 表 5 展示了与所有基线方法分别在 D rand 和 D time
两项数据集上的有效性实验结果.
首先, 分析所有基线检测方法之间相互对比的实验结果. 通过对表 5 中包括 IMCFN、MaMaDroid(f)、
MaMaDroid(p) 和 MalScan 在内所有基线安卓恶意软件检测方法的实验结果进行对比分析. 本文发现在 D rand 数据
集上基于 API 调用特征的 MaMaDroid(p) 的所有有效性评价指标全部优于其他基线检测方法. 然而, 在更符合实
D time 上, 基于图像特征的 IMCFN 的有效性评价指标明显高于其他基线检测方法. 本文推测出现
际场景的数据集
该结果可能的原因之一是: 随着时间推移, 恶意软件内调用的 API 函数也会随着安卓版本更迭而变化 (例如新的
API 出现, 旧的 API 被弃用), 因此会影响基于 API 调用特征的 MaMaDroid 检测方法检测 D time 数据集中的测试集
中新出现的恶意软件; 然而, 由于 IMCFN 采用的是建立在二进制字节码上的图像特征, 受到 API 函数更迭的影响

