一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种投票策略的加密恶意流量检测方法

2022-05-31 18:22:29 来源:中国专利 TAG:


1.本发明属于数据识别中的加密恶意流量检测领域,尤其涉及一种投票策略的多模型投票(mmvc)加密恶意流量检测方法。


背景技术:

2.过去十年中,tls加密协议为网络通信安全作出了重要贡献,例如http web协议、tor匿名网络和虚拟专用网络都使用tls加密其内容,保护信息内容在传输过程中不被截获和篡改。https 协议是由 http与tls 协议构建的可进行加密传输的网络协议,根据 google 的浏览器数据,2014年https的使用从所有网页访问的40%增长到2021年3月的98%。在良性软件使用tls加密通信的同时,恶意软件也采用tls进行加密,使得传统的恶意流量拦截手段有效性降低。sophos news的调研报告显示,2020年通过internet与远程系统通信中,有23%的恶意软件使用tls加密;而到2021年,达到了46%,因此检验网络中的tls加密恶意流量具有很大的意义。
3.目前对于tls加密恶意流量检测经历了3个阶段。第一阶段,通过解密技术破解tls加密协议,这种方法计算开销大且侵犯用户的隐私。第二阶段,在非解密的前提下,观测网络出口的加密通信流量(443端口)对加密流量进行判别,但现在新的恶意软件会绕过443端口而使用其他端口实现恶意行为。第三阶段,非解密分析流量包,通过分析流量包中的元数据、tls握手特征、dns响应和http上下文数据流特征,利用机器学习或深度学习的手段实现tls加密恶意流量检测,而特征工程对机器学习模型表现具有决定性影响。由于近年来计算机技术的飞速发展,国内外学者开始研究在非解密的情况下,利用信息熵、机器学习或深度学习来识别网络中的加密恶意流量。
4.如今,基于机器学习的加密恶意流量检测方法已经成为主流研究方法,但是,tls加密流量检测存在以下问题:(1)tls加密流量特征呈现多元异构的特点,单一的机器学习模型不再适用;(2)tls加密恶意流量检测样本特征复杂度高,常规编码方式容易引发维度灾难。


技术实现要素:

