Black-Box Attacks against RNN based Malware Detection Algorithms

【论文阅读】Black-Box Attacks against RNN based Malware Detection Algorithms

时间:2017

作者: Weiwei Hu 北京大学

​ Ying Tan 北京大学

  • Abstract:

    ​ 1. 原文:

    ​ 最近的研究表明,基于机器学习的恶意软件分类算法在面对对抗样本攻击时表现的十分脆弱。这些工作主要集中于那些利用了混合维度的特征的追踪算法,但一些研究者已经开始使用RNN,基于API特征序列来辨识恶意软件。

    ​ 这篇文章提出了一种用于生成对抗样本序列的原创算法,它被用于攻击基于RNN的恶意软件分类系统。对于攻击者来说,通常,知晓目标RNN的内部结构和权重是很难的。于是一个替代的用于近似目标RNN的RNN模型就被训练了出来,接着我们利用这个RNN来从原始序列输入中生成对抗样本序列。

    权威结果表明基于RNN的恶意软件分类算法不能追踪大多数我们所生成的恶意对抗样本,这意味着我们生成的模型可以很有效的规避追踪算法。

    ​ 2. 总结:

    ​ 一个对基于RNN的恶意样本分类器的灰盒攻击,有三个RNN,受害者RNN(源RNN),替代RNN,对抗样本生成RNN。

1. Introduction:

  1. 现有的基于N机器学习的恶意软件追踪算法主要将程序表现为固定维度的特征向量,然后将其分类为无害程序和恶意软件;
  2. 举例,利用API的调用序列,或者不被调用的API序列进行分类;
  3. 【11】展现了,基于固定维度特征来进行恶意样本分类的算法,面对对抗样本的攻击是脆弱的;
  4. 最近也有利用RNN进行恶意样本追踪与分类的,RNN的输入就是API序列。

2. Adversarial Examples:

​ 一些其它的针对序列的对抗样本攻击:

Nicolas Papernot, Patrick McDaniel, Ananthram Swami, and Richard Harang. Crafting adver

sarial input sequences for recurrent neural networks. In Military Communications Conference,

MILCOM 2016-2016 IEEE, pages 49–54. IEEE, 2016.

Kathrin Grosse, Nicolas Papernot, Praveen Manoharan, Michael Backes, and Patrick McDaniel.

Adversarial perturbations against deep neural networks for malware classifification. arXiv preprint

arXiv:1606.04435, 2016.

4. Attacking RNN based Malware Detection Algorithms

5. 实验

​ Adam 用于训练所有模型;

​ LSTM由于其在处理长序列的优秀表现,也被应用在实验的所有RNN中。

5.1 数据集:

来源:https://malwr.com/ (一个恶意样本分析网站,爬取180个项目,该网站可以分析用户上传的项目,并给出其API序列,网站中70%的项目都是恶意样本)

数据集划分:为了模拟真实的测试环境,数据集划分如下:(30%+10%)用于生成RNN,(30%+10%)用于受害者RNN,20%用于测试。

5.2 受害者RNN:

​ 尝试了不同模型:

结论如下:

  1. 与LSTM相比,BiLSTM不能提升模型的分类表现;
  2. 与Average-Pooling相比,注意力机制的效果更好;

5.3 生成(对抗样本)RNN测试结果:

​ 介绍参数规范:

The hyper-parameters of the generative RNN and the substitute RNN were tuned separately for each

black-box victim RNN. The learning rate and the regularization coeffificient were chosen by line

search along the direction 0.01, 0.001, et al.. The Gumbel-Softmax temperature was searched in the

range [1, 100]. Actually, the decoder length L in the generative RNN is also a kind of regularization

coeffificient. A large L will make the generative RNN have strong representation ability, but the whole

adversarial sequences will become too long, and the generative RNN’s size may exceed the capacity

of the GPU memory. Therefore, in our experiments we set L to 1.

​ 给出实验结果:

  1. 对于所有RNN模型,攻击都十分有效;
  2. 于LSTM的攻击效果最差,故替代RNN对LSTM的拟合效果并不好;
  3. 训练集与测试集的测试效果差别不大, 模型泛化能力强;
  4. 即使更换了模型与训练数据集,对抗样本仍效果很好。