CN113381973B - 一种识别ssr流量的方法、系统以及计算机可读存储介质 - Google Patents

一种识别ssr流量的方法、系统以及计算机可读存储介质 Download PDF

Info

Publication number
CN113381973B
CN113381973B CN202110456660.0A CN202110456660A CN113381973B CN 113381973 B CN113381973 B CN 113381973B CN 202110456660 A CN202110456660 A CN 202110456660A CN 113381973 B CN113381973 B CN 113381973B
Authority
CN
China
Prior art keywords
flow
identification
traffic
ssr
rule
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110456660.0A
Other languages
English (en)
Other versions
CN113381973A (zh
Inventor
刘杰
游帅
张风华
李新发
刘永强
景晓军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Surfilter Technology Development Co ltd
Original Assignee
Shenzhen Surfilter Technology Development Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Surfilter Technology Development Co ltd filed Critical Shenzhen Surfilter Technology Development Co ltd
Priority to CN202110456660.0A priority Critical patent/CN113381973B/zh
Publication of CN113381973A publication Critical patent/CN113381973A/zh
Application granted granted Critical
Publication of CN113381973B publication Critical patent/CN113381973B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种识别SSR流量的方法、系统以及计算机可读存储介质,方法包括:搭建所有配置的SSR服务,通过抓包工具抓取不同配置的SSR流量,以及采集普通流量;计算抓取到的不同配置的SSR流量与普通流量的带有负载的数据包的信息熵,并将计算出的信息熵作为样本数据输入决策树模型进行二分类训练以提取出流量识别规则,将提取出的流量识别规则作为判定规则用于后续的流量识别操作;将未知流量作为识别对象,执行流量识别操作,包括:计算识别对象的带有负载的数据包的信息熵,依次匹配判定规则,命中则疑似度增加,否则疑似度减小,当疑似度等于阈值时,则判定识别对象为SSR流量,本发明适用于各种组合配置的SSR服务识别。

Description

一种识别SSR流量的方法、系统以及计算机可读存储介质
技术领域
本发明涉及SSR流量识别领域,尤其涉及一种识别SSR流量的方法、系统以及计算机可读存储介质。
背景技术
虚拟专用网(Virtual Private Network,VPN)技术作为加密网络流量的主要使用技术之一,Shadowsocks(影梭,简称SS)属于目前主流的VPN工具之一,基于TCP加密协议的代理工具,ShadowsocksR(简称SSR)是在SS的基础上引入协议混淆、插件混淆,进一步对数据进行伪装、混淆,成为SS的改进版。
由于VPN加密流量失去了原有流量的报文头部信息、流量侧信道特征信息,给网络流量监管带来新的挑战。现有的针对VPN加密流量的识别方法主要是基于DPI(深度包检测)的流量识别及基于机器学习的流量识别,对于VPN流量的随机化特点,机器学习(深度学习)效果更加显著,机器学习主要是对报文的长度、载荷、时间序列、流持续时间、流方向、速率等进行特征提取,采用随机森林,SVM等模型进行训练识别,深度学习则主要是根据内容特征,采用深度神经网络(CNN,SAE等)进行模型训练。由于ShadowsocksR支持数据加密、协议混淆、插件混淆,其组合方式高达1000余种,目前大部分的识别技术没有覆盖所有配置,同时在真实网络环境中,由于干扰流种类杂多,通过单一流的输入进行识别,识别效果远低于实验室环境。
总而言之,现有的ShadowsocksR流量识别技术,存在以下不足:
1)没有涵盖ShadowsocksR所有配置,不同协议加密、插件混淆会导致数据流的行为特征和内容特征不一样,现有的机器学习模型大多针对特定类型的Shadowsocks流量类型进行识别;
2)是由于模型输入的单一性,现有识别技术,都是直接判定单一流是否是Shadowsocks流量,在真实的网络环境中,受干扰因素较多,导致准确率不够高。
发明内容
本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种识别SSR流量的方法、系统以及计算机可读存储介质。
本发明解决其技术问题所采用的技术方案是:构造一种识别SSR流量的方法,所述方法包括:
搭建所有配置的SSR服务,通过抓包工具抓取不同配置的SSR流量,以及采集普通流量;
计算抓取到的不同配置的SSR流量与普通流量的带有负载的数据包的信息熵,并将计算出的信息熵作为样本数据输入决策树模型进行二分类训练以提取出流量识别规则,将提取出的流量识别规则作为判定规则用于后续的流量识别操作;
将未知流量作为识别对象,执行流量识别操作;
其中,流量识别操作包括:计算识别对象的带有负载的数据包的信息熵,依次匹配判定规则,命中则疑似度增加,否则疑似度减小,当疑似度等于阈值时,则判定识别对象为SSR流量。
优选地,所述方法还包括,在提取出流量识别规则之后、将未知流量作为识别对象执行流量识别操作之前,通过以下操作对流量识别规则进行优化:将相似度较高的流量识别规则进行去重、合并,并统一采取大于/小于某一熵值为标准,生成最终的判定规则。
优选地,所述方法还包括,在提取出流量识别规则之后、将未知流量作为识别对象执行流量识别操作之前,通过以下操作对阈值进行优化:
不断的调整阈值,针对每一个阈值:将SSR流量与普通流量混合作为识别对象,执行流量识别操作,根据流量识别操作的结果,分析识别的准确率;
当阈值调整到某数值时识别的准确率保持稳定,则不再调整阈值,将该某数值作为最佳的阈值用于后续的流量识别操作。
优选地,所述的带有负载的数据包的信息熵,通过如下方式计算得到:将流量以TCP流为单位进行拆分,保留具备完整的三次握手的单流,计算每条单流的前四个带有负载的数据包的信息熵。
本发明另一方面还构造了一种识别SSR流量的系统,所述系统包括:
流量采集模块:用于搭建所有配置的SSR服务,通过抓包工具抓取不同配置的SSR流量,以及采集普通流量;
规则提取模块,用于计算抓取到的不同配置的SSR流量与普通流量的带有负载的数据包的信息熵,并将计算出的信息熵作为样本数据输入决策树模型进行二分类训练以提取出流量识别规则,将提取出的流量识别规则作为判定规则用于后续的流量识别操作;
未知流量识别模块,用于将未知流量作为识别对象,执行流量识别操作;
其中,流量识别操作包括:计算识别对象的带有负载的数据包的信息熵,依次匹配判定规则,命中则疑似度增加,否则疑似度减小,当疑似度等于阈值时,则判定识别对象为SSR流量。
优选地,所述规则提取模块还用于在提取出流量识别规则之后,通过以下操作对流量识别规则进行优化:将相似度较高的流量识别规则进行去重、合并,并统一采取大于/小于某一熵值为标准,生成最终的判定规则。
优选地,所述系统还包括阈值优化模块,用于不断的调整阈值,针对每一个阈值:将SSR流量与普通流量混合作为识别对象,执行所述识别操作,根据所述识别操作的结果,分析识别的准确率;以及当阈值调整到某数值时识别的准确率保持稳定,则不再调整阈值,将该某数值作为最佳的阈值用于后续的识别操作。
优选地,所述的带有负载的数据包的信息熵,通过如下方式计算得到:将流量以TCP流为单位进行拆分,保留具备完整的三次握手的单流,计算每条单流的前四个带有负载的数据包的信息熵。
本发明另一方面还构造了一种识别SSR流量的系统,包括处理器和存储器,所述存储器存储有计算机程序,所述计算机程序被处理器执行时实现如前任一项所述的方法的步骤。
本发明另一方面还构造了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现如权前任一项所述的方法的步骤。
本发明的识别SSR流量的方法、系统以及计算机可读存储介质,具有以下有益效果:本发明针对SSR流量本身特性,通过其带有负载的数据包的信息熵的分布提取规则,采用多规则匹配生成疑似度,将疑似度与阈值比较判定SSR服务,本发明输入对象是连续流量或者多个流量,由于输入的多样性,在现网中有效提高了准确率,适用于各种组合配置的SSR服务识别。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图:
图1是本发明识别SSR流量的方法的流程图;
图2是本发明识别SSR流量的方法的一个具体实施例的流程图。
具体实施方式
为了便于理解本发明,下面将参照相关附图对本发明进行更全面的描述。附图中给出了本发明的典型实施例。但是,本发明可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使对本发明的公开内容更加透彻全面。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。
本发明总的思路是:首先,搭建所有配置的SSR服务,通过抓包工具抓取不同配置的SSR流量,以及从现网环境中采集普通流量,计算抓取到的不同配置的SSR流量与普通流量的带有负载的数据包的信息熵,并将计算出的信息熵作为样本数据输入决策树模型进行二分类训练以提取出流量识别规则,将提取出的流量识别规则作为判定规则用于后续的流量识别操作;其次,在得到判定规则后,结合预先设置的阈值,将未知流量作为识别对象,执行流量识别操作,流量识别操作包括:计算识别对象的带有负载的数据包的信息熵,依次匹配判定规则,命中则疑似度增加,否则疑似度减小,当疑似度等于阈值时,则判定识别对象为SSR流量。如此,输入对象是连续流量或者多个流量,由于输入的多样性,在现网中有效提高了准确率,适用于各种组合配置的SSR服务识别。
为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明,应当理解本发明实施例以及实施例中的具体特征是对本申请技术方案的详细的说明,而不是对本申请技术方案的限定,在不冲突的情况下,本发明实施例以及实施例中的技术特征可以相互组合。
实施例一
参考图1,本发明的识别SSR流量的方法包括:
S101)搭建所有配置的SSR服务,通过抓包工具抓取不同配置的SSR流量,以及从现网环境中采集普通流量;
其中,从现网环境中采集的普通流量是指的不包括SSR数据的流量。本步骤中,所有SSR流量中每种配置流量大于100MB,包含的单流数量大于1000条,现网普通流量需大于10GB。
S102)计算抓取到的不同配置的SSR流量与普通流量的带有负载的数据包的信息熵;
优选的,带有负载的数据包的信息熵是通过如下方式计算得到:
1)将流量以TCP流为单位进行拆分,保留具备完整的三次握手的单流,具体来说,以TCP流为单位进行拆分是指双方TCP链接的发起到结束作为一个流,根据TCP的标志位进行筛选,去掉没有完整握手的单流;
2)计算每条单流的前M个(M为正整数,建议M取4)带有负载的数据包的信息熵。
S103)将计算出的信息熵作为样本数据输入决策树模型进行二分类训练以提取出流量识别规则,将提取出的流量识别规则作为判定规则用于后续的流量识别操作;
优选地,参考图2,所述方法还包括,步骤S102中,在提取出流量识别规则之后,还通过以下操作对流量识别规则进行优化:将相似度较高的流量识别规则进行去重、合并,并统一采取大于/小于某一熵值为标准,生成最终的判定规则。
比如说,两个流量识别规则的基准值的差值波动较小(比如差值比例小于10%)则可以认为相似度较高。比如说有两个规则:规则1是第一个包的信息熵大于4.0,第三个包的信息熵大于5.0;规则2是第一个包的信息熵大于3.8,第三个包的信息熵大于4.8,则该两个规则中第一个包的信息熵的基准值的差值比例是(4-3.8)/4<10%,第二个包的信息熵的基准值的差值比例是(5-4.8)/5<10%,因此可以认为这两个规则是高度相似的,可以进行去重。
在具体实施例中,为了方便决策树规则提取,决策树模型深度设置为4层。由于是二分类模型,规则中有正、反判定规则,这里只需要提取正向判定规则(也即统一采取大于某一熵值为标准),因此可以减少数据的处理量,提高识别的效率。比如说,假设初步提取出来的流量识别规则有:第一个信息熵大于3,第一个信息熵小于5,第二个信息熵大于2,第二个信息熵小于8……,则可以将其中“小于”的规则去除,即去除第一个信息熵小于5,第二个信息熵小于8之类的规则,仅保留“大于”的规则。
其中,关于决策树的生成,可以采用ID3算法、C4.5生成算法、CART算法等。比如说,假设有N个样本数据,每个样本数据包含的信息熵有M个,分别记为Xi,1≤i≤M。以CART算法为例,CART是一棵二叉树,采用二元切分法,每次把数据切成两份,分别进入左子树、右子树。而且每个非叶子节点都有两个孩子,所以CART的叶子节点比非叶子多1。CART分类时,使用基尼指数(Gini)来选择最好的数据分割的特征,Gini描述的是纯度。CART中每一次迭代都会降低GINI系数。基尼系数的计算公式如下:
Figure BDA0003040465190000081
Figure BDA0003040465190000082
下面以一个例子说明。
表1
Figure BDA0003040465190000083
如上表1,假设有5个样本,流量标签取1表示是SSR流量,0表示不是SSR流量。下面首先确认根节点。
根节点的基尼系数是1-(2/5)2-(3/5)2=0.48。对于第一个包的信息熵,五个样本提供了五个取值:2.6、3.2、3.5、3.6、3.8,我们以相邻两个熵值的平均值(2.9、3.35、3.55、3.7)为分割点计算基尼系数增益如下:
Δ(2.9)=0.48-1/5*0-4/5*(1-(2/4)2-(2/4)2))=0.08;
Δ(3.35)=0.48-2/5*0-3/5*(1-(2/3)2-(1/3)2)=0.21;
Δ(3.55)=0.48-3/5*(1-(2/3)2-(1/3)2)-2/5*(1-(1/2)2-(1/2)2)=0.01;
Δ(3.7)=0.48-1/5*0-4/5*(1-(2/4)2-(2/4)2))=0.08;
同理,对于第二个包的信息熵,五个样本提供了五个取值:2、3.2、4.1、4.9、5.4,我们以相邻两个熵值的平均值(2.6、3.65、4.5、5.15)为分割点计算基尼系数增益如下:
Δ(2.6)=0.48-1/5*0-4/5*(1-(2/4)2-(2/4)2))=0.08;
Δ(3.65)=0.48-3/5*(1-(2/3)2-(1/3)2)-2/5*(1-(1/2)2-(1/2)2)=0.01;
Δ(4.5)=0.48-3/5*(1-(2/3)2-(1/3)2)-2/5*(1-(1/2)2-(1/2)2)=0.01;
Δ(5.15)=0.48-1/3*0-2/3*(1-(1/2)2-(1/2)2))=0.08;
同理,计算第三个、第四个包的信息熵的基尼系数增益,此处不再赘述,最终计算发现最大的是基尼系数增益是第一个包的信息熵对应的Δ(3.35)=0.21,因此可以确定根节点的判断逻辑是第一个包的信息熵大于3.35,根节点的基尼系数修正是1-(1/3)2-(2/3)2=0.44。在确定根节点之后,计算其它包的信息熵的基尼系数,在上述五个样本中,满足根节点下的为真的叶子节点(即满足第一个包的信息熵大于3.35)的样本是3、4、5号样本,他们的第二个包的信息熵是2、3.2、4.9,相同的方法,我们以相邻两个熵值的平均值(2.6、4.05)为分割点计算基尼系数增益如下:
Δ(2.6)=0.44-1/3*0-2/3*0=0.44;
Δ(4.05)0.44-1/3*0-2/3*(1-(1/2)2-(1/2)2)=0.11;
同理,计算第三个包、第四个包的信息熵的基尼系数增益,最终发现基尼系数增益最大的是第二个包的信息熵对应的Δ(2.6),因此根节点下的为真的叶子节点的判断逻辑是第二个包的信息熵大于2.6。其他节点的确定过程以此类推,此处不再赘述,最终会形成一个二叉树,二叉树的所有节点的判断逻辑共同组成一个流量识别规则。通过将样本批量输入模型进行训练,最终找到的流量识别规则也比较多,因此可以将相似度较高的流量识别规则进行去重、合并。
S104)将未知流量作为识别对象,执行流量识别操作。
其中,流量识别操作包括:计算识别对象的带有负载的数据包的信息熵,依次匹配判定规则,命中则疑似度增加,否则疑似度减小,当疑似度等于阈值时,则判定识别对象为SSR流量。
比如,参考图2,以ip、port为键,计算TCP握手后前4个有效载荷包的信息熵,依次匹配各个判定规则,命中一个判定规则疑似度加1,否则疑似度减1,当疑似度等于阈值时,则结束匹配,判定该ip、port为SSR服务;当疑似度小于阈值,则持续匹配,直至ip、port下的所有单流匹配结束。
以上的阈值需要预先设置,优选地,所述方法还包括,在提取出流量识别规则之后、将未知流量作为识别对象执行流量识别操作之前,即在步骤S103与S104之间,通过以下操作对阈值进行优化:不断的调整阈值,针对每一个阈值:将SSR流量与普通流量混合作为识别对象(可以将步骤S101采集的流量分成两部分,一部分用于步骤S102、S103训练决策树模型,一部分用于此处调整阈值),执行流量识别操作,根据流量识别操作的结果,分析识别的准确率;当阈值调整到某数值时识别的准确率保持稳定,则不再调整阈值,将该某数值作为最佳的阈值用于后续的流量识别操作。
其中,准确率保持稳定,是指的准确率不再提高或者提高不显著的最小阈值。比如,设定一个阈值的初始值,在调整阈值时每次增大1,可以计算不同的阈值时对应的准确率,以阈值为横坐标,准确率为纵坐标,则最终的整体趋势接近对数曲线,则找到该曲线上斜率小于预设值的坐标点中横坐标最小的那个坐标点,该坐标点的横纵标即代表最佳的阈值,此可以通过对曲线求导计算得到。
本实施例中,基于SSR流量的本身特性,不同配置的加密混淆具有层级关系,其报文前几个数据包的随机性、均匀性是具备一定规律的,而信息熵是反应能量分布均匀程度的测度,因此基于熵的识别原理是可行的,由于训练样本覆盖全面,本发明相比现有技术可涵盖所有配置的SSR流量,同时采用输入样本的多样性,通过疑似度的权重计算进行判定,在现网环境中识别效果较好。
实施例二
基于同一发明构思,本实施例公开了一种识别SSR流量的系统,系统包括:
流量采集模块:用于搭建所有配置的SSR服务,通过抓包工具抓取不同配置的SSR流量,以及从现网环境中采集普通流量;
规则提取模块,用于计算抓取到的不同配置的SSR流量与普通流量的带有负载的数据包的信息熵,并将计算出的信息熵作为样本数据输入决策树模型进行二分类训练以提取出流量识别规则,将提取出的流量识别规则作为判定规则用于后续的流量识别操作;
未知流量识别模块,用于将未知流量作为识别对象,执行流量识别操作。
其中,流量识别操作包括:计算识别对象的带有负载的数据包的信息熵,依次匹配判定规则,命中则疑似度增加,否则疑似度减小,当疑似度等于阈值时,则判定识别对象为SSR流量。
优选地,所述规则提取模块还用于在提取出流量识别规则之后,通过以下操作对流量识别规则进行优化:将相似度较高的流量识别规则进行去重、合并,并统一采取大于/小于某一熵值为标准,生成最终的判定规则。
优选地,所述系统还包括阈值优化模块,用于不断的调整阈值,针对每一个阈值:将SSR流量与普通流量混合作为识别对象,执行所述识别操作,根据所述识别操作的结果,分析识别的准确率;以及当阈值调整到某数值时识别的准确率保持稳定,则不再调整阈值,将该某数值作为最佳的阈值用于后续的识别操作。
其中,所述的带有负载的数据包的信息熵,通过如下方式计算得到:将流量以TCP流为单位进行拆分,保留具备完整的三次握手的单流,计算每条单流的前四个带有负载的数据包的信息熵。
本发明实施例所述装置的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
上述描述涉及各种模块。这些模块通常包括硬件和/或硬件与软件的组合(例如固化软件)。这些模块还可以包括包含指令(例如,软件指令)的计算机可读介质(例如,永久性介质),当处理器执行这些指令时,就可以执行本发明的各种功能性特点。相应地,除非明确要求,本发明的范围不受实施例中明确提到的模块中的特定硬件和/或软件特性的限制。作为非限制性例子,本发明在实施例中可以由一种或多种处理器执行软件指令。需要指出的是,上文对各种模块的描述中,分割成这些模块,是为了说明清楚。然而,在实际实施中,各种模块的界限可以是模糊的。例如,本文中的任意或所有功能性模块可以共享各种硬件和/或软件元件。又例如,本文中的任何和/或所有功能模块可以由共有的处理器执行软件指令来全部或部分实施。另外,由一个或多个处理器执行的各种软件子模块可以在各种软件模块间共享。相应地,除非明确要求,本发明的范围不受各种硬件和/或软件元件间强制性界限的限制。
实施例三
基于同一发明构思,本实施例公开了一种识别SSR流量的系统,包括处理器和存储器,所述存储器存储有计算机程序,所述计算机程序被处理器执行时实现如实施例一所述的方法的步骤,具体实现过程可参阅上述方法实施例的描述,此处不再赘述。
实施例四
基于同一发明构思,本实施例公开了一种计算机可读存储介质,其特征在于,存储有计算机程序,所述计算机程序被处理器执行时实现如实施例一所述的方法的步骤,具体实现过程可参阅上述方法实施例的描述,此处不再赘述。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。

