特征工程之加密流量安全检测

在经典的机器学习领域,特征工程一直占据着核心地位。特征工程的质量往往直接决定机器学习的成败。本文概述了我们加密恶意流量检测实践中的特征工程方法流程,并分析了最终的流量特征集。

加密流量

从广义上讲,特征工程的实践过程一般包括四个步骤:特征提取、特征选择、特征应用和特征迭代。

一、特征提取

特征提取是特征工程早期的一项重要任务。如何设计待提取的候选特征集需要对恶意软件加密通信进行全面的领域知识积累。如何处理提取的特征候选集以获得适合机器学习模型输入的特征,需要在数据分析和处理方法方面有深入的实践经验。

加密流量

初步特征提取的目标候选特征集可分为协议无关特征和协议相关特征。与协议无关的特征是指在业务数据传输过程中表达的共同特征,如数据包大小、数据包时间间隔等。协议相关功能是指加密传输协议级别的流量数据的专有功能,如SSL扩展类型和加密套件类型。通过对SSL协议标准和恶意流量数据的深入研究,结合收集到的数据集逐一进行验证,最终获得一组覆盖面广、与恶意流量相关性高的候选特征集,进而开发专有特征提取系统,为后续的特征数据分析和处理提供基础支持。

在提取的候选特征集的基础上,进行进一步的特征数据分析和处理,对不适合作为机器学习模型直接输入的数据进行深度特征提取。例如,对于可能出现在加密通信中的所有类型的域名,传统方法是提取数字、字母、非字母和域名数作为特征。基于深度学习技术训练LSTM模型,直接提取DGA域名的概率值作为特征,为机器学习模型提供更有效的数据信息。随后的实验表明,这种深度提取特征在模型中起着关键作用。上图DGA域名检测模型架构图如下图所示:

特征工程/加密/流量安全

二、特征选择

特征选择是特征提取后的一项重要任务,它直接决定最终特征集的质量。我们使用了四种类型的特征选择方法:先验知识验证、降维可视化分析、启发式搜索分析和综合工程测试。前两种方法依赖于数据的统计分析,而后两种方法结合了分类模型。

特征工程/加密/流量安全

先验知识验证是指依靠专家先验知识直接选择候选特征集。根据数据集特征统计结果的差异,先验知识可以直接给出本质原因,指导特征选择。例如,润滑脂扩展项上的SSL扩展显示的正常/恶意流量差异不能被视为保留功能,因为润滑脂扩展项只是浏览器为确保协议的可伸缩性而设计的功能,并不反映恶意流量功能。

降维可视化分析是指对一组初始选择的特征集进行基于无监督学习的降维处理和可视化分析,以直接判断这组特征集的质量。例如,我们使用主成分分析和t-SNE等降维方法来降维一组特征集。从降维结果的可视化分析可以看出,这组特征集对图中数据集的聚类和区分效果明显,质量较高。降维的视觉效果如下图所示:

特征工程/加密/流量安全

特征工程/加密/流量安全

启发式搜索分析(heuristic search analysis),是指从一个小特征集开始,分批逐步添加候选特征,使用机器学习模型测试分类效果,判断批次中特征的选择。在大量特征集使得不可能遍历和测试每个特征集的情况下,基于随机选择和树搜索的分析方法可以更好地平衡效率和

通过上述四步特征选择方法,获得了一组相对准确的加密流量特征集。在此基础上,通过计算相关系数、互信息等方法,对特征进行相关性分析,去除相关性大的重复特征。虽然去除重复特征并不能极大地提高模型的预测效果,但其主要目的是简化特征集,降低模型的复杂度,提高预测性能。

三、最终特征集

经过特征提取和特征选择,最终得到四种类型的特征集:时空特征、握手特征、证书特征和背景特征。根据这四个类别,它被分为54个子类别和1000多个特征。这些特性足以描述每个加密会话,并反映不同类型加密流量的细微差别。

1. 时空特征

时空特性是前述的协议无关特性。“时间”是指与时间相关的一组特征,例如流持续时间、分组时间间隔等。“空”是指与数据包大小相关的一组特征集,如数据包大小传输矩阵、熵值等。下图分别显示了两个示例:

特征工程/加密/流量安全

特征工程/加密/流量安全

2. 握手特征

握手功能是上述协议相关功能之一,主要是一组与SSL协议相关的功能集,描述了握手阶段客户端和服务器的一系列流量功能。例如,协议版本、支持的扩展等。下图分别显示了两个示例:

特征工程之加密流量安全检测

特征工程/加密/流量安全

3. 证书特征

certificate feature是上述协议相关功能之一,主要是一组与x509协议相关的功能集,描述了双方使用的数字证书的一系列功能。例如,证书链长度、用户常态等。下图分别显示了两个例子:

特征工程/加密/流量安全

特征工程/加密/流量安全

4. 背景特征

后台特征(Background Features)是指从后台流量中提取和选择的一种特征类型,如域名、超文本传输协议和其他后台流量特征,其中域名后台流量特征主要反映在域名特征中,超文本传输协议后台流量特征主要反映在超文本传输协议报头内容特征中。下图是DNS类功能的示例:

特征工程/加密/流量安全

四、特征迭代

feature项目是一个持续迭代和更新的过程。上述内容只是迭代任务之一。当基本数据类型和内容发生变化时,需要及时地重新循环特征项目,并且需要不断地修改和改进特征集。应在“特色”这一关键点上不断努力。

经过以上四个步骤,加密恶意流量检测的特色项目可以取得初步的效果。在总结了我们的实践经验后,需要特别强调的是,不仅需要不断改进实验室数据验证和特征迭代,还需要在多种场景下对多数据源现有网络环境进行充分验证和迭代,同时注意对新出现的威胁流量数据的收集和验证,从而获得一个可以投入实际应用的加密恶意流量检测机学习模型。

特征工程之加密流量安全检测

极牛网精选文章《特征工程之加密流量安全检测》文中所述为作者独立观点,不代表极牛网立场。如若转载请注明出处:https://geeknb.com/5014.html

(35)
打赏 微信公众号 微信公众号 微信小程序 微信小程序
主编的头像主编认证作者
上一篇 2020年2月11日 下午4:09
下一篇 2020年2月13日 上午11:47

相关推荐

发表回复

登录后才能评论
扫码关注
扫码关注
分享本页
返回顶部