当前位置: 首页 > 专利查询>东南大学专利>正文

一种基于特征选择的Tor隐藏服务流量识别方法技术

技术编号:35213806 阅读:28 留言:0更新日期:2022-10-15 10:28
本发明专利技术设计了一种基于特征选择的Tor隐藏服务流量识别方法。该方法通过构建基于云服务器的隐藏服务流量采集系统来完成Tor版本3隐藏服务流量采集与数据预处理,通过设计一种特征选择算法来为不同识别模型构建最优特征子集。隐藏服务流量采集与数据预处理主要包括构建基于云服务器的流量采集系统、Tor隐藏服务流量采集、Tor隐藏服务流量数据预处理。特征选择算法以mRMR算法为基础通过改善相关冗余的估计误差与减少无关冗余的负面影响来为不同的识别模型构建最优特征子集,从而在保证识别准确率与误报率的前提下降低识别模型的实际部署开销。部署开销。部署开销。

【技术实现步骤摘要】
一种基于特征选择的Tor隐藏服务流量识别方法


[0001]本专利技术涉及一种基于特征选择的Tor隐藏服务流量识别方法,属于网络空间安全领域,具体应用于在Tor网络中针对版本3的隐藏服务进行网络流量识别。

技术介绍

[0002]匿名网络是一种采用数据转发、内容加密、流量混淆等措施来隐藏通信内容及关系的通信网络。Tor是在实际部署中最流行的匿名通信网络,它为隐藏服务的发展提供了基础。Tor不仅采用三跳加密代理机制保护了用户的匿名性,而且结合分布式哈希表、隐藏服务目录服务器技术保护了隐藏服务站点的匿名性。然而,隐藏服务在为用户提供匿名性的同时,也为网络违法犯罪提供了空间。一方面,隐藏服务被不法分子用于搭建匿名市场实现匿名交易、搭建匿名论坛进行盗版内容分发等;另一方面,隐藏服务被黑客用于部署服务器来销售恶意软件或发起DDoS等网络攻击。
[0003]业界和学界对上述隐藏服务带来的安全问题十分关注,并且从不同的角度提出方案来应对这个问题。有的工作尝试将表面网用户行为与隐藏服务用户行为建立关联来对隐藏服务进行分析,有的工作从隐藏服务协议漏洞分析角度来实现隐藏服务的去匿名化。然而由于这些方法通常需要部署洋葱路由作为前提,因此存在一定的实现难度。由于Tor中混淆技术的进步,一些工作中的方法不再适用于最新版本3的Tor场景。除此之外,在网络的骨干节点或网关处采用人工智能方法对访问Tor隐藏服务的流量进行识别与拦截已经成为一种保障网络安全、应对Tor隐藏服务的有效方法。
[0004]网络流量识别是一种有效的增强网络可控性的技术。它以网络流为对象,将每一条流识别为是访问某个网站、属于某种应用程序或某种协议类型的流量。网络管理员可以通过网络流量识别来分析带宽需求高的流量类型,从而更好地进行服务质量控制;也可以识别恶意流量来保护网络安全;还可以识别访问钓鱼网站等恶意站点的流量来保护用户的财产安全。多样的应用场景使得网络流量识别在网络安全、网络优化、网络管理等领域展现出了强大的潜力。
[0005]一些学者已经开展了Tor匿名网络中流量识别的相关研究。有些工作为流量识别设计新的分类模型;有些工作提出新的特征帮助分类模型获得更多有效信息。然而,当前针对Tor隐藏服务的流量识别还存在两点不足。第一,Tor版本3的隐藏服务流量采集是困难的。由于Tor中隐藏服务的域名不公开,导致隐藏服务域名获取困难。由于隐藏服务对域名申请不设限制,导致大量隐藏服务存活周期短、变化频繁,提高了隐藏服务流量采集的难度。由于2021年隐藏服务完成了向版本3升级,版本2的隐藏服务域名被完全弃用,导致缺乏最新版本3的隐藏服务流量数据集。第二,针对Tor隐藏服务流量识别的任务,如何构建最优特征子集是一个挑战。前人工作已经针对Tor流量识别提出了大量有意义的特征。特征数量的增加导致模型在训练和使用中计算开销的增加。此外,针对不同的识别任务与分类器,特征的有效性是存在差异的。研究最优特征子集的构建能够选择出有效的特征,为识别工作提供指导。
[0006]针对上述问题,本专利技术提出了一种基于特征选择的Tor隐藏服务流量识别方法,可以在保障识别准确率与误报率的前提下,有效减少特征的数量,降低模型实际应用的开销。本专利技术包括Tor隐藏服务流量采集与数据预处理、Tor隐藏服务流量的识别两个步骤。在Tor隐藏服务流量采集与数据预处理步骤中,包含一种基于云服务器的Tor隐藏服务流量采集方法,可以模拟用户访问Tor隐藏服务并自动捕获流量保存于云服务器中。在Tor隐藏服务流量的识别步骤,包含一种两阶段启发式特征选择算法,通过结合最小冗余最大相关(mRMR)与信息增益(IG)的方法来降低特征间冗余估计的误差,实现有效的特征选择。

