CN110519298B - 一种基于机器学习的Tor流量识别方法及装置 - Google Patents

一种基于机器学习的Tor流量识别方法及装置 Download PDF

Info

Publication number
CN110519298B
CN110519298B CN201910887625.7A CN201910887625A CN110519298B CN 110519298 B CN110519298 B CN 110519298B CN 201910887625 A CN201910887625 A CN 201910887625A CN 110519298 B CN110519298 B CN 110519298B
Authority
CN
China
Prior art keywords
tor
identified
length
characteristic value
training
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
CN201910887625.7A
Other languages
English (en)
Other versions
CN110519298A (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.)
Beijing Digapis Technology Co ltd
Original Assignee
Beijing Digapis Technology 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 Beijing Digapis Technology Co ltd filed Critical Beijing Digapis Technology Co ltd
Priority to CN201910887625.7A priority Critical patent/CN110519298B/zh
Publication of CN110519298A publication Critical patent/CN110519298A/zh
Application granted granted Critical
Publication of CN110519298B publication Critical patent/CN110519298B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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

Abstract

本发明公开了一种基于机器学习的Tor流量识别方法,包括:获取待识别数据流量中各个待识别数据包的第一长度;依据所述第一长度,将所述各个待识别数据包分配给采用预设方法得到的各个目标分组长度范围内,确定待输入特征值;将所述待输入特征值发送给Tor流量识别模型进行分析,确定所述待识别数据流量是否属于Tor流量。上述方法中,通过获取待识别数据流量中各个待识别数据包的第一长度,依据第一长度,将各个待识别数据包分配给采用预设方法得到的各个目标分组长度范围内,确定待输入特征值,依据待输入特征值,确定待识别数据流量是否属于Tor流量,当待识别数据流量为Tor流量时,进行定向跟踪处理,为打击此类网络犯罪提供辅助。

Description

