Generating Adversarial Malware Examples for Black-Box Attacks Based on GAN 研读报告 | 刘广睿的思维实验室
0%

Generating Adversarial Malware Examples for Black-Box Attacks Based on GAN 研读报告

近年来,机器学习算法被用于检测未知恶意软件。相对的攻击者也想尽办法攻击这种新的防御系统。恶意软件制作者通常无法访问机器学习模型的详细结构与参数,因此他们只能执行黑盒攻击。本文提出了一种基于生成对抗网络(GAN)的算法——MalGAN,该算法能使恶意软件绕过黑盒机器学习检测。其使用替代检测器配合黑盒模型训练GAN,通过最大程度减少替代检测器对对抗样本的恶意预测概率,生成可绕过黑盒模型的对抗样本。本课题由北京大学机器感知与智能教育部重点实验室谭营团队研究完成。

1 课题创新点

  • 本文提出了一种名为MalGAN的算法,可以从基于机器学习的黑盒恶意软件检测器中生成对抗样本。

2 方案设计

2.1 系统环境

本文所指的黑盒环境:由于基于机器学习的恶意软件检测算法通常托管在云端,因此对于攻击者(恶意软件制作者)而言机器学习算法是黑盒算法,即不知道检测系统使用的分类器种类及其具体参数。然而攻击者可以通过精心构造的测试样例检测出机器学习算法使用的特征。例如,如果恶意软件使用目录表中某DLL或调用某API的特征,则攻击者可以修改恶意软件DLL内容或调用API内容,并将修改后的样本输入检测器,如果检测器判别类别发生改变,那么可以判定机器学习算法使用了该特征。因此本文假设攻击者知道恶意软件机器学习算法使用的特征,但是对机器学习模型一无所知。

2.2 体系结构

Malware 系统架构如图 1 所示。假设恶意软件制作者仅知道黑盒模型使用的特征,并可从检测器中获取软件检测结果。整个模型包含生成器、黑盒模型检测器以及替代检测器,生成器与替代检测器都是前馈神经网络,使用特征均为API二进制特征信息,即是否调用该API,调用值为1,反之为0。

图 1: Malware 系统架构

  • 生成器:
  1. 生成器输入为恶意软件特征向量m和噪音向量z的串联。m是M维二元向量,对应每个每个API调用情况。z为Z维向量,其中Z为超参数。z的每个元素取值都是从[0,1)之间的均匀分布中采样的随机数。其作用是允许单个恶意软件生成多种对抗样本。
  2. 输入通过权重为 $ \theta _ g $ 的多层前馈神经网络。
  3. 输出层有M个神经元,最后一层使用sigmod激活函数,将输出限制在 (0,1) 范围内。并根据原始是否大于0.5来进行二值化转换。
  4. 为了不影响恶意软件功能,在生成对抗样本时只进行添加不想关功能操作,不进行任何功能删除操作。
  • 生成器损失函数:

\begin{equation}
L_D = - E_{x \in BB_{Benign}}log(1-D_{\theta_d}(x)) - E_{x \in BB_Malware}log D_{\theta_d}(x)
\label{D_Loss}
\end{equation}

  • 辨别器:
  1. 由于攻击者对黑盒模型内部信息一无所知,所以通过替代检测器拟合黑盒检测器,并通过其提供的梯度信息生成训练器。
  2. 替代检测器(辨别器)同样是权重为 $ \theta _ g $ 的多层前馈神经网络。
  3. 输入为对抗样本和良性样本的混合。注意其样本标签不使用原始样本标签而是黑盒检测器的标签。
  • 辨别器损失函数:

\begin{equation}
L_G = E_{m \in S_Malware,z \sim p_{uniform[0,1)}}log D_{\theta _d}(G _{\theta_g} (m,z))
\label{G_Loss}
\end{equation}

2.3 MalGAN 训练算法

图 2: MalGAN 训练算法

3 实验

3.1 实验配置

  • 实验数据:自恶意程序贡献网站malwr.com下载18万个程序,其中恶意程序占比约30%。分割数据80%作为训练集,其余20%作为测试集。
  • 特征选取:基于160个系统级API调用情况,为每一个程序构造一个160维的二进制特征向量。
    目标分类器:随机森立(RF),逻辑回归(LR),决策树(DT),支持向量机(SVM),多层感知器(MLP)以及投票机制的集成学习。

3.2 实验结果

  • 目标黑盒分类器与MalGAN使用相同训练集:对抗样本的TPR降到1%以下。

图 3: 目标黑盒分类器与MalGAN使用相同训练集对抗样本真阳性率

  • 目标黑盒分类器与MalGAN使用不同训练集:对抗样本的TPR降到3%以下。

图 4: 目标黑盒分类器与MalGAN使用不同训练集对抗样本真阳性率

  • 生成对抗网络收敛速度

图 5: 训练集和验证集的真阳性率随时间变化情况

可改进

本工作假设攻击者可以探知目标黑盒分类器使用的样本特征,但实际上探知API特征是一个很复杂、耗时的工作,怎样将这项工作自动化的快速完成有待进一步的研究。


参考


- - - - - - - - - - - - - - - - 本 文 结 束 啦 感 谢 您 阅 读 - - - - - - - - - - - - - - - -