一种快速自动识别加密网络行为的方法
【技术领域】
[0001] 本发明涉及一种识别加密网络行为的方法,具体涉及一种快速自动识别加密网络 行为的方法,属于网络安全技术领域。
【背景技术】
[0002] 网络的出现大大的改变了人们的通信方式,使人们的生活发生了翻天覆地的变 化,不同的用户使用网络中的各种应用,每天都会产生数以亿计的应用流,而这些看似正常 的流量中可能隐藏着各种恶意攻击行为。因此,分类识别网络流量,对规范网络应用、净化 网络环境以及保护网络用户的隐私安全都具有重大意义,这也是网络安全领域所要研宄的 热点问题,尤其是如何快速准确地识别加密的网络行为更是重中之重。
[0003] 目前,常见的加密流量分类识别方法包括:基于端口号识别、基于载荷信息识别、 基于机器学习识别以及基于流的统计特征识别。其中,基于端口号识别原理和实现都比较 简单,但容易受到加密类流量的动态端口、伪造端口等影响;基于载荷信息识别对于加密应 用模式匹配难度大,易受版本升级的影响;基于机器学习识别和基于流的统计特征识别的 识别准确率尚可,但计算开销大,实现复杂度高,无法满足在线实时识别的要求。
【发明内容】
[0004] 为解决现有技术的不足,本发明的目的在于提供一种快速自动识别加密网络行为 的方法,该识别方法能够及时、快速、高效地实现对加密数据的加密流量的在线判断,进而 有效解决因加密协议频繁升级而带来的研发工作量加大的问题。
[0005] 为了实现上述目标,本发明采用如下的技术方案:
[0006] 一种快速自动识别加密网络行为的方法,其特征在于,包括以下步骤:
[0007]Stepl:构建具体的加密网络行为模型库;
[0008] Step2 :实时采集网络交互数据;
[0009] Step3 :计算实时采集网络交互数据与模型库中不同参考样本的相关系数;
[0010] step4:依据计算相关系数结合预设阈值进行网络行为自动分类识别。
[0011] 前述的快速自动识别加密网络行为的方法,其特征在于,在Stepl中,构建加密网 络行为模型库的方法为:
[0012] (1)分析大量不同版本的加密网络行为数据;
[0013] (2)在前一步的分析基础上,提取出能够表征该加密网络行为的特征;
[0014] (3)根据相关系数原理和前一步提取出来的特征,构建该加密网络行为的模型库 及参考样本。
[0015] 前述的快速自动识别加密网络行为的方法,其特征在于,在Step2中,实时采集网 络交互数据的方法为:采用滑动窗口方式采集与参考样本相同长度的测量数据集。
[0016] 前述的快速自动识别加密网络行为的方法,其特征在于,在Step2中,根据下列公 式计算实时采集网络交互数据与模型库的相关系数:
[001/
[0018] 其中,X=[Xpx2, ???,xN]表示样本数据,Y=[ypy2,…,yN]表示新采集数据,相关 系数P>0表示正相关,P〈0表示负相关,P= 0表示无关。
[0019] 前述的快速自动识别加密网络行为的方法,其特征在于,在St印3中,
[0020] (1)对于音频和消息类,直接计算实时采集网络交互数据与模型库的相关系数;
[0021] (2)对于视频和图片类,先对采集到的数据进行预处理,预处理的方式是针对特定 位置使数据的值发生微小波动,从而使采集数据值与参考样本完全一样,然后计算预处理 后的数据与模型库的相关系数。
[0022] 本发明的有益之处在于:本发明的识别方法能够及时、快速、高效地实现对加密数 据的加密流量的在线判断,进而有效解决因加密协议频繁升级而带来的研发工作量加大的 问题。
【附图说明】
[0023] 图1是发消息交互过程中的流量记录图;
[0024] 图2是行为识别总体流程图;
[0025] 图3是数据采集方式示意图;
[0026] 图4是Twitter行为分析的程序实现流程图。
【具体实施方式】
[0027] 针对海量的加密网络行为难以识别的问题,本发明提出了一种快速自动识别加密 网络行为的方法。该方法首先构建具体的加密网络行为模型库,然后进行实时采集网络交 互数据,同时计算实时采集网络交互数据与模型库的相关系数,并依据计算的相关系数结 合预设阈值进行自动分类识别。
[0028] 以下结合附图和具体实施例对本发明作具体的介绍。
[0029] 在本实施例中,以Android版Twitter发帖为研宄对象。
[0030] Twitter发帖时涉及文字消息和上传图片,发文字消息时,从安全套接层(Secure SocketsLayer,SSL)的交互过程中可以获取域名为:"api.twitter,com",在upload图片 时的域名为"upload,twitter,com"。发消息属于长连接,且容易和看帖的行为相混淆,为区 别看帖,采用本实施例的方案进行实现。
[0031] 基本原理:
[0032] 同一类行为有相似的统计特征或其他外在特征,本发明依据网络数据流量的统计 特征,通过构建具体行为样本库,将实时采集的网络数据向样本库投影,投影值是依据相关 系数进行计算。系数值的大小反映了两个随机变量之间的相似程度。
[0033] 经过对Twitter数据大量研宄分析表明,明文和密文从外在形式上保持一致,密 文包的大小反映明文内容的多少,不同的行为动作,其特征不同,对于某一具体动作,例如 发消息,客户端和服务器之间的交互模式相对固定,交互过程中,反映交互双方负载流量也 保持了某种趋势,该趋势也不会因为小版本不同而发生变化。
[0034] 图1是发消息交互过程中的流量记录图。如图1所示,图1 (A)和图1 (B)是两次 真Twitter消息,图1(C)是一次伪消息,欲辨真伪,可选择其中一次真Twitter消息数据作 为模板,将其它两个消息与之比对,为能给出数值结果,可采用相关系数。而相关系数反映 了两个随机向量间的相关程度,计算公式如下:
[0035]
[0036] 其中,X=[Xpx2,…,xN]表示样本数据,Y=[ypy2,…,yN]表示新采集数据,相关 系数P>0表示正相关,P〈0表示负相关,P= 0表示无关。P的绝对值越大表示相关程 度越高。
[0037] 按照上述公式,两个真Twitter消息之间的相关系数为0. 8881,另外两个消息之 间的相关系数为〇. 6058。因此,本实施例以Twitter的登陆、聊天、音频、图片以及视频等 消息为样板,通过大量的数据分析,分别建立相应的模板,且设定阈值为〇. 8,若大于设定阈 值,判为真,否则为假。
[0038] 算法实现:
[0039] 结合数据包大小及特点区分,将基于相关系数的行为识别分成两类情形进行分 析,如图2所示,行为识别总体流程为:
[0040] Stepl:构建具体的加密网络行为模型库