第一届中国网络攻防与系统安全会议(NADSS2010)
· PAGE 2 · 通 信 学 报 第26卷
第一届中国网络攻防与系统安全会议(NADSS2010)
Tor主动测量的设计与分析
王啸1, 2,时金桥1, 2,贺龙涛1, 2 ,郭莉1, 2,谭庆丰1, 2
(1. 中国科学院计算技术研究所 信息安全研究中心,北京 100190; 2. 信息内容安全技术国家工程实验室 100190)
摘 要:Tor是目前世界上应用最广泛的匿名通信系统,它以分布于全球各地的志愿者运行的中继节点为基础向用户提供匿名服务。本文设计开发了一个Tor主动测量系统,并对所收集到的数据进行了较深入的分析工作,其与以往此类系统的主要不同点体现在:本系统可以对以抗审查为目的的Tor网桥节点进行有效的收集与测量工作;以收集到的大量Tor网络测量数据为基础,本文发现了Tor系统潜在的匿名性威胁并提出了规避办法。另外,文中所设计的Tor主动测量系统的部分模块具有较高的通用性,可用于其它多种网络攻防场景中。
关键词:Tor;匿名通信;主动测量;共谋节点
中图分类号: 文献标识码:A 文章编号:XXXX
The Design and analysis of Active Tor Measurement
WANG Xiao1, 2, SHI Jin-qiao1, 2, HE Long-tao1, 2, GUO Li1, 2, TAN Qing-feng1, 2
(1. Information Security Research Center, Institute of Computing Technology, Chinese Academy of Sciences, Beijing 100190, China; 2. Chinese National Engineering Laboratory for Information Security Technologies, Beijing 100190, China)
Abstract: Tor is the most popular anonymous communication system in the world. It provides anonymity service to its users by relaying users’ traffic through many relay nodes provided by volunteers all around the globe. An active measurement system for Tor is introduced in this paper and it’s different from current Tor measurement systems in two ways: our system can be used to measure tor bridges which are introduced for the purpose of blocking-resistance; based on the data we collected by the measurement system, some anonymity threats can be detected and avoided in advance. Besides, some modules of this active Tor measurement system can be adopted by many applications in network attack and defense field as general modules.
Key words: Tor; anonymous communication; active measurement; colluding nodes
1 引言
随着互联网的迅猛发展,互联网安全和隐私也越来越受到人们的重视。作为安全与隐私保护技术的重要组成部分,匿名通信系统的研究也越来越受到了人们的普遍关注。早在1981年,David Chaum最先在其论文[1]中提出MIX匿名机制,随后越来越多的匿名系统相继被开发并投入应用。如用于保护电子邮件的MIX衍生系统Mixmaster[2]和Mixminion[3]等,基于DC-Net[4]与广播机制的CliqueNet及Herbivior[5]、K-anonymity[6]、P5[7]、和Hordes[8]等,应用较为广泛的低时延匿名通信系统Crowds[9]、WebMIX[10]、Onion Routing及Tor[11]等。其中用户数目最多、研究最为集中的匿名通信系统是Tor (The Second-Generation Onion Routing)。
Tor是由Roger Dingledine等人开发的一款基于多重加密技术的低时延匿名通信系统,其以全球志愿者运行的大量中继服务节点为基础构建了一个庞大的分布式匿名通信系统。在任一时刻,Tor都有着近10万的用户同时在线[12]、2000多志愿者同时为这些用户提供Tor中继服务[13]。为了更好地了解Tor网络,掌握其分布式结构所独有的特点,针对Tor网络的测量就显得尤为必要。此前Tor测量相关工作大都基于Tor公开路由节点信息,揭示了Tor网络的延时、吞吐量、带宽、中继服务节点的数目、地理分布、存活时间等特性,未能对测量数据进行更进一步的深入分析与挖掘。另一方面,由于Tor网桥节点[14]的非公开性,目前针对Tor网桥节点的收集与测量工作也较为欠缺。
本文介绍了一个Tor主动测量系统的设计与实现方案,同时对此系统所收集到的数据进行了较为深入的分析工作,与以往的同类系统相比主要有以下两点贡献:提出了Tor网桥节点的收集方案,保障了对Tor网桥节点测量的可能性;对收集得到的Tor网络数据进行了较为深入的测量与分析,其结果有较强的实用价值,可用于发现Tor网络潜在威胁,进一步提高其匿名性。本文第2章首先对Tor匿名通信系统及其工作方式进行了简要说明;随后在第3章介绍了国内外学者在Tor网络测量方面所做的工作及取得的成果;本文第4章提出了一种Tor主动测量系统的设计与实现,重点介绍了基于Tor的身份变换模块,正是这一模块使得批量收集Tor网桥节点变为可能;基于Tor主动测量系统所获取的Tor网络信息,第5章考察了Tor网桥节点的连续在线时长分布规律,同时也提出了一种发现Tor及规避Tor网络潜在威胁、提高Tor网络匿名性的方法;第6章总结全文并指明了本研究所需要的未来工作。
2 Tor简介
本章简要介绍Tor网络的基本结构和工作原理,说明对Tor网络进行测量工作的必要性及其重要意义。
Tor是一个分布式匿名通信系统,其网络结构如图1所示。Tor网络主要有以下几个重要组成部分:Tor普通路由节点是Tor网络的关键组成部分,它由全球大量运行Tor软件的志愿者提供,是Tor建立匿名通信链路并提供匿名通信服务的基础;目录服务器(Directory Server)是整个网络的核心部分,它负责汇总Tor网络的运行状态并向Tor用户客户端发布Tor路由节点列表;Tor客户端代理可以从Tor路由节点中选取部分节点构建匿名链路并通过此匿名链路与远端主机进行通信。在使用Tor匿名通信系统时,Tor客户端软件会自动从目录服务器下载最新的Tor路由节点列表(Consensus),从此列表中选择三个节点建立匿名链路,这三个节点依次被称为Tor入口路由、混合路由与出口路由。Tor使用分层加密/解密的方式在构成匿名链路的各路由节点间进行数据传输,保障了数据的机密性。由于匿名链路的使用,Tor匿名通信系统可以向其用户提供发送者匿名(Sender Anonymity)与通信关系匿名(Relationship Anonymity)等服务,即:任何第三方及消息接收者都不能将某一消息与消息的真实发送者相关联,任何第三方都不能将消息发送方与消息接收方相关联。在图1中,Tor入口节点知道连接由哪一Tor用户发起,却不能知晓连接的最终目的地址;而Tor出口节点知道连接的目的地址,却不能知晓连接的发起者是谁;Tor用户的通信另一方、任何第三方都不能将Tor用户与某一特定信息相关联,也不能将Tor用户与其通信另一方相关联。
在实际中,为了提高Tor匿名通信系统的可用性,Tor还引入了网桥(Tor bridge)机制[14]。当Tor目录服务器或普通路由节点不能被直接访问时,Tor客户端无法直接接入网络获取匿名服务,在这种情况下,Tor用户可通过邮件或网页请求等方式获取网桥节点,并藉由网桥节点间接接入Tor网络获取匿名服务。网桥节点是一类特殊的Tor路由节点,它不被包含在Tor目录服务器所公开发布的普通路由节点列表中,因而不易被网络监管机构发现并实施访问限制;另一方面,Tor网桥节点可被用作Tor匿名链路中的入口节点,使Tor客户端得以通过Tor网桥间接接入Tor网络。目前,Tor通过自动回复email、网页请求、社交网络等方式发布Tor网桥信息,为了避免网络监管机构对Tor网桥的枚举,Tor每次仅向特定用户发布3个网桥地址,且同一IP或同一email地址的用户在一段时间内只能得到3个相同的Tor网桥,这一设计大大地提高了枚举Tor网桥并获得其完整列表的难度。下文将Tor网桥节点与普通路由节点统称为Tor中继节点。
作为目前应用最广泛的匿名通信系统,Tor所能提供的匿名性及对其匿名性的攻击引发了人们大量的关注。Steven J. Murdoch等人在文献[15]中指出,利用Tor中继节点对多个TCP连接进行轮询式调度服务的特点,任何第三方都可以有意地与Tor中继节点进行特定的交互,从而影响此节点对其它TCP连接的响应时间,进而以网络延迟为特征标识Tor通信链路及匿名通信双方,破坏其匿名性;Zhen Ling等人在文献[16]中指出只要同时控制了一条Tor匿名通信链路的入口节点与出口节点,通过人为地在一端对通信流量添加特定的指纹特征,攻击者总能在另一端检测到这一特征并最终将Tor用户与其通信另一方相关联,这一检测Tor通信双方关联性的方法可以达到近乎100%的正确率,且几乎没误检;另一方面,Kevin Bauer等的实验[17]表明,通过声明高带宽、长时间在线等信息,低配置的Tor中继节点也能将自己伪装为高配置中继节点并增大其被Tor客户端选中作为匿名链路中某一跳的机会,使用占Tor中继节点总数9%的低配置中继节点, 即可诱使Tor网络中33%到50%的匿名链路选取这些节点作为其出、入口节点。因而我们可以看出,作为主流的匿名通信系统,Tor所提供的通信匿名性受到了来自多方面的威胁,并非完全可靠。尤其是在Tor客户端同时选中了攻击者提供的恶意节点作为其匿名链路的出口与入口节点的情况下,其匿名性极易受到破坏。下文将由攻击者控制的多个Tor中继节点称为共谋节点,将可疑由同一用户或组织控制的Tor中继节点称为可疑共谋节点。
3 Tor测量与分析相关工作
早在2008年,周挺等人在文献[18]中已对Tor匿名通信系统进行了主动测量,得出了其中继节点规模与状态、生存时间、地理分布、带宽、链路吞吐量和延时等关键参数,并在此基础上分析这些参数对Tor的一些关键属性(匿名性与可用性)的影响,并提出对Tor设置以及设计的改进意见;在Tor官方网站域名下有一Tor测量子网站[13],它对Tor网络进行了实时测量并以图表形式描绘出了Tor网络规模、用户规模、Tor中继节点所运行的平台、带宽等信息,在其所发表的研究报告[19]中,作者详细介绍了在Tor测量研究中所使用的方法,并提供了2006年到2009年间对Tor网络的测量报告。另外,Mike Perry等人在其文献[20]中开发并介绍了一个名为TorFlow工具,它提供了一个函数库及一系列的相关工具,目的在于测量Tor中继节点以获取其可靠性、完整性等特性。
然而,此前工作大都关注于对Tor公开路由节点的测量,且对测量结果的分析都仅仅停留在揭示Tor网络特性方面,没有对测量数据进行进一步的深入分析。实际上,目前仍然缺乏对Tor网桥的实质性测量工作,Tor官方网站测量子网站所提供的Tor网桥相关信息较为有限,不足以表征Tor网桥节点的服务特性。为了Tor的抗审查机制能够更好运作,我们必须要了解Tor网桥节点的服务特性:如网桥节点的地理分布、动态IP地址使用情况、节点连续在线时长等,并根据这些特性调整Tor网桥节点的分发策略及频度,借以提高其可用性。另外,如上文所述,在Tor网络中,只要有同一用户或组织同时控制了Tor某匿名链路上的出口及入口节点,其便可以对Tor的匿名性实施共谋攻击,以近乎100%的概率将Tor用户与其通信另一方相关联,破坏Tor用户匿名性,可见,发现由攻击者运行的Tor共谋节点,避免在选择节点建立匿名链路的时候使用它们是一亟待解决的问题。因此,开发一套完整的Tor测量工具并在此基础上进行深入的数据分析,发现Tor网络潜在威胁是十分必要的。
下文将介绍一个Tor主动测量系统,它可以高效地收集Tor公开路由节点列表及Tor网桥节点,并在此基础上进行一定的数据分析及挖掘工作。
4 Tor主动测量系统及分析
Tor主动测量系统概述
图2简要描述了Tor主动测量系统的结构,此系统使用python语言开发,可用于收集并分析Tor公开路由节点及网桥节点信息,为进一步加深对Tor网络特性的了解、发现潜在威胁提供依据。
如图2所示,此系统分有三大部分——节点收集部分、数据维护部分与数据处理部分。节点收集部分用于收集Tor公开路由节点列表及网桥信息,并将之存储于数据库中,其设计难点在于如何收集大量的Tor网桥节点信息,本文将在下一节对此进行详细介绍。数据维护部分负责Tor节点数据的存储与更新,此部分使用MySQL存储数据,其节点验证与跟踪模块负责对所收集到的Tor节点进行验证,并跟踪这些节点的运行状况更新数据库中相关信息。数据分析部分从数据库中获取数据并做进一步的分析,可用于揭示Tor网络特性,及时发现其潜在威胁,本文将在第5章对此进行简要介绍。
此系统自上线以来,收集了此后所有的Tor公开路由节点列表文件(consensus文件)以及大量的Tor网桥节点,为对Tor系统的进一步分析提供了数据基础。
基于Tor的身份变换模块
Tor普通路由节点有着公开的完整列表,Tor目录服务器会周期性(1小时)地对此列表进行更新并对外发布,因而对它的收集工作较为容易。与Tor普通路由节点不同的是,作为Tor抗审查机制的重要组成部分的Tor网桥不存在有完整的列表信息,普通用户根本无法得到大量网桥节点,因而也就无法对网桥节点的特性进行测量。正常情况下,Tor通过email自动回复或网页形式发布网桥信息。Tor以用户email地址或IP地址来标识网桥请求者的身份信息,同一email或同一客户端IP地址段的用户在一定时间内只能得到相同的3个Tor网桥,这一发布Tor网桥的方式有效地提高了枚举Tor网桥的难度,从而限制了网络监管机构对网桥的管控能力,提高了其系统的可用性。但也正由于同样的原因,对Tor网桥的测量工作由于缺乏足够数量的网桥数据支持,变得相对较为困难。为了解决Tor网桥数据收集的问题,本文开发了一个身份变换模块,此模块基于Tor匿名通信系统,我们称之为基于Tor的身份变换模块。
为了收集大量的Tor网桥,必须有一种方法来“欺骗”Tor网桥发布服务器,使同一用户可以以不同的身份出现。在此使用Tor匿名通信系统作为代理来访问Tor网桥发布服务器,其原因有二:第一,在使用Tor访问目标网站时,目标网站仅仅能记录Tor匿名链路中的出口节点的IP地址,因而在请求Tor网桥时,用户所表现出的是Tor某一匿名链路出口节点的身份;第二,Tor拥有着大量的出口节点,在实际中,通过变换出口节点并使用不同的Tor匿名链路的方法,用户可以表现出大量的不同身份,从而得以获取较多的Tor网桥节点信息。
在系统实现中使得用了Tor为用户提供的两个通信接口——socks代理接口及Tor控制接口[21]。socks代理接口是Tor提供给用户的网络匿名访问接口,将客户端程序设置为使用此代理接口访问网络时,客户端程序的所有通信都将通过Tor匿名链路中转传输;Tor控制接口是Tor提供给用户的用以了解Tor程序状态、控制Tor程序运行的一个应用程序接口,用户可以通过编程控制Tor程序的运行,包括选择特定中继节点建立匿名通信链路、分配特定的用户请求经由特定的匿名通信链路传输等。在本系统中,Tor网桥收集模块通过使用Tor匿名通信系统所提供的socks代理接口来访问Tor网桥发布页面(),Tor的身份变换模块通过Tor控制接口来控制Tor匿名链路的建立与分配,以达到变换用户身份的目的。身份变换模块使用TorCtl库[20]编程实现对Tor的控制,选择不同的Tor中继节点作为出口节点建立匿名通信链路,并将每个网桥请求分发由不同的匿名通信链路传输,从而达到变换身份以获取大量Tor网桥的目的。
图3示例程序的运行结果表明,本文开发的基于Tor的身份变换模块可被应用于实际中以“欺骗”服务器,向服务器提供虚假用户IP信息。此示例程序将Tor匿名通信软件作为代理访问Internet网址
此外,基于Tor的身份变换模块不仅可用于对Tor网桥的收集中,还可以用于其它需要身份变换的情景中,如在线暴力破解SSH密码、网站自动注册机、恶意投票系统、突破RapidShare[22]免费用户下载配额限制等方面。
Tor 网桥测量理论分析
为了分析基于Tor的身份变换模块对Tor网桥收集工作的影响,本节将使用数学方法对它进行量化分析,阐明其在网桥收集工作中所发挥的作用。
考虑在某一网桥收集阶段中,Tor网桥发布服务器所维护的网桥总数为N,Tor网络中可用作出口节点的中继节点数目为M,即Tor网桥收集模块可以表现出的不同身份数目为M。每当Tor网桥发布服务器收到一个新身份用户的网桥请求,它都会从N个网桥中随机选择3个网桥发布给此用户使用。在此,Tor网桥收集模块所关注的正是其网桥收集能力,即在这一阶段中可以通过身份变换模块收集到的Tor网桥数目。可以看出,这是一个典型的Occupancy Problem[23],Tor网桥收集模块可以收集到的Tor网桥数目B的概率如公式1所示,其期望值如公式2所示。
(1)
(2)
根据Tor测量网站提供的数据[13],Tor匿名网络中同时在线的网桥数目为500左右,不妨假设其中一半的网桥通过网页形式发布一半通过自动邮件方式发布;另一方面,Tor匿名网络中同时在线的普通路由节点数目为1600个左右,其中有近42%[18]的节点适合用作出口节点。在公式2中,取网桥总数N为250,网桥收集模块可以表现出的身份数目M为650,可得到Tor网桥收集模块所收集到的Tor网桥数目的期望为。即,此方法几乎能做到对以页面形式发布的Tor网桥节点的完全枚举。可以看出,基于Tor的身份变换模块的Tor网桥收集方法具有较强的实用性,其收集的Tor网桥数目较多也较为全面,可以作为Tor测量工作的重要数据来源之一。
5 Tor主动测量数据分析
节点生存时间
Tor中继节点的在线时长与其网络可用性息息相关,尤其是在使用Tor网桥的情况下。用户正在使用的某一Tor网桥节点的离线就意味着这一用户不再可以使用它作为网络接入点,直接影响Tor系统的可用性。本节结合第4章所介绍的Tor主动测量系统收集到的数据以及Tor测量子网站所提供的公开数据[13],考察了随机选取的3000个Tor网桥节点的连续在线时长,结果如图4所示。
从图4可见,大部分(50%以上)Tor网桥节点的连续在线时长分布于12至24小时之间;3%的网桥节点连续在线时长小于1小时;%的节点连续在线时长极大——一周以上。实验数据表明,Tor网桥节点的平均连续在线时长大约为68小时。了解Tor网桥节点连续在线时长的分布有助于Tor网桥发布服务器依据需要调节网桥分发策略及频度,更大地提高Tor系统可用性。
可疑共谋节点的发现
使用第4章所介绍的Tor主动测量系统所收集与维护的Tor中继节点数据,本章将介绍一种检测Tor可疑共谋节点的方法,以便发现Tor网络潜在威胁,提高其网络匿名性。
正如前文所述,由同一用户或组织控制的Tor中继节点如果出现在了同一匿名链路的入口与出口节点上,它将有能力将Tor用户与其通信另一方相关联,从而破坏Tor网络的匿名性。为了检测可疑的Tor共谋节点,在此做出如下常识性假设:同一用户或组织控制的不同Tor中继节点间一定存在着较为相似的配置,如节点昵称、Tor软件版本、服务端口、带宽分配、服务时间等。通过对这些特性相似性的分析,即可以检测出Tor网络中的可疑共谋节点并在选择节点建立匿名链路的过程中避免同时使用它们†。
本文选取中继服务节点昵称和软件版本号为特征,首先分别计算各个中继节点间的昵称及软件版本相似度,而后综合考虑这两个因素并得到各中继节点间的节点共谋可疑度,进而依据节点共谋可疑度进行聚类分析,检测可疑共谋节点组。
节点昵称
大部分(85%以上)Tor用户在将Tor配置为一中继服务节点时,都会指定一个长度为1-19的字符串作为相应的节点昵称;若节点昵称未指定,Tor将 “Unnamed”命名此中继节点。由于Tor中继节点的昵称大部分为人工指定,有着较强的主观性,同一用户或组织极易给其所运行的多个Tor中继节点指定相似的昵称,因而本文将Tor中继节点的昵称作为节点共谋可疑度的考察对象之一。另外,依据节点昵称的相似性来衡量两个节点间的相关性的方法在蠕虫检测、僵尸网络检测等领域也有着较多应用[24,25]。
节点昵称相似度:假设两个Tor中继节点R和R’的昵称分别为NR和NR’,则这两个节点间的昵称相似度定义如公式3所示。其中,sj-w(NR,NR’)为字符串NR和NR’间的Jaro-Winkler相似度[26, 27],其定义如公式4所示。在公式3中,如果中继节点R和R’都指定了节点昵称,则取其昵称间的Jaro-Winkler相似度作为节点间的昵称相似度;若R与R’中有一方未指明节点昵称(默认“Unnamed”),则将节点间的昵称相似度取值。
(4)
Jaro-Winkler相似度常被用于人名等字符串的相似性衡量中,其定义如公式4所示,它是在Jaro相似度基础上依据字符串共同前缀对相似度的进一步修正。在公式4中,sj(s,s’)为字符串s与s’间的Jaro相似度,其定义见于文献[28, 29]中;l为字符串s与s’所拥有的共同前缀的长度,一般情况下取值不超过4;p为前缀影响因子,即共同前缀对字符串相似度的修正因子,一般取值不应超过。
使用Jaro-Winkler相似度作为Tor中继节点昵称相似度的衡量算法的好处在于:此算法不仅考虑了两个节点昵称字符串自身相似性,还根据字符串昵称的共同前缀对相似度进行了修正。以昵称为“PPrivComGermany3”和“PPrivComNetherland2” 的两个Tor中继节点为例,其昵称间的Jaro相似度为,根据昵称共同前缀修正后,其Jaro-Winkler相似度为,更能体现Tor节点昵称间的相似关系。
软件版本
Tor自开发至今,其软件已经有200余个版本。本文假设同一用户或组织在挑选其Tor节点的软件版本时有着相似的爱好,各个中继节点所运行的软件版本在发布时间上相差不多。
本文将200余个已知的Tor软件版本依照软件发布时间顺序进行编号,并在此基础上定义了Tor节点间的软件相似度。
节点软件相似度:假设两个Tor中继节点R和R’所运行的Tor软件版本依照发布时间排序后的编号分别为IR和IR’ ,则这两个节点间的软件相似度定义如公式5所示。在公式5中,|I|为所考察的所有已知Tor软件版本的数目。
(5)
由公式5可知,SI具有如下特点:
1) SI取值范围为[0,1],当且仅当R与R’所运行的Tor软件版本相同时取得SI=1
2) R与R’所运行的Tor软件版本发布时间差异越大,SI越小,即其软件相似度越小
节点共谋可疑度
综合考虑Tor中继节点的昵称及软件版本信息,本小节将介绍节点共谋可疑度的概念及其实际意义。
节点共谋可疑度:两个Tor中继节点R和R’的节点共谋可疑度定义如公式6所示。
(6)
其中wN与wI分别为Tor节点昵称相似度与节点版本相似度对节点共谋可疑度的贡献值,且wN+wI=1。
在实际应用中,若两个节点间的共谋可疑度大于某一阈值δ,则Tor有足够的理由将其视为可疑共谋节点,在创建匿名链路时避免在同一链路中同时使用它们,以降低隐私泄露风险,提高通信匿名性。
可疑共谋节点组的发现
在实际中,同一用户或组织往往同时运行有多个Tor中继节点,而上文所定义的节点共谋可疑度仅能揭示两个中继节点间的共谋可疑度及同时使用它们所存在的风险,不能直接用于多个可疑共谋节点的发现。为了解决这一问题,本文将使用简单的聚类算法并结合各节点间的节点共谋可疑度进行聚类分析,从而发现可疑共谋节点组。其示意图如图5所示,可疑共谋节点组的发现有助于为Tor链路建立过程中的节点选择算法提供一定的参考依据,更进一步缩小共谋攻击的可能性。
实例分析
本小节使用从2009年9月29日至10月5日一周时间内的Tor 公开路由节点列表文件中所包含的所有Tor普通路由节点(共3789个)为数据基础,首先计算各节点间的昵称相似度与软件相似度,进而计算节点间的共谋可疑度;而后在节点间共谋可疑度基础上进行了聚类分析,得到了多个可疑共谋节点组。本实验所得到的部分可疑共谋节点组如表1所示。
从表1可以看出,使用本文所介绍的方法可以得到大量的Tor可疑共谋节点组。在实际应用中,可以把每个可疑共谋节点组中的各个节点列入Tor配置文件的同一“family”中。根据Tor选路协议[30],Tor在选择节点建立匿名链路时将避免在同一链路中使用属于同一“family”的中继节点,从而降低了隐私泄露风险,提高了通信匿名性。
6 结论及未来工作
本文介绍了一个Tor主动测量系统的设计与实现方案,同时对此系统所收集到的数据进行了较为深入的分析工作,与以往的同类系统相比主要有以下两点贡献:提出了Tor网桥节点的收集方案,保障了对Tor网桥节点测量的可能性;对收集得到的Tor网络数据进行了较为深入的测量与分析,其结果有较强的实用价值。文中为收集Tor网桥节点所开发的基于Tor的身份变换模块具有一定的通用性,可被用于多种网络攻防场景中;此外,文中的网桥节点连续在线时长统计、以节点昵称和版本为特征的Tor可疑共谋节点检测工作具有较强的实用性,可用于指导Tor网桥发布频度,发现Tor网络潜在威胁,进一步提高其可用性及匿名性。
另一方面,在Tor可疑共谋节点检测中,本文使用了节点昵称与版本号作为评价中继节点配置相似性的指标,实际上,应当结合节点昵称、Tor软件版本、服务端口、带宽分配、服务时间等多种因素,综合考虑并评价两个中继节点间配置的相关程度,这样才能使可疑共谋节点的检测结果更为准确、可靠。在Tor主动测量系统收集到更多Tor网桥信息后,测量其独有的运行规律、为Tor的网桥发布策略提供改进建议以进一步提高其可用性也将成为本研究未来的工作重点之一。
参考文献:
[1] D. Chaum. Untraceable electronic mail, return addresses, and digital pseudo-nyms[J]. Communications of the ACM, 1981, 4(2):84-88.
[2] Ulf Moeller, Lance Cottrell, Peter Palfrader, et al. Mixmaster Protocol Version 2[EB/OL]. 2003-07/2010-08-16.
[3] G. Danezis, R. Dingledine, N. Mathewson. Mixminion: Design of a type III anonymous remailer protocol[A]. IEEE Symposium on Security and Privacy[C]. IEEE CS, 2003, -15.
[4] D. Chaum. The Dining Cryptographers Problem: Unconditional Sender and Recipient Untraceability[J]. Journal of Cryptology, 1988, 1(1):65–75.
[5] Sharad Goel, Mark Robson, Milo Polte, et al. Herbivore: A Scalable and Efficient Protocol for Anonymous Communication[R]. Cornell University Computing and Information Science Technical Report, 2003.
[6] Latanya Sweeney. k-anonymity: a model for protecting privacy[J]. International Journal of Uncertainty, Fuzziness and Knowledge-Based Systems, 2002, 10(3):557-570.
[7] Rob Sherwood, Bobby Bhattacharjee, Aravind Srinivasan. P5: A protocol for scalable anonymous communication[A]. IEEE Symposium on Security and Privacy[C], 2002, -70.
[8] B. Levine and C. Shields. Hordes: A multicast-based protocol for anonymity[J]. Journal of Computer Security, 2002, 10(3):213-240
[9] M. K. Reiter, A. D. Rubin. Crowds: Anonymity for web transactions[J]. ACM TISSEC, 1998, 1(1):66–92.
[10] O. Berthold, H. Federrath, S. Kopsell. Web MIXes: A system for anonymous and unobservable Internet access[A]. Designing Privacy Enhancing Technologies: Workshop on Design Issue in Anonymity and -Verlag[C], LNCS 2009, 2000.
[11] Roger Dingledine, Nick Mathewson, Paul Syverson. Tor: the second-generation onion router[A]. Proceedings of the 13th conference on USENIX Security Symposium[C]. 2004, -21.
[12] Loesing, K. Measuring the tor network: Evaluation of client requests to the directories[R]. Tor Project, Available online: 2009.
[13] Tor Metrics Portal[EB/OL]. 2010-08-16
[14] Roger Dingledine, Nick Mathewson. Design of a blocking-resistant anonymity system (draft)[R]. 2007/2010-08-16.
[15] Steven J. Murdoch, George Danezis. Low-Cost Traffic Analysis of Tor[A]. Proceedings of the 2005 IEEE Symposium on Security and Privacy[C], 2005, -195.
[16] Zhen Ling, Junzhou Luo, Wei Yu. A new cell counter based attack against tor[A]. Proceedings of the 16th ACM conference on Computer and communications security[C], 2009, -589.
[17] Kevin Bauer, Damon McCoy, Dirk Grunwald, et al. Low-resource routing attacks against tor[A]. Proceedings of the 2007 ACM workshop on Privacy in electronic society[C], 2007, -20.
[18] 周挺. Tor匿名通信系统的测量与改进[D]. 北京邮电大学, 2009.
[19] Karsten Loesing. Measuring the Tor Network from Public Directory Information[A]. 2nd Hot Topics in Privacy Enhancing Technologies[C], 2009.
[20] Perry, M. TorFlow: Tor network analysis[R]. 2010-08-16.
[21] TC: A Tor control protocol (version 1)[EB/OL]. 2010-08-16.
[22] RapidShare[EB/OL]. 2010-08-16.
[23] Gittelsohn, A. M. An cccupancy problem[J]. Amer. Statist, 1969, 23:11-12.
[24] 王威,方滨兴,崔翔. 基于终端行为特征的IRC僵尸网络检测[J]. 计算机学报, 2009, 32(10):1980-1988.
[25] J Goebel, T Holz. Rishi: Identify bot contaminated hosts by IRC nickname eva1uation[A]. Proceedmgs of the HotBots' 07, First Workshop on Hot Topics in Understanding Botnets[C], 2007.
[26] Winkler, W. E. The state of record linkage and current research problems[R]. Statistics of Income Division, Internal Revenue Service Publication R99/04.
[27] Jaro-Winkler Distance - Wikipedia, the free encyclopedia [EB/OL]. 2010-08-16
[28] Jaro, M. A. Advances in record linkage methodology as applied to the 1985 census of Tampa Florida[J]. Journal of the American Statistical Society 84 (406): 414–20.
[29] Jaro, M. A. Probabilistic linkage of large public health data file[J]. Statistics in Medicine 14 (5-7): 491–8.
[30] Roger Dingledine, Nick Mathewson. Tor Path Specification. 2010-08-16.