一种基于机器学习的Tor流量识别方法及装置
技术领域
本发明涉及计算机网络安全技术领域,尤其涉及一种基于机器学习的Tor流量识别方法及装置。
背景技术
暗网是一种特殊的网络,普通浏览器无法直接访问到。暗网处于深网中最隐私的部分,需要通过特殊的加密通道才能访问到,只能通过洋葱路由Tor(The Onion Routing)或隐形互联网项目I2P(Invisible Internet Project)等匿名网络才能访问,其中Tor网络最为著名。
Tor网络属于暗网中的一种,由于Tor网络的特殊加密方式、洋葱路由算法、定时自动更换路由等特点,使得Tor网络攻击难以被追踪溯源。Tor网络设计之初是为了保护隐私,避免人们在互联网上被追踪,但是却被大量应用于非法应用,导致Tor网络通常跟“个人信息”、“黑市”、“勒索”等词一起出现,Tor网络充斥着各种网络犯罪。所以亟需提供一种识别Tor流量方法进而定向跟踪处理,为打击此类网络犯罪提供辅助。
发明内容
有鉴于此,本发明提供了一种基于机器学习的Tor流量识别方法及装置,用以识别Tor流量进而定向跟踪处理,为打击此类网络犯罪提供辅助。具体方案如下:
一种基于机器学习的Tor流量识别方法,包括:
获取待识别数据流量中各个待识别数据包的第一长度;
依据所述第一长度,将所述各个待识别数据包分配给采用预设方法得到的各个目标分组长度范围,确定待输入特征值;
将所述待输入特征值发送给Tor流量识别模型进行分析,确定所述待识别数据流量是否属于Tor流量。
上述的方法,可选的,采用预设方法得到的各个分组长度范围包括:
获取通过预设访问方式访问目标网站得到的训练数据流量中各个训练数据包的第二长度;
依据所述第二长度,将所述各个训练数据包配给各个初始分组长度范围,确定训练特征值;
将所述训练特征值发送给初始Tor流量识别模型进行训练;
当输出结果的误差小于预设的误差阈值时,确定Tor流量识别模型的目标分组长度范围。
上述的方法,可选的,还包括:
当所述输出结果的误差范围大于预设的误差阈值时,对所述初始Tor流量识别模型中的算法参数和所述初始分组长度范围进行调整。
上述的方法,可选的,所述预设访问方式包括:通过Firefox浏览器访问,通过Meek方式的Tor网络访问和通过配置ShadowSocks代理方式的Tor网络访问。
上述的方法,可选的,还包括:
对所述目标网站进行过滤,过滤掉其中无法访问的网站。
上述的方法,可选的,依据所述第一长度,将所述各个待识别数据包分配给采用预设方法得到的各个目标分组长度范围,确定待输入特征值,包括:
将每一个待识别数据包依据其对应的第一长度分配给对应的目标分组长度范围;
统计所述各个目标分组长度范围中待识别数据包的数量,将所述数量作为所述待输入特征值。
一种基于机器学习的Tor流量识别装置,包括:
获取模块,用于获取待识别数据流量中各个待识别数据包的第一长度;
分配与确定模块,用于依据所述第一长度,将所述各个待识别数据包分配给采用预设方法得到的各个目标分组长度范围,确定待输入特征值;
分析与确定模块,用于将所述待输入特征值发送给Tor流量识别模型进行分析,确定所述待识别数据流量是否属于Tor流量。
上述的装置,可选的,所述分配与确定模块中采用预设方法得到的各个分组长度范围包括:
获取单元,用于获取通过预设访问方式访问目标网站得到的训练数据流量中各个训练数据包的第二长度;
分配与确定单元,用于依据所述第二长度,将所述各个训练数据包配给各个初始分组长度范围,确定训练特征值;
训练单元,用于将所述训练特征值发送给初始Tor流量识别模型进行训练;
确定单元,用于当输出结果的误差小于预设的误差阈值时,确定Tor流量识别模型的目标分组长度范围。
上述的装置,可选的,还包括:
调整单元,用于当所述输出结果的误差范围大于预设的误差阈值时,对所述初始Tor流量识别模型中的算法参数和所述初始分组长度范围进行调整。
上述的装置,可选的,所述分配与确定模块包括:
分配单元,用于将每一个待识别数据包依据其对应的第一长度分配给对应的目标分组长度范围;
统计确定单元,用于统计所述各个目标分组长度范围中待识别数据包的数量,将所述数量作为所述待输入特征值。
与现有技术相比,本发明包括以下优点:
本发明公开了一种基于机器学习的Tor流量识别方法,包括:获取待识别数据流量中各个待识别数据包的第一长度;依据所述第一长度,将所述各个待识别数据包分配给采用预设方法得到的各个目标分组长度范围内,确定待输入特征值;将所述待输入特征值发送给Tor流量识别模型进行分析,确定所述待识别数据流量是否属于Tor流量。上述方法中,通过获取待识别数据流量中各个待识别数据包的第一长度,依据第一长度,将各个待识别数据包分配给采用预设方法得到的各个目标分组长度范围内,确定待输入特征值,依据待输入特征值,确定待识别数据流量是否属于Tor流量,当待识别数据流量为Tor流量时,进行定向跟踪处理,为打击此类网络犯罪提供辅助。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例公开的一种基于机器学习的Tor流量识别方法流程图;
图2为本申请实施例公开的一种基于机器学习的Tor流量识别方法又一流程图;
图3为本申请实施例公开的一种基于机器学习的Tor流量识别装置结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
本发明公开了一种基于机器学习的Tor流量识别方法及装置,应用于对暗网中Tor流量的识别过程中,其中,暗网是一种特殊的网络,普通浏览器无法直接访问到。如果把在搜索引擎里面可以直接搜索到的内容称为明网,无论搜索引擎收录了多少网站,这些也只是整个网络世界的冰山一角。明网以外的更多内容处于深网中,即无法直接访问到,可能需要特殊权限、注册、付费等方式才能访问到的网站。暗网处于深网中最隐私的部分,需要通过特殊的加密通道才能访问到,只能通过Tor或I2P等匿名网络才能访问,其中Tor网络最为著名。2019年4月底显示,通过中继节点直接访问Tor网络的每日在线用户量达221万,Tor的中继节点量达6500多个,Tor的网桥数量达1000多个,只能通过Tor网络访问的OnionServices网站达10万多个。
Tor网络设计之初是为了保护隐私,避免人们在互联网上被追踪。因为网络通信本身不提供信息保护,它是通过源地址、目的地址和报文长度等来通信的。数据加密虽然可以保护通信内容的隐私,但是无法隐藏通信双方的身份信息。Tor网络使用洋葱路由算法保护通信双方的身份。Tor网络通信时随机选择3个全球性中继节点(入口节点、中间节点、出口节点),依次通过非对称加密算法协商会话密钥,层层加密建立电路,每个节点只知道上一跳和下一跳的节点IP,只有出口节点才知道真正访问的网站地址,电路中任一节点都不知道完整的通信信息,并且所有节点是全球性的,每次通信都会定时更换路径,追踪起来十分困难,从而实现了匿名通信。
虽然Tor网络初衷是为了保护用户隐私,但是却被大量非法应用,导致Tor网络通常跟“个人信息”、“黑市”、“勒索”等词一起出现,Tor网络充斥着各种网络犯罪。比特币的出现使得Tor网络更是成为黑市交易汇聚的场所。由于Tor网络的特殊加密方式、洋葱路由算法、定时自动更换路由等特点,使得Tor网络攻击难以被追踪溯源。
Tor为了隐蔽、伪装自身流量特征,通信协议模仿了HTTPS协议以混淆其流量特征,Tor项目组也开发了多种流量混淆插件,内置在Tor浏览器(Tor浏览器可以直接访问Tor网络),其中Meek最为流行,也比较稳定。Meek插件使用域名前置技术,把Tor流量伪装成基于HTTPS协议访问公共云平台的流量,云平台再将流量转发给真正的Tor网络,从而隐藏Tor流量的指纹特征。
虽然Meek方式隐藏自身流量,但是和HTTPS协议还是有区别的,特别是在包长度方面,基于此区别,本文提出了基于机器学习的Tor流量识别方法。本文研究通过Meek插件方式访问Tor网络的流量、直接访问Tor网络的流量、通过Firefox访问HTTPS网站的流量三种预设访问方式访问时网络流量的识别方法。Tor网络无法直接访问时,通常使用代理服务器进行转发进而访问Tor网络,最常见的为ShadowSocks。本文将直接访问Tor网络的流量替换为使用ShadowSocks代理访问Tor网络的流量进行研究。其中,ShadowSocks(以下简称SS)由两部分组成,客户端和服务器端。客户端启动后开启一个本地代理,浏览器访问某个网站时通过本地代理进行转发,本地代理取出数据部分进行加密,并重新构造一个新的IP数据包,目标地址和目标端口号分别是服务器地址和端口号,由服务器进行转发,进而访问Tor网络。
所述识别方法的执行流程如图1所示,包括步骤:
S101、获取待识别数据流量中各个待识别数据包的第一长度;
本发明实施例中,所述待识别数据流量为通过Firefox浏览器访问,通过Meek方式的Tor网络访问和通过配置ShadowSocks代理方式的Tor网络访问的数据流量中的一种,其中,所述待识别的数据流量包括HTTPS握手阶段、等待阶段、用户操作阶段的数据,所述待识别的数据流量中包含多个待识别数据包,获取各个待识别数据包的第一长度。
S102、依据所述第一长度,将所述各个待识别数据包分配给采用预设方法得到的各个目标分组长度范围内,确定待输入特征值;
本发明实施例中,每一个待识别数据包依据其对应的第一长度分配给对应的目标分组长度范围,统计所述各个目标分组长度范围中待识别数据包的数量,将所述数量作为所述待输入特征值,所述待输入特征值作为Tor流量识别模型的输入参数。其中,所述各个目标分组长度范围是通过对初始Tor流量识别模型进行训练得到的。
S103、将所述待输入特征值发送给Tor流量识别模型进行分析,确定所述待识别数据流量是否属于Tor流量。。
本发明实施例中,所述Tor流量识别模型是采用邻近算法KNN(k-NearestNeighbor)进行构建的,所述Tor流量识别模型是通过对初始Tor流量识别模型进行训练得到的,将所述待输入特征值采用发送给所述Tor流量识别模型进行分析,得到分析结果,其中,所述分析结果可以为通过Firefox浏览器访问,通过Meek方式的Tor网络访问和通过配置ShadowSocks代理方式的Tor网络访问。其中,通过Meek方式的Tor网络访问和通过配置ShadowSocks代理方式的Tor网络访问可以判定为Tor流量,通过Firefox浏览器访问可以判定为不是Tor流量。
本发明公开了一种基于机器学习的Tor流量识别方法,包括:获取待识别数据流量中各个待识别数据包的第一长度;依据所述第一长度,将所述各个待识别数据包分配给采用预设方法得到的各个目标分组长度范围内,确定待输入特征值;将所述待输入特征值发送给Tor流量识别模型进行分析,确定所述待识别数据流量是否属于Tor流量。上述方法中,通过获取待识别数据流量中各个待识别数据包的第一长度,依据第一长度,将各个待识别数据包分配给采用预设方法得到的各个目标分组长度范围内,确定待输入特征值,依据待输入特征值,确定待识别数据流量是否属于Tor流量,当待识别数据流量为Tor流量时,进行定向跟踪处理,为打击此类网络犯罪提供辅助。
本发明实施例中,初始阶段,所述初始Tor流量识别模型中的算法参数k和初始分组范围采用的都是默认值或者经验值,无论采用默认值或者经验值都可能是不准确的,需要通过训练的方式对其进行调整,训练的过程如图2所示,包括步骤;
S201、获取通过预设访问方式访问目标网站得到的训练数据流量中各个训练数据包的第二长度;
本发明实施例中,所述预设访问方式包括:通过Firefox浏览器访问,通过Meek方式的Tor网络访问和通过配置ShadowSocks代理方式的Tor网络访问,其中,所述目标网站为Alexa网站,例如,可以获取Alexa网站中排名前1000的网站组成的网站数据集中网站的访问地址,并获取网站域名与IP地址的对应关系,过滤掉其中无法访问的网站。
进一步的,通过以下三种方式获取训练数据流量,具体包括:
用Firefox浏览器访问网站数据集中的HTTPS网站。
通过配置Meek插件方式连接Tor网络,使用Tor浏览器访问网站数据集中的HTTPS网站,并获取Meek的前置服务IP地址。
通过配置ShadowSocks代理方式连接Tor网络,使用Tor浏览器访问网站数据集中的HTTPS网站,并获取shadowSocks代理服务器的IP地址。
其中,以上三种方式依次访问网站数据集中的每条地址,针对每一个具体的网站可以分别采用上述三种方式进行访问,也可以采用上述三种方式中的任意一种进行访问,访问完成后将网站地址移除集合,直到网站集合为空,数据收集结束。
通过Firefox浏览器,对所有网站依次进行HTTPS访问请求,获取HTTPS握手阶段、等待阶段、用户浏览页面阶段的数据流量。查找HTTPS网站的IP地址,通过过滤IP地址收集Firefox浏览器直接访问的数据流量,将其作为训练数据流量。
通过Meek方式打开Tor浏览器,对所有网站依次进行HTTPS访问请求,获取HTTPS握手阶段、等待阶段、用户浏览页面阶段的数据流量。查找Meek前置服务器的IP地址,通过过滤前置服务器的IP地址收集Meek方式连接Tor浏览器访问HTTPS网站的数据流量,将其作为训练数据流量。
通过配置ShadowSocks代理的方式打开Tor浏览器,对所有网站依次进行HTTPS访问请求,获取HTTPS握手阶段、等待阶段、用户浏览页面阶段的数据流量。查找ShadowSocks服务器的IP地址,通过过滤ShadowSocks服务器IP地址收集ShadowSocks代理方式连接Tor浏览器访问HTTPS网站的数据流量,将其作为训练数据流量。
解析上述训练数据流量,获取所述训练数据流量中各个数据包的第二长度。
S202、依据所述第二长度,将所述各个训练数据包配给各个初始分组长度范围,确定训练特征值;
本发明实施例中,在初始阶段,确定预设数量的各个初始分组长度范围,其中,所述预设的数量依据流量分析或者具体情况进行设定,本发明实施例中,以所述预设数量为10进行说明。所述各个特征分组依据对应数据包的长度进行划分,划分原则是以区分上述三类数据流量特征为基础,分析观测每类流量的数据包长度所占的数量比例,比重比较大的前几项分别映射到一个范围内,其它范围根据距离分,将分组长度分为10个初始分组长度范围,分别统计每个分组长度范围内数据包的数量,作为对应的训练特征值。其中,所述数据包的数量可以与访问的内容、时长、访问方式等相关,因此每一条数据的数据包数量各不相同且差异很大,可能造成KNN计算距离时的误差,为了减小误差,得到准确结果,将每个不同范围的特征分组内的分组数量进行归一化数值,将取值范围处理为0到1之间,按比重计算。其中,所述训练数据流量可以只具有10个长度范围的部分长度范围的数据或者全部长度范围的数据。
S203、将所述训练特征值发送给初始Tor流量识别模型进行训练;
本发明实施例中,将所述训练数据流量划分为训练集数据和验证集数据,其中,划分的原则划分的比例可以依据具体的情况进行设定,本发明中不进行具体限定。将所述训练集数据的训练特征值发送给初始Tor流量识别模型进行训练,用所述验证集数据的训练特征值进行验证,其中,所述初始Tor流量识别模型是依据KNN算法进行构建,当所述初始Tor流量识别模型训练完成时,得到所述Tor流量识别模型。
S204、当输出结果的误差小于预设的误差阈值时,确定Tor流量识别模型的目标分组长度范围。
本发明实施例中,所述预设的误差阈值可以依据经验或者具体情况进行设定,本发明实施例中度所述预设的误差阈值的具体范围不进行限定,将所述初始Tor流量识别模型的输出结果进行比较,当输出结果的误差小于预设的误差阈值时,则所述初始Tor流量识别模型即为所述Tor流量识别模型,将其中的初始分组长度范围作为目标分组长度范围。
当所述输出结果的误差大于预设的误差阈值时,对所述初始Tor流量识别模型中的算法参数和所述初始分组长度范围进行调整,直至其输出结果的误差小于所述预设误差阈值,则所述初始Tor流量识别模型即为所述Tor流量识别模型,将其中的初始分组长度范围作为目标分组长度范围。
本发明实施例中对所述输出结果误差的确定方式不进行限定。
本发明实施例中的识别方法不但不需要了解各种协议原理,不需要部署深度检测系统,相比于阻断流量,识别的代价极小;而且根据不同类型的数据流量特征,将分组长度这一传统意义上的特征分解为多个不同分组长度范围的新特征,再计算分组长度范围内数据包的数量作为对应的特征值,既增强该特征权重,又减小识别误差。
基于上述的了一种基于机器学习的Tor流量识别方法,本发明实施例中,还提供了一种基于机器学习的Tor流量识别装置,所述识别装置的结构框图如图3所示,包括:
获取模块301、分配与确定模块302和分析与确定模块303。
其中,
所述获取模块301,用于获取待识别数据流量中各个待识别数据包的第一长度;
所述分配与确定模块302,用于依据所述第一长度,将所述各个待识别数据包分配给采用预设方法得到的各个目标分组长度范围,确定待输入特征值;
所述分析与确定模块303,用于将所述待输入特征值发送给Tor流量识别模型进行分析,确定所述待识别数据流量是否属于Tor流量。
本发明公开了一种基于机器学习的Tor流量识别装置,包括:获取待识别数据流量中各个待识别数据包的第一长度;依据所述第一长度,将所述各个待识别数据包分配给采用预设方法得到的各个目标分组长度范围内,确定待输入特征值;将所述待输入特征值发送给Tor流量识别模型进行分析,确定所述待识别数据流量是否属于Tor流量。上述装置中,通过获取待识别数据流量中各个待识别数据包的第一长度,依据第一长度,将各个待识别数据包分配给采用预设方法得到的各个目标分组长度范围内,确定待输入特征值,依据待输入特征值,确定待识别数据流量是否属于Tor流量,当待识别数据流量为Tor流量时,进行定向跟踪处理,为打击此类网络犯罪提供辅助。
本发明实施例中,所述分配与确定模块302中采用预设方法得到的各个分组长度范围包括:
获取单元304、分配与确定单元305、训练单元306和确定单元307。
其中
所述获取单元304,用于获取通过预设访问方式访问目标网站得到的训练数据流量中各个训练数据包的第二长度;
所述分配与确定单元305,用于依据所述第二长度,将所述各个训练数据包分配给各个初始分组长度范围,确定训练特征值;
所述训练单元306,用于将所述训练特征值发送给初始Tor流量识别模型进行训练;
所述确定单元307,用于当输出结果的误差小于预设的误差阈值时,确定Tor流量识别模型的目标分组长度范围。
本发明实施例中,所述分配与确定模块还包括:调整单元308。
其中,
所述调整单元308,用于当所述输出结果的误差范围大于预设的误差阈值时,对所述初始Tor流量识别模型中的算法参数和所述初始分组长度范围进行调整。
本发明实施例中,所述分配与确定模块302包括:
分配单元309和统计确定单元310。
其中,
所述分配单元309,用于将每一个待识别数据包依据其对应的第一长度分配给对应的目标分组长度范围;
所述统计确定单元310,用于统计所述各个目标分组长度范围中待识别数据包的数量,将所述数量作为所述待输入特征值。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本发明时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
以上对本发明所提供的一种基于机器学习的Tor流量识别方法及装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (8)

