|
文章目录
恶意加密的交通检测方法与多种功能识别结合的摘要
随着广泛使用加密流量,越来越多的恶意软件还使用加密流量来传输恶意信息。由于它们的传输内容是看不见的,因此基于深度数据包分析的传统检测方法带来了诸如降低准确性和实时不足之类的问题。
本文提出了一种恶意加密流量检测方法,通过分析恶意加密流量和正常流量的会话和协议结合了多个功能。此方法提取数据包长度和时间马尔可夫链,数据包长度和时间分布以及数据包长度和加密流量会话的时间统计的统计特征。结合TLS加密套件的使用协议功能,在握手阶段,证书和域名,构建了863维功能向量,并使用机器学习方法来检测加密的流量,从而发现恶意加密的流量。
测试结果表明,恶意加密流量检测方法与多个功能相结合可以达到98%以上的分类精度,召回率超过99.8%,并且基于保持可比的分类精度,它具有更好的鲁棒性和更广泛的适用性。
论文解决的问题以及加密流量的贡献导致了诸如基于深度数据包分析的传统检测方法的准确性和实时性能不足之类的问题。提出了一种结合多个功能的恶意加密流量测量方法来检测加密流量,并通过监视网络流量来分析恶意流量和正常流量之间的差异。 69个可以清楚地将正常流量与恶意流量区分开的功能,包括会话元数据功能,数据包长度序列统计功能,TLS握手功能,证书功能和域名功能。他们被用来识别和发现恶意流量。分析了RMETD-MF方法在不同时间流量数据和不同数据集的分类效果的检测效果,并验证了该方法的稳定性和分类精度。 1。正常交通和恶意交通特征的比较(1)会议的统计特征分析
包装数量的特征
恶意流量:大多数数据包被3-5接受
正常流量:数据包数量差异很大,从3到数千美元不等,大多数数据包是数十个。
包装长度序列的功能
恶意流量:同一恶意家庭的数据包长序列具有某些相似之处。
例如,.win32.zbot家族的大部分加密将链接到网站或网站,在该网站或网站上,链接到的会话数据包长度序列为{403、105、51、176、508},而链接到网站的数据包长度序列为{396、105、51、170、509}
正常流量:普通加密会话的数据包长度序列各不相同,并且没有固定的长度。
会话持续时间的特征
恶意流量:大多数恶意家庭在大约20秒内完成了加密的会议。时间很短。
正常流量:正常加密会话没有特定的时间。
数据包订单和尺寸特征
恶意流量:恶意家族的发送/接收包的订单和大小相似。此外,同一恶意家族的会话的不同数据包序列可能具有相同的数据包序列,并且会话的前几个数据包序列是相同的。
例如,恶意家庭。Win32。对于26836个加密会话,只有123个不同的数据包序列,而恶意的-spy.win32.zbot只有219个不同的数据包序列,用于16758的加密会话。
正常流量:普通流量没有特定的数据包发送序列和大小。
(2)TLS协议特征的分析
建立TLS连接的第一步是客户端向服务器端发送明文Hello消息,并将其支持的优先加密套件信息和扩展名列表发送到服务器端。生成此消息的方式取决于构建客户端应用程序时使用的软件包和方法。
服务器反馈Hello消息,包括所选的加密套件,扩展名列表以及随机数等,这是根据服务器使用的库和配置创建的,以及Hello消息中的详细信息。
由于大多数恶意软件都重复使用了同一恶意软件的代码,因此许多恶意软件的Hello消息在某些特征上非常相似,例如加密套件,扩展名等。
加密套件的功能
恶意会议:95%的恶意加密会议使用7个加密套件的列表。
正常会话:加密套件的列表相对分散。
恶意会议中使用的最高加密套房的清单仅占正常会议的2.20%和1.14%。可以看出,使用加密套件的恶意流量与正常流量之间存在明显差异。
客户使用的单个加密套件的数量:以中央集权方式在恶意会议中使用12和28个加密套件。在正常会议中,客户使用17,14,11加密套件。
加密套房4、5、19、50、56在恶意流量中使用的使用要比正常流量中更多。这些加密套件
它被认为是一个相对较弱的加密套件,安全性不足,不建议在普通软件中使用。
使用扩展加密套件的功能
恶意会话:恶意会话客户端使用的最扩展的识别号是10、11、0、65281和5。恶意加密会话客户端使用的扩展次数主要是5。
正常会话:具有普通加密会话的客户端常用的扩展量多种类型,而正常会话的客户端扩展次数相对多样化。
(3)服务器证书特征
服务器证书是TLS协议中用于验证服务器身份的文件。
恶意会议:
(1)由于会话重复使用的广泛使用,有88%的恶意会议不会传输证书。
(2)在传输证书的加密会议中,3.34%的恶意会话证书版本为1。
(3)为方便起见,大多数(48%)恶意软件将选择使用自签名证书。该证书支持较长的有效期。
(4)只有53%的恶意对话是域名,而30%是.com域名。
(5)恶意会话证书的最大替代名称为0〜9
正常会话:
(1)由于会话重复使用的广泛使用,正常会话中有36%不会传输证书
(2)在传输证书的加密会话中,证书版本基本上是3。
(3)正常会议中有12%使用自签名证书。通常,正常会话中使用的证书的有效性时间主要分布在0到4年之间。
(4)85%的正常会话使用域名中的证书名称,而62%为.com域名
(5)普通会话证书的ALT名称数量近40%远大于100。
(4)服务器域名特征
Hello中的名称扩展名用于指示客户端请求的服务器域名,以防止由一个IP引起的错误连接到多个服务器。当Hello中没有域名指示时,证书中的名称将作为服务器域名。
恶意会话:恶意会话中的域名相对分散,其中大多数是相对罕见的域名。
正常会话:正常会话中的域名主要是常见的域名。
这是因为普通会话主要连接到一些普通的普通网站,而恶意会话主要连接到由域名生成算法生成的一些罕见的网站,因此其域名排名相对较低。
2。RMETD-MF方法
总体过程:
流量捕获:在沙箱中运行恶意软件和普通软件以生成流量数据。流量预处理:清洁流量和过滤未加密的流量和不完整的会议。功能提取:根据要求,提取相关会话的统计功能和系统功能信息,以形成经过训练的863维功能矢量模型培训:建立一个模型,以进行恶意加密的流量分析。 (1)流量捕获正常流量:
(1)运行和其他工具来捕获通过访问普通加密的网站或运行普通软件来捕获生成的流量
(2)通过监视清洁网络环境流量来获取,并通过白名单过滤获得白名单作为正常流量的会话
恶意流量:
在沙箱中运行恶意软件,保存其操作过程中产生的流量,然后过滤沙箱和系统之间的通信流量,然后将剩余的流量用作恶意流量。
(2)流量预处理过滤器未加密的流量,并使用SSL/TLS协议保留流量。过滤会话,过滤到完成完整握手过程而不传输加密数据的会话。
具体方法是:
通过观察会话中是否有Hello消息和规格消息,我们可以确定握手是否已完成;
通过观察会话中是否有数据消息,我们可以确定会话是否传输了加密数据。
过滤重新启动,确认数据包并传输缺失的不良数据包。 (3)特征提取会话的统计特征提取
(1)元数据特征:会话的一般信息,例如发送的数据包数,字节, - >发送的数据包数,字节,会话持续时间,等等。
(2)数据包长度和时间序列特征:
数据包长度:会话的最大传输单元为1500字节,会话中的传输长度分为10个段,[0,150),[150,300)...,[1350,会话结束),并建立一个10*10的转换关系矩阵,每个数据包的有效负载与相邻数据包的有效负载之间。并逐行剪接成100维特征。
Time: the time of data , the time into ten [0,50ms], [50ms,100ms],…, [450ms, +∞], and build a 10*10 based on the and of the time , and also it to rows as a 100- .
(3)数据包长度和时间分配特征
数据包长度:将数据包长度分为150个不同的范围(0,10),(10,20),…,(1490, +∞),并根据每个数据包长度间隔分布在每个数据包长度间隔中的数据包数,作为150个维度的特征。
时间:将时间间隔分为100个不同的范围(0,0.005),(0.005,0.01),…,(0.45,+∞),根据每个包装
上一个数据包的时间间隔计算为每个时间间隔间隔分布的数据包数为100维征值。
(4)行李长度和时间的统计特征
分别计算包装长度序列和时间序列的统计特征:数量,最小值,最小元素位置,25%分数,中位数,75%
分数,平均值,最大值,最大元素位置,平均绝对方差,方差,标准偏差,形成24维特征向量。
TLS握手功能提取
(1)客户端TLS功能
- 我观察到客户端使用了260种类型的加密套件,因此我设置了260维向量。
- 为客户支持的扩展列表构建一个43维矢量,与所使用的43个扩展加密套件相对应。
- 计算扩展的数量作为一维特征向量的输入。
(2)服务器端TLS功能
- 使用服务器选择的加密套件作为一维功能向量输入
- 同时,服务器支持的扩展列表内置在43维功能向量中
- 扩展的数量也是一维征素量。
证书功能提取
域名特征
(1)域名特征
关于域名的提取特征,包括域名中字母符号数量的比例,所有字符的数字符号数量的比例以及所有字符的非符号数量的比例。
(2)排名特征
根据域名排名在Alexa的前100万列表中,构建一个长度为6的向量,并根据它是否在Top1W,,,,不入合的列表中设置矢量。如果不在中,则将位置设置为1,将位置设置为0,如果不在第一个100W列表中,则将不合格位设置为1。
(4)模型培训和测试
四种机器学习算法,例如随机森林,逻辑回归和决策树,用于跨验证10%。
综上所述
数据集:
机器学习效果:
功能测试效果:
时间测试效果:
根据时间顺序将正常和恶意数据集分类为培训和测试集。从2019年5月到2019年7月中旬的恶意流量,2017年12月至2018年2月的校园网络流量,以及2019年8月前两周的企业流量数据作为培训设置;从2019年7月下旬到2019年8月的恶意流量,2019年3月和2019年11月的校园网络流量,以及2019年8月的企业数据作为测试集。
跨场稳定性:
第一组实验测试选择了70%的校园网络正常数据集和70%的恶意数据集用于培训,验证对企业正常数据集的检测效果和30%的恶意数据集,并将其记录为跨景观测试1;
第二组实验选择了企业的正常数据集的70%,以及70%的恶意数据集进行培训,并测试了对校园网络数据集的检测效果以及其余30%的恶意数据集,这些数据集记录为跨景句子测试2;
由于数据集并未相交,因此为了降低误报率,因此具有10%的正常数据集与测试数据集随机分配为训练集的补充,因此分别测试了补充课程对准确性和其他指标的增加的影响。
摘要1。学习的知识点。 TLS协议是用于整体加密流量检测的常见加密协议,包括流量收集和流量预处理方法。 2。纸创新点从各个角度收集了恶意流量和正常流量的特征。提出的模型非常强大。 |
|