5.针对现有技术存在的不足和缺陷,本发明提供了一种投票策略的mmvc加密恶意流量检测方法,旨在检测过程中考虑流特征、tls握手特征和x.509证书特征,综合流量行为,结合投票策略解决以上问题。
6.本发明的技术路线是在非解密的情况下,提取流特征、tls握手特征和x.509证书特征结合机器学习来检测tls加密恶意流量。技术思路是捕获pcap数据包,对数据包进行预处理并打上标签,进而进行特征提取;将所提取的特征划分为5个特征子集,对特征子集进行标准化和编码;为处理后的5个特征子集分别设计分类器模型;根据流指纹将处理后的5个特征子集进行特征融合,构建样本集并将其打乱,划分为训练集和测试集;根据投票策略组合5个分类器模型构成mmvc检测模型;将训练集输入mmvc模型训练,使用测试集检验mmvc
检测模型性能。
7.根据以上技术思路,实现本发明目的的技术方案,包括以下步骤:首先,获取原始的流量包:(1)利用wireshark工具收集恶意软件在攻击过程中产生的恶意流量,得到恶意流量包;(2)利用wireshark工具收集正常情况下的良性流量,得到良性流量包;进一步地,数据预处理,过滤流量包中ip校验和无效的流量,得到完整的恶意流量包和良性流量包;进一步地,利用zeek工具解析上述流量包,进行特征提取,得到流特征、tls握手特征及x.509证书特征,并打上恶意/良性标签;进一步地,利用所提取的特征构成流特征子集、tls握手特征子集、证书主体特征子集、域名特征子集和证书签名特征子集;其中, 流特征子集包括跟踪tcp/udp建立连接的过程以及流的特征和到达过程;tls握手特征子集包括tls握手过程的client hello与sever hello部分;证书主体特征子集包括证书主体信息、证书签发机构和证书有效期;域名特征子集包括证书支持保护的域名和域名长度;证书签名特征子集包括证书是否为自签名;进一步地,将5个特征子集进行标准化和编码处理,并使用主成分分析法(pca)对tls握手特征子集进行特征降维:(1)流特征子集进行按列归一化处理后,得到100维流特征子集x1;(2)tls握手特征子集进行独热编码处理后,得到120维稀疏tls握手特征子集,采用主成分分析法,取累积最大特征贡献率ε≥0.9的前5个主成分,构成tls握手特征子集x2;(3)证书主体特征子集采用ordinal方式对证书主体和证书签发机构进行编码共7维特征;对证书有效期进行编码,证书有效期大于13个月则记为-1,反之则记为1,进而得到8维证书主体特征子集x3;(4)域名特征子集将域名的长度和是否收录在alexa网站域名库作为2个维度特征,对域名长度特征所在列进行归一化,构成域名特征子集x4;(5)将证书签名特征子集进行编码,若该证书是自签名证书则记为-1,反之则记为1,证书是否自签名作为1维特征构成证书签名特征子集x5;进一步地,对处理后的特征子集x1,x2,x3,x4,x5分别建立分类器模型,调整模型参数:(1)对处理后的流特征子集x1建立流分类器模型;(2)对降维后的tls握手特征子集x2建立tls分类器模型;(3)对处理后的证书主体特征子集x3建立证书主体分类器模型;(4)对处理后的域名特征子集x4建立域名分类器模型;(5)对处理后的证书签名特征子集x5建立证书签名分类器模型;(6)所述参数调节过程,流分类器、tls分类器和域名分类器模型参数采用控制变量法调节,证书主体分类器和证书签名分类器模型参数采用网格搜索法调节;进一步地,将5个降维后的特征子集通过流指纹进行融合,与其标签值y构成样本集,并按7:3的比例划分为训练集和测试集;
进一步地,将上述5个分类器模型通过投票策略组成mmvc检测模型:(1)构成投票模型的流分类器、tls分类器、证书主体分类器、域名分类器和证书签名分类器分别由随机森林分类器、xgboost分类器、朴素贝叶斯分类器、决策树分类器和朴素贝叶斯分类器模型构成;(2)根据投票策略组合5个分类器模型,构成mmvc检测模型;进一步地,将训练集输入mmvc检测模型进行训练,用测试集来评估mmvc加密恶意流量检测模型性能。
8.本发明相比现有技术的有益效果为:1.将流建立连接的过程和建立连接后产生行为作为特征进行分析,并结合tls握手过程和x.509证书特点对加密流量进行多维度检测,尤其是tls证书这一类重要特征,区别于直接对特征进行统一编码,本发明先对tls证书特征进行大数据分析得到各个特征的分布特点,而后对tls证书特征进行分类编码,通过这种方式能够有效提高tls加密恶意流量的检出率;2.将所提取的特征分为5个特征子集,并针对每一个特征子集的特点进行标准化和编码,将复杂特征数值化、简单化,减小了特征维度,进而减小计算开销和内存消耗,提高检测效率;3.分类器模型针对特征子集的数据特点进行设计,一方面,使用简单、易实现的分类器模型通过投票策略组合,能够有效地降低检测模型的复杂度;另一方面,使用多个投票模型分别在不同的特征维度进行检测,能够降低单个模型产生的偏差对最终检测结果的影响。
附图说明
9.为了更清楚的表述本发明的技术方案,下面对本发明需要使用的附图进行简要介绍,如下所述附图仅为展示本发明的实施方式,而并不是对本发明的限制。
10.图1为本发明实施例提出的一种投票策略的mmvc加密恶意流量检测方法的设计图;图2为本发明实施例提出的一种投票策略的mmvc加密恶意流量检测方法的流程图;图3为本发明实例提出的加密流量处理流程图;图4为本发明实施例提出的一种投票策略的mmvc检测模型的原理图。
具体实施方式
11.下面将结合本发明实施例中的附图,对本发明实例中的技术方案进行更加全面、完整的分析和表达,显然,所描述的实施例仅作为本发明的一部分实施例,为了对本发明做进一步解释,使本领域技术人员能够清晰、透彻的理解本发明,并不用于限定本发明。
12.如图1-4所示,本发明实施例提供的一种投票策略的加密恶意流量检测方法设计过程为:捕获原始的良性流量包和恶意流量包,并进行预处理,对预处理后的流量包进行特征提取、特征子集构建、特征子集标准化和编码,为每一个特征子集建立一个分类器模型,通过投票策略将5个分类器模型进行组合,构成mmvc检测模型,并使用训练集和测试集进行
训练和预测;如图2所示,本发明实施例提供的一种投票策略的加密恶意流量检测方法包括以下步骤:步骤1,获取原始pcap流量包:(1)利用wireshark工具收集在网络通信环境下运行的5种恶意软件所产生的流量,保证加密恶意流量的多样性,得到恶意流量原始pcap流量包;所述5种恶意软件的类型为yakes、cridex、sality、trickbot和razy;(2)利用wireshark工具收集正常情况下的良性流量,得到良性流量原始pcap流量包;步骤2,数据预处理:过滤掉流量包中ip校验和无效的流量,将所捕获的流量进行预处理,得到完整的tls流,并为每一条流打上标签,其中,恶意/良性流分别用-1/1表示;步骤3,特征提取,如图3,将预处理后的流量进行特征提取和转换,得到恶意/良性流量的特征向量:利用zeek工具,对预处理后的两个流量包中进行特征提取,所提取到的特征包括流特征,即tcp和udp协议传输与建立连接过程以及双向流的到达特征和到达过程;tls握手特征,即tls握手过程的client hello和sever hello部分;x.509证书特征,即tls握手过程的证书校验部分;为了更好的对所提取的特征进行统计和分析,将所提取的特征分别存放在3个日志文件中,并且为每一条流赋予流指纹标识,用于关联流在不同日志中的特征;步骤4,特征子集构建、标准化和编码,将步骤3中所提取的特征按类别分为5类:为了更好地发挥机器学习模型的作用,将步骤3中所提取的特征按照类别划分为5个不同的特征子集并进行标准化和编码处理;(1)流特征子集由tcp和udp协议传输与建立连接过程以及流的到达特征和到达过程构成,其数据类型均为数值型,对其按列归一化后,得到100维流特征子集x1;(2)tls握手特征子集由tls握手过程的client hello和sever hello部分构成,对其进行独热编码处理后,得到120维稀疏tls握手特征子集;为了提高模型的检测效率,采用主成分分析法对稀疏tls握手特征子集进行特征降维,取累积最大特征贡献率ε≥0.9的前5个主成分,构成tls握手特征子集x2;(3)证书主体特征子集由证书主体信息、证书签发机构和证书有效期构成,由于证书主体和签发机构所属特征多为重复的单词或字符,采用ordinal方式对证书主体和证书签发机构进行编码,将证书主体和证书签发机构的每一维特征所包含的m个类别映射到[0,m-1]区间上,共7维特征;对证书有效期进行编码,证书有效期大于13个月记为-1,反之则记为1,进而得到8维证书主体特征子集x3;(4)域名特征子集由域名的长度和是否收录在alexa网站域名库构成,对域名长度特征所在列进行归一化,若该域名收录在alexa网站域名库中,则记为1,反之则记为-1,进而构成2维域名特征子集x4;(5)证书签名特征子集由证书签名信息构成,对其进行编码,若该证书是自签名证书则记为-1,反之则记为1,进而构成1维证书签名特征子集x5;步骤5,为特征子集x1,x2,x3,x4,x5分别建立机器学习模型,调节模型参数:(1)针对流特征子集x1维度较高和样本不均衡的特点,建立基于bagging的随机森
林分类器作为流分类器模型,该模型根据随机抽样原则并行的训练样本集,采用控制变量法,设置森林中树的棵数为100,每棵树的最大深度为12;(2)针对降维后的tls握手特征子集x2建立xgboost分类器作为tls分类器模型,该模型采用串行的方式进行迭代,使得前一轮错分类的样本在下一轮迭代中得到更多的关注,采用网格搜索法,设置每棵树最大深度为4,采样列数所占比例为0.8,迭代器的数量为100;(3)针对证书主体特征子集x3数据离散与独立的特点,建立朴素贝叶斯分类器作为证书主体分类器模型,该模型基于特征条件独立假设学习输入输出的联合概率分布,利用网格寻优法,设置该分类器采用极大似然法计算先验概率;(4)针对域名特征子集x4数据类别简单、易分类的特点,建立决策树分类器作为域名分类器模型,采用控制变量法,设置信息熵为分叉依据,树的最大深度为2;(5)针对证书签名特征子集x4建立朴素贝叶斯分类器,利用网格寻优法,设置该分类器采用极大似然法计算先验概率;步骤6,根据投票策略组合上述5个分类器模型,如图4,构成mmvc检测模型:(1)mmvc检测模型由流分类器、tls分类器、证书主体分类器、域名分类器和证书签名分类器构成;(2)mmvc检测模型的工作机制为:流分类器、tls分类器、证书主体分类器、域名分类器和证书签名分类器5个模型单独对特征集的特定维度进行训练,每个分类器输出对某个样本的判定类别,若判定为恶意流量,则该分类器输出为-1,反之则为1;将5个分类器的结果进行统计,按照少数服从多数原则,输出该样本的最终预测类别。
[0013]
步骤7,特征融合和样本集构建:将步骤4中处理后的5个特征子集x1,x2,x3,x4,x5通过流指纹进行融合,融合后特征维度为115,与其标签值y构成样本集t,将样本集打乱,并按7:3的比例划分为训练集和测试集,其中,训练集和测试集中加密良性样本和加密恶意样本的比例与样本集中两者的比例保持一致;步骤8,训练模型,检验模型性能:(1)将训练集输入mmvc检测模型,为了防止训练过拟合,mmvc检测模型采用十折交叉验证的方式进行训练;(2)mmvc检测模型针对特征维度进行训练,即流分类器训练样本集第1-100维特征,tls分类器训练样本集第101-104维特征,证书主体分类器训练样本集第105-112维特征,域名分类器训练第113-114维特征,证书签名分类器训练第115维特征;(3)将测试集输入训练完成的mmvc检测模型进行测试,5个分类器模型分别对每一个样本进行判别,得到最终的预测结果;如果对某个样本的判别结果1占多数,则该测试样本被预测为良性流量,如果预测结果-1占多数,则该测试样本被预测为恶意流量。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献