1.一种基于机器学习的Tor流量识别方法,其特征在于,包括:
获取待识别数据流量中各个待识别数据包的第一长度;
依据所述第一长度,将所述各个待识别数据包分配给采用预设方法得到的各个目标分组长度范围,确定待输入特征值;
所述采用预设方法得到的各个分组长度范围包括:获取通过预设访问方式访问目标网站得到的训练数据流量中各个训练数据包的第二长度;依据所述第二长度,将所述各个训练数据包配给各个初始分组长度范围,确定训练特征值;将所述训练特征值发送给初始Tor流量识别模型进行训练;当输出结果的误差小于预设的误差阈值时,确定Tor流量识别模型的目标分组长度范围;
将所述待输入特征值发送给Tor流量识别模型进行分析,确定所述待识别数据流量是否属于Tor流量。
2.根据权利要求1所述的方法,其特征在于,还包括:
当所述输出结果的误差范围大于预设的误差阈值时,对所述初始Tor流量识别模型中的算法参数和所述初始分组长度范围进行调整。
3.根据权利要求1所述的方法,其特征在于,所述预设访问方式包括:通过Firefox浏览器访问,通过Meek方式的Tor网络访问和通过配置ShadowSocks代理方式的Tor网络访问。
4.根据权利要求1所述的方法,其特征在于,还包括:
对所述目标网站进行过滤,过滤掉其中无法访问的网站。
5.根据权利要求1所述的方法,其特征在于,依据所述第一长度,将所述各个待识别数据包分配给采用预设方法得到的各个目标分组长度范围,确定待输入特征值,包括:
将每一个待识别数据包依据其对应的第一长度分配给对应的目标分组长度范围;
统计所述各个目标分组长度范围中待识别数据包的数量,将所述数量作为所述待输入特征值。
6.一种基于机器学习的Tor流量识别装置,其特征在于,包括:
获取模块,用于获取待识别数据流量中各个待识别数据包的第一长度;
分配与确定模块,用于依据所述第一长度,将所述各个待识别数据包分配给采用预设方法得到的各个目标分组长度范围,确定待输入特征值;
所述分配与确定模块中采用预设方法得到的各个分组长度范围包括:
获取单元,用于获取通过预设访问方式访问目标网站得到的训练数据流量中各个训练数据包的第二长度;
分配与确定单元,用于依据所述第二长度,将各个训练数量包配给各个初始分组长度范围,确定训练特征值;
训练单元,用于将所述训练特征值发送给初始Tor流量识别模型进行训练;
确定单元,用于当输出结果的误差小于预设的误差阈值时,确定Tor流量识别模型的目标分组长度范围;
分析与确定模块,用于将所述待输入特征值发送给Tor流量识别模型进行分析,确定所述待识别数据流量是否属于Tor流量。
7.根据权利要求6所述的装置,其特征在于,还包括:
调整单元,用于当所述输出结果的误差范围大于预设的误差阈值时,对所述初始Tor流量识别模型中的算法参数和所述初始分组长度范围进行调整。
8.根据权利要求6所述的装置,其特征在于,所述分配与确定模块包括:
分配单元,用于将每一个待识别数据包依据其对应的第一长度分配给对应的目标分组长度范围;
统计确定单元,用于统计所述各个目标分组长度范围中待识别数据包的数量,将所述数量作为所述待输入特征值。
CN201910887625.7A 2019-09-19 2019-09-19 一种基于机器学习的Tor流量识别方法及装置 Active CN110519298B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910887625.7A CN110519298B (zh) 2019-09-19 2019-09-19 一种基于机器学习的Tor流量识别方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910887625.7A CN110519298B (zh) 2019-09-19 2019-09-19 一种基于机器学习的Tor流量识别方法及装置

Publications (2)

Publication Number Publication Date
CN110519298A CN110519298A (zh) 2019-11-29
CN110519298B true CN110519298B (zh) 2021-11-12

Family

ID=68632981

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910887625.7A Active CN110519298B (zh) 2019-09-19 2019-09-19 一种基于机器学习的Tor流量识别方法及装置

Country Status (1)

Country Link
CN (1) CN110519298B (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111953670B (zh) * 2020-07-30 2022-11-15 江苏大学 基于Meek传输插件的自适应混淆方法、系统及计算机存储介质
CN111953669B (zh) * 2020-07-30 2022-10-25 江苏大学 适用于SDN的Tor流量溯源与应用类型识别方法和系统
CN111953693A (zh) * 2020-08-13 2020-11-17 北京计算机技术及应用研究所 Tor网络通信流量识别分析方法
CN112235254B (zh) * 2020-09-22 2023-03-24 东南大学 一种高速主干网中Tor网桥的快速识别方法
CN112910797B (zh) * 2021-01-20 2023-04-11 中国科学院计算技术研究所 基于特征匹配的i2p流量识别方法及系统
CN113794731B (zh) * 2021-09-17 2023-05-02 工银科技有限公司 识别基于cdn流量伪装攻击的方法、装置、设备和介质
CN114157713B (zh) * 2021-10-09 2023-06-16 北京邮电大学 一种捕获隐藏服务流量的方法和系统
CN114124463B (zh) * 2021-10-27 2023-05-16 中国电子科技集团公司第三十研究所 基于网络行为特征的暗网加密应用服务识别方法及系统
CN114363353A (zh) * 2021-10-27 2022-04-15 北京邮电大学 一种比特币隐藏服务的匿名通信流量的识别方法和装置
CN114124468B (zh) * 2021-10-29 2023-06-09 中国电子科技集团公司第三十研究所 基于多协议联合分析的i2p通信流量检测方法及装置
CN114499983B (zh) * 2021-12-28 2023-05-23 北京六方云信息技术有限公司 Tor流量检测方法、装置、终端设备及存储介质
CN115002045B (zh) * 2022-07-19 2022-12-09 中国电子科技集团公司第三十研究所 一种基于孪生网络的暗网站点会话识别方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106330611A (zh) * 2016-08-31 2017-01-11 哈尔滨工业大学(威海) 一种基于统计特征分类的匿名协议分类方法
CN108881306A (zh) * 2018-08-08 2018-11-23 西安交通大学 一种基于数据包大小序列的加密流量分析防御方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9282135B2 (en) * 2010-10-29 2016-03-08 Israel L'Heureux Enhanced computer networking via multi-connection object retrieval
WO2016035083A2 (en) * 2014-09-06 2016-03-10 Andriani Matthew Non-disruptive ddos testing

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106330611A (zh) * 2016-08-31 2017-01-11 哈尔滨工业大学(威海) 一种基于统计特征分类的匿名协议分类方法
CN108881306A (zh) * 2018-08-08 2018-11-23 西安交通大学 一种基于数据包大小序列的加密流量分析防御方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Tor anonymous traffic identification based on gravitational clustering;Hongwei Li;《Peer-to-Peer Networking and Applications volume》;20170616;全文 *
匿名通信流量识别与分析技术研究;何高峰;《万方》;20141231;正文"第2章 匿名通信流量在线识别技术" *

Also Published As

Publication number Publication date
CN110519298A (zh) 2019-11-29

Similar Documents

Publication Publication Date Title
CN110519298B (zh) 一种基于机器学习的Tor流量识别方法及装置
US10110633B2 (en) Method, a device and computer program products for protecting privacy of users from web-trackers
CN107465651B (zh) 网络攻击检测方法及装置
CN102571547B (zh) 一种http流量的控制方法及装置
Xia et al. Mosaic: Quantifying privacy leakage in mobile networks
Farnan et al. Poisoning the well: Exploring the great firewall's poisoned dns responses
CN107465648A (zh) 异常设备的识别方法及装置
TW202013234A (zh) 資料處理方法、設備以及儲存媒介
WO2017049042A1 (en) Identifying phishing websites using dom characteristics
US9021085B1 (en) Method and system for web filtering
CN104184713A (zh) 终端识别方法、机器识别码注册方法及相应系统、设备
Krupp et al. Linking amplification DDoS attacks to booter services
US20190019222A1 (en) User/group servicing based on deep network analysis
US11790016B2 (en) Method, device and computer program for collecting data from multi-domain
CN106470204A (zh) 基于请求行为特征的用户识别方法、装置、设备及系统
JP2017534964A (ja) パスワード保護質問設定方法及び装置
US20220141252A1 (en) System and method for data filtering in machine learning model to detect impersonation attacks
Nguyen et al. DGA botnet detection using collaborative filtering and density-based clustering
Sharma et al. An intrusion detection system for detecting denial-of-service attack in cloud using artificial bee colony
Edwards et al. Analyzing and modeling longitudinal security data: Promise and pitfalls
CN108199878B (zh) 高性能ip网络中个人标识信息识别系统及方法
KR101293954B1 (ko) 우회 접속을 탐지하는 장치 및 방법
WO2020208429A1 (en) System and method to find origin and to prevent spread of false information on an information sharing systems
Avdoshin et al. Bitcoin users deanonimization methods
CN112449371A (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
GR01 Patent grant
GR01 Patent grant