Claims (10)

1.一种识别SSR流量的方法,其特征在于,所述方法包括:
搭建所有配置的SSR服务,通过抓包工具抓取不同配置的SSR流量,以及采集普通流量;
计算抓取到的不同配置的SSR流量与普通流量的带有负载的数据包的信息熵,并将计算出的信息熵作为样本数据输入决策树模型进行二分类训练以提取出流量识别规则,将提取出的流量识别规则作为判定规则用于后续的流量识别操作;
将未知流量作为识别对象,执行流量识别操作;
其中,流量识别操作包括:计算识别对象的带有负载的数据包的信息熵,依次匹配判定规则,命中则疑似度增加,否则疑似度减小,当疑似度等于阈值时,则判定识别对象为SSR流量。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括,在提取出流量识别规则之后、将未知流量作为识别对象执行流量识别操作之前,通过以下操作对流量识别规则进行优化:将相似度较高的流量识别规则进行去重、合并,并统一采取大于/小于某一熵值为标准,生成最终的判定规则。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括,在提取出流量识别规则之后、将未知流量作为识别对象执行流量识别操作之前,通过以下操作对阈值进行优化:
不断的调整阈值,针对每一个阈值:将SSR流量与普通流量混合作为识别对象,执行流量识别操作,根据流量识别操作的结果,分析识别的准确率;
当阈值调整到某数值时识别的准确率保持稳定,则不再调整阈值,将该某数值作为最佳的阈值用于后续的流量识别操作。
4.根据权利要求1所述的方法,其特征在于,所述的带有负载的数据包的信息熵,通过如下方式计算得到:将流量以TCP流为单位进行拆分,保留具备完整的三次握手的单流,计算每条单流的前四个带有负载的数据包的信息熵。
5.一种识别SSR流量的系统,其特征在于,所述系统包括:
流量采集模块:用于搭建所有配置的SSR服务,通过抓包工具抓取不同配置的SSR流量,以及采集普通流量;
规则提取模块,用于计算抓取到的不同配置的SSR流量与普通流量的带有负载的数据包的信息熵,并将计算出的信息熵作为样本数据输入决策树模型进行二分类训练以提取出流量识别规则,将提取出的流量识别规则作为判定规则用于后续的流量识别操作;
未知流量识别模块,用于将未知流量作为识别对象,执行流量识别操作;
其中,流量识别操作包括:计算识别对象的带有负载的数据包的信息熵,依次匹配判定规则,命中则疑似度增加,否则疑似度减小,当疑似度等于阈值时,则判定识别对象为SSR流量。
6.根据权利要求5所述的系统,其特征在于,所述规则提取模块还用于在提取出流量识别规则之后,通过以下操作对流量识别规则进行优化:将相似度较高的流量识别规则进行去重、合并,并统一采取大于/小于某一熵值为标准,生成最终的判定规则。
7.根据权利要求5所述的系统,其特征在于,所述系统还包括阈值优化模块,用于不断的调整阈值,针对每一个阈值:将SSR流量与普通流量混合作为识别对象,执行所述识别操作,根据所述识别操作的结果,分析识别的准确率;以及当阈值调整到某数值时识别的准确率保持稳定,则不再调整阈值,将该某数值作为最佳的阈值用于后续的识别操作。
8.根据权利要求5所述的系统,其特征在于,所述的带有负载的数据包的信息熵,通过如下方式计算得到:将流量以TCP流为单位进行拆分,保留具备完整的三次握手的单流,计算每条单流的前四个带有负载的数据包的信息熵。
9.一种识别SSR流量的系统,其特征在于,包括处理器和存储器,所述存储器存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-4任一项所述的方法的步骤。
10.一种计算机可读存储介质,其特征在于,存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-4任一项所述的方法的步骤。
CN202110456660.0A 2021-04-26 2021-04-26 一种识别ssr流量的方法、系统以及计算机可读存储介质 Active CN113381973B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110456660.0A CN113381973B (zh) 2021-04-26 2021-04-26 一种识别ssr流量的方法、系统以及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110456660.0A CN113381973B (zh) 2021-04-26 2021-04-26 一种识别ssr流量的方法、系统以及计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN113381973A CN113381973A (zh) 2021-09-10
CN113381973B true CN113381973B (zh) 2023-02-28

Family

ID=77570259

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110456660.0A Active CN113381973B (zh) 2021-04-26 2021-04-26 一种识别ssr流量的方法、系统以及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN113381973B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116151388B (zh) * 2022-12-01 2024-09-03 广州大学 一种基于本地化差分隐私的联邦随机森林方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110377911A (zh) * 2019-07-23 2019-10-25 中国工商银行股份有限公司 对话框架下的意图识别方法和装置
WO2020125477A1 (zh) * 2018-12-18 2020-06-25 北京数安鑫云信息技术有限公司 一种提升爬虫识别召回率的方法、装置、介质及设备

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BRPI1015129A2 (pt) * 2009-06-30 2016-07-12 Dow Agrosciences Llc aplicação de métodos em aprendizagem de máquina para regras de associação na mineração de conjuntos de dados contendo marcadores genéticos moleculares de plantas e de animais, seguida pela classificação ou predição utilizando atributos criados a partir destas regras de associação
CN111464485A (zh) * 2019-01-22 2020-07-28 北京金睛云华科技有限公司 一种加密代理流量检测方法和装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020125477A1 (zh) * 2018-12-18 2020-06-25 北京数安鑫云信息技术有限公司 一种提升爬虫识别召回率的方法、装置、介质及设备
CN110377911A (zh) * 2019-07-23 2019-10-25 中国工商银行股份有限公司 对话框架下的意图识别方法和装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于决策树算法确定一个最小神经网络;刘栋等;《计算机应用》;20100630;第83-84页 *
基于用户反馈和增量学习的垃圾邮件识别方法;王鑫等;《清华大学学报(自然科学版)》;20060125(第01期);第70-71页 *

Also Published As

Publication number Publication date
CN113381973A (zh) 2021-09-10

Similar Documents

Publication Publication Date Title
CN110311829B (zh) 一种基于机器学习加速的网络流量分类方法
Pei et al. A DDoS attack detection method based on machine learning
WO2021227322A1 (zh) 一种SDN环境DDoS攻击检测防御方法
CN104244035B (zh) 基于多层聚类的网络视频流分类方法
CN110598774B (zh) 加密流量检测方法及装置、计算机可读存储介质、电子设备
Zhu et al. Retracted article: traffic identification and traffic analysis based on support vector machine
CN113381973B (zh) 一种识别ssr流量的方法、系统以及计算机可读存储介质
CN112235254B (zh) 一种高速主干网中Tor网桥的快速识别方法
Sheluhin et al. Comparative analysis of informative features quantity and composition selection methods for the computer attacks classification using the unsw-nb15 dataset
CN112839051A (zh) 基于卷积神经网络的加密流量实时分类方法及装置
CN111740921A (zh) 基于改进K-means算法的网络流量分类方法及系统
Kousar et al. DDoS attack detection system using Apache spark
CN113746707B (zh) 一种基于分类器及网络结构的加密流量分类方法
CN114710378A (zh) 一种基于决策树的并行报文分类查找方法及系统
Sija et al. Automatic payload signature generation for accurate identification of internet applications and application services
Wang et al. On the impact of packet inter arrival time for early stage traffic identification
CN108566388B (zh) 基于布鲁姆过滤器的sdn流规则冲突检测方法及系统
Sistani et al. Packet classification algorithm based on geometric tree by using recursive Dimensional Cutting (DimCut)
CN114528596A (zh) 一种基于深度学习的有向无环图区块链可扩展性增强方法
Zhu et al. MiCuts: Combing Bit-Based Cutting and Splitting for Efficient Packet Classification
Arevalo-Herrera et al. Network anomaly detection with machine learning techniques for sdn networks
CN111654479A (zh) 一种基于随机森林与XGBoost的洪泛攻击检测方法
CN116318787B (zh) 一种基于可解释人工智能的实时入侵检测方法及系统
CN105763479B (zh) 一种高效的p2p应用流量分类方法及系统
CN116805926B (zh) 网络业务类型识别模型训练方法、网络业务类型识别方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB03 Change of inventor or designer information
CB03 Change of inventor or designer information

Inventor after: Liu Jie

Inventor after: You Shuai

Inventor after: Zhang Fenghua

Inventor after: Li Xinfa

Inventor after: Liu Yongqiang

Inventor after: Jing Xiaojun

Inventor before: Liu Jie

Inventor before: You Shuai

Inventor before: Zhang Fenghua

Inventor before: Liu Yongqiang

Inventor before: Jing Xiaojun

GR01 Patent grant
GR01 Patent grant