技术实现思路

[0007]本专利技术以Tor匿名网络为研究场景,针对用户通过Tor客户端访问隐藏服务的流量识别问题展开研究。在对Tor版本3隐藏服务的流量进行采集与分析的基础上,提出了一种基于特征选择的Tor隐藏服务流量识别方法,在Tor隐藏服务流量识别中能够在保障准确率与误报率的同时有效地减少特征数量、降低模型落地部署的开销。
[0008]为了实现上述目标,本专利技术的技术方案如下:一种基于特征选择的Tor隐藏服务流量识别方法,所述方法包括以下2个主要步骤:
[0009]S1:Tor隐藏服务流量采集与数据预处理;
[0010]S2:Tor隐藏服务流量的识别。
[0011]其中,S1:Tor隐藏服务流量采集与数据预处理。该过程分为3个步骤:构建基于云服务器的流量采集系统、Tor隐藏服务流量采集、Tor隐藏服务流量数据预处理。
[0012]S11:构建基于云服务器的流量采集系统。本方法构建的隐藏服务流量采集系统如图1所示,具体过程分为4个步骤:
[0013](1)构建流量生成端。本过程具体步骤如下:
[0014]a)安装脚本控制浏览器自动地、按顺序地对隐藏服务域名进行访问;
[0015]b)根据浏览器的访问状态,向流量采集端发送访问状态和操作码。
[0016](2)部署流量采集端。本过程具体步骤如下:
[0017]a)选定一台位于特定地理位置的云服务器作为Tor代理;后续,可根据流量采集需求,更换位于不同地理位置的云服务器;
[0018]b)安装Tor代理程序,提供访问Tor网络的服务;
[0019]c)安装脚本接收流量生成端的访问状态和操作码,并执行操作。
[0020](3)选定网站访问端。本过程具体步骤如下:
[0021]a)安装脚本,从域名汇总站点收集大量隐藏服务域名;
[0022]b)从上一步搜索结果中根据域名长度筛选56字符的版本3域名;
[0023]c)通过流量采集系统检查域名的有效性与域名内容,去除重复域名;
[0024]d)将去重后的所有隐藏服务域名作为访问目标。
[0025](4)连通性测试:按照步骤(1)~(3)在完成构建流量生成端、部署流量采集端、选定网站访问端之后,测试隐藏服务流量采集系统的连通性。若流量生成端的浏览器能够连接到流量采集端的Tor代理,并成功访问隐藏服务,则说明流量采集系统构建完成。
[0026]S12:Tor隐藏服务流量采集。本过程具体分为3个步骤:运行脚本生成访问流量、运行脚本自动采集流量、捕获隐藏服务流量并存储:
[0027](1)运行脚本生成访问流量。算法1展示了流量生成端脚本的流程,具体步骤如下:
[0028]a)模拟真实用户使用浏览器时的各种行为,如输入域名、点击、搜索等操作来访问隐藏服务,实现流量的自动生成;
[0029]b)根据访问状态(域名、访问时间),向流量采集端发送访问状态和操作码(START、STOP、EXIT)。
[0030][0031](2)运行脚本自动采集流量。算法2展示了流量采集端脚本的流程,具体步骤如下:
[0032]a)接收流量生成端的访问状态和操作码;
[0033]b)根据操作码选择开始采集、停止采集并存储、本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于特征选择的Tor隐藏服务流量识别方法,其特征在于,所述方法包括以下2个步骤:S1:Tor隐藏服务流量采集与数据预处理;S2:Tor隐藏服务流量的识别;其中,步骤S1分为3个步骤,S11:构建基于云服务器的流量采集系统、S12:Tor隐藏服务流量采集、S13:Tor隐藏服务流量数据预处理;步骤S2分为3个步骤:S21:构建Tor隐藏服务流量的特征全集、S22:设计特征选择算法、S23:Tor隐藏服务流量识别。2.根据权利要求1所述的基于特征选择的Tor隐藏服务流量识别方法,其特征在于,S11:构建基于云服务器的流量采集系统,具体过程分为4个步骤:(1)构建流量生成端,具体步骤如下:a)安装脚本控制浏览器自动地、按顺序地对隐藏服务域名进行访问;b)根据浏览器的访问状态,向流量采集端发送访问状态和操作码;(2)部署流量采集端,具体步骤如下:a)选定一台位于特定地理位置的云服务器作为Tor代理;后续,可根据流量采集需求,更换位于不同地理位置的云服务器;b)安装Tor代理程序,提供访问Tor网络的服务;c)安装脚本接收流量生成端的访问状态和操作码,并执行操作;(3)选定网站访问端,具体步骤如下:a)安装脚本,从域名汇总站点收集大量隐藏服务域名;b)从上一步搜索结果中根据域名长度筛选56字符的版本3域名;c)通过流量采集系统检查域名的有效性与域名内容,去除重复域名;d)将去重后的所有隐藏服务域名作为访问目标;(4)连通性测试:按照步骤(1)~(3)在完成构建流量生成端、部署流量采集端、选定网站访问端之后,测试隐藏服务流量采集系统的连通性,若流量生成端的浏览器能够连接到流量采集端的Tor代理,并成功访问隐藏服务,则说明流量采集系统构建完成。3.根据权利要求1所述的基于特征选择的Tor隐藏服务流量识别方法,其特征在于,S12:Tor隐藏服务流量采集,具体分为3个步骤:运行脚本生成访问流量、运行脚本自动采集流量、捕获隐藏服务流量并存储;(1)运行脚本生成访问流量,算法1展示了流量生成端脚本的流程,具体步骤如下:a)模拟真实用户使用浏览器时的各种行为,如输入域名、点击、搜索等操作来访问隐藏服务,实现流量的自动生成;b)根据访问状态(域名、访问时间),向流量采集端发送访问状态和操作码(START、STOP、EXIT);
(2)运行脚本自动采集流量,算法2展示了流量采集端脚本的流程,具体步骤如下:a)接收流量生成端的访问状态和操作码;b)根据操作码选择开始采集、停止采集并存储、退出程序三种操作;c)存储的文件名以访问状态中“域名+访问时间”的格式命名;(3)捕获隐藏服务流量并存储,为了保证采集到的流量的有效性,记录流量采集端Tor代理软件使用的端口号并以这个端口号为目标进行流量采集,为了方便后续处理,记录访问每个隐藏服务时产生的HTTP状态码,用于S13步骤的数据预处理;问每个隐藏服务时产生的HTTP状态码,用于S13步骤的数据预处理;4.根据权利要求1所述的基于特征选择的Tor隐藏服务流量识别方法,其特征在于,S13:Tor隐藏服务流量数据预处理,为了保证流量的有效性,经过步骤S12获取到的原始流量需要经过预处理步骤才能作为有效的数据集用于识别,具体分为3个步骤:流量过滤、设置标签、欠采样;(1)流量过滤,原始流量中可能存在背景流量或无效流量影响模型训练,因此需要对流量进行过滤,具体分为3个步骤:a)将原始流量数据根据五元组(源IP地址、源端口号、目的IP地址、目的端口号、传输层协议)划分为不同的流,五元组的源IP地址与目的IP地址、源端口号与目的端口号互换后相同的仍认为属于相同的五元组;b)根据流所属五元组的IP地址进行判断,将服务器其他应用产生的流量标记为无关背景流量并过滤掉;c)根据每个流量样本访问时返回的HTTP状态码记录进行判断,将所有返回4xx、5xx状态码的流量与超时无法成功加载页面的流量标记为无效流量并过滤掉;(2)设置标签,有监督机器学习需要样本具有正确的标签才能完成训练,因此需要为采
集的流量数据设置标签,具体分为3个步骤:a)根据S11步骤(3)中获取到的域名数量,设置实验中所使用的隐藏服务域名数目n;b)按照首字母顺序将0至n

1的标签与实验中的每个隐藏服务建立对应关系;c)根据S12的步骤(2)中储存文件的文件名得到流量样本的域名,并根据流量样本的域名与对应关系将S13步骤(1)中所得的每个样本设置正确的标签;(3)欠采样,由于Tor隐藏服务不稳定,各个域名所采集的样本数目存在差异,因此需要欠采样来平衡各个域名的样本数目,具体分为3个步骤:a)统计n个隐藏服务域名各自的样本数量,设置C为每个域名所需的最小样本数量;b)选择样本数目大于C的所有隐藏服务类别,并计算这些隐藏服务类别中样本数目最小的数目C
min
;c)对于样本数目大于C
min
的隐...

【专利技术属性】
技术研发人员:许昱玮黄信旭杨华斌汪磊胡晓艳程光
申请(专利权)人:东南大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1