论文-阅读理解笔记-Predicting DGA with Long Short-Term Memory Networks

主要贡献:

1)引入一个LSTM网络来预测DGA生成的域,据我们所知,这是第一个深度学习到这个域的应用和深入分析;

2)呈现完整的实验结果,显示使用开放数据集的文献比先前的技术(实时和回顾性)显着改进;

 

背景介绍:

Domain Generation Algorithms

本文评估了对来自30种不同类型恶意软件的DGA生成域进行分类的能力。

DGA技术的复杂性从简单的统一生成的域名到那些试图模拟在实际域中看到的分布的域名。

在不使用上下文信息的情况下,使用suppobox等算法预测DGA生成的域是非常困难的。 事实上,本文提出的LSTM技术是唯一能够对这些域进行分类的实时技术。

DGA Classification

DGA分类可以成为域名信誉系统的有用组成部分。 域名信誉系统的任务是

指定一个域的可信得分。 该分数通常从0(最良性)到1(最恶意)变化。 域名信誉系统通常包含许多异构数据以决定域的声誉。 DGA分类是可以帮助将声誉分配给域的一条信息。以前的DGA分类方法大致可以分为两类:

1)回顾:按组分类域以利用批量统计属性或共同的上下文信息;

2)实时:单独对域名进行分类,不需要额外的上下文信息

LSTM Networks

在各种自然语言任务中,递归神经网络(RNN)已被用于捕获序列中令牌之间的有意义的时间关系。 RNNs的关键优势在于它们将上下文(状态)信息纳入从输入到输出的映射中。 也就是说,单个RNN小区的输出是输入层和先前RNN**的函数。 由于包含自回归连接引入的长操作链,传统RNN的输出可能按给定输入指数衰减(或者更罕见但是灾难性地爆发),导致众所周知的消失梯度问题。 这使得学习RNN中的长期依赖关系难以实现。

消失梯度的问题是应用长时间短期记忆(LSTM)单元背后的一个关键原因

模型介绍:

论文-阅读理解笔记-Predicting DGA with Long Short-Term Memory Networks

由嵌入层,主要用作特征提取器的LSTM层和逻辑回归分类器组成。

嵌入层:将输入转换为具有固定大小的向量

LSTM层:LSTM并不是将域名明确地表示为一群bigrams,而是学习使第二个分类层的性能最大化的字符模式(或者在这里是嵌入向量)。相比于传统的DGA检测,这里的LSTM是隐形提取特征。

logistic regression层:用来分类,是一个简单的二分类器。

模型的优点:

     1模型接受可变长度字符序列作为输入,对此特征提取

2没有辅助要求;模型非常紧凑,仅由一个嵌入层,一个LSTM网络层和一个完全连接的输出层组成,这个输出层是简单的物流(或多类,多项物流)回归;尽管对大型数据集的训练计算量很大,但浅层结构可以实现非常快的查询时间。

实验部分:

论文-阅读理解笔记-Predicting DGA with Long Short-Term Memory Networks

使用LSTM模型进行DGA和非DGA生成域的二元分类的ROC曲线,

使用bigram特征的逻辑回归分类,

使用手动特征的随机森林分类器

使用手动特征的HMM分类器。

(两种算法之间的差异可能看起来很小,但在生产系统中确实非常重要。 举例来说,LSTM模型可以以10,000个假阳性率将90%的DGA分类。 另一方面,一个Bigram模型将用相同比例的DGA进行分类,误差率为550/5(即Bigram模型产生的误报率是LSTM模型的20倍)。

论文-阅读理解笔记-Predicting DGA with Long Short-Term Memory Networks

Precision,(精确率P=系统检索到的相关文件 / 系统所有检索到的文件总数;亦即等于预测为真实正例除以所有被预测为正例样本的个数)

Recall (召回率R= 系统检索到的相关文件 / 系统所有相关的文件总数;亦即预测为真实正例除以所有真实正例样本的个数)

F1 Score(= F1= 2 * P * R / (P + R))

总结:

 LSTM比其他技术更具优势,因为它们不需要任何特征,使用原始域名作为输入。没有必要手动创建难以维护并且在对抗机器学习设置中变得无用的功能。此外,LSTM分类器可以在标准商用硬件上的单个域上实时运行,这使得部署在几乎所有的安全设置中都变得微不足道。公开可用的数据集上的实验表明,LSTM分类器比其他技术(实时和回顾性)显着优于90%的DGAs,误报率为10-4。另外,LSTM分类器可以进行细微修改就可以解决多类分类的问题,这可以提供关于生成恶意软件的域的起源和意图的指标。

对结果的深入分析表明,最困难的分类算法直观地来自于类似字符分布的模型,如Alexa上100万个域名。这些DGA家族中的一些家族从(典型地)英语字典中随机选择的单词连接起来。然而,当训练样例的数量变得剧大并且家庭被归入超级家庭时,LSTM分类器能够区分这些DGA家庭。

模型优化的矢量为每个字符以一种直观的方式进行嵌入,具有不同的字母和数字数字集群。我们对LSTM层的分析揭示了LSTM单元的存在,它跟踪了一些可以解释的特征,例如十六进制和随机字符序列。然而,我们发现大多数状态没有提供明确的功能证据。

像所有模型一样,实验表明我们的模型对类不平衡很敏感,这限制了它在训练集不是很好的情况下检测家庭的能力(例如,matsnu,symmi和cryptowall)。在零训练的极端情况下,发现LSTM模型不能很好地检测所有结构非常独特的家庭(all families withvery distinctive structure)。手动设计的特征能够检测LSTM分类器错过的那些家族中的一些家族,并且我们推测这是直接由特征集中的专家调整偏差导致的,这在无特征LSTM模型中无法表示。

     但是据我们所知,所提供的系统是迄今为止表现最好的DGA分类系统,也是最容易部署的系统之一。