搜档网
当前位置:搜档网 › 一种混合的 Tor 匿名通信系统

一种混合的 Tor 匿名通信系统

一种混合的 Tor 匿名通信系统
一种混合的 Tor 匿名通信系统

收稿日期:2006-07-25;修返日期:2006-10-29 基金项目:新世纪优秀人才支持计划资助项目

作者简介:杨元原(1981-),男,河南洛阳人,研究生,主要研究方向为网络安全(yangy uan2_2001@https://www.sodocs.net/doc/4011794633.html,);马文平(1966-),男,陕西凤翔人,教授,博导,博士后,主要研究方向为通信网安全;白晓峰(1977-),男,陕西西安人,硕士研究生,主要研究方向为P2P 网络安全.

一种混合的Tor 匿名通信系统

杨元原,马文平,白晓峰

(西安电子科技大学教育部计算机网络与信息安全重点实验室,西安710071)

摘 要:提出了一种混合的Tor 匿名通信系统方案,它不仅能够保证Tor 系统低的通信延迟,而且还能够排除其因未使用填充信息和批量处理技术而导致的安全问题。它确保了Tor 匿名通信系统能够更加可靠地运行,实现用户身份隐藏。

关键词:匿名通信;Tor;Crowds;洋葱路由

中图分类号:TP 393 文献标志码: A 文章编号:1001-3695(2007)10-0141-04

Mixed T or a nonym ous com m unicat ion syst em

YANG Yuan-y uan,MA Wen-ping,BAI Xiao-feng

(Minis try of E ducation Key L ab.of Computer Networks &Infor mation Secur ity,Xidian Univer sity,Xi ’an 710071,C hina)

Abst ract :This pa per propos ed a m ix ed Tor a nonym ous com m unicat ion sy st em .It not only could g ua rantee t he low lat ency of

Tor anonym ous com m unicat ion sy stem but a ls o could obviat e t he s ecurity problem s a s a result of it doesn ’t us e t he t echnique of padding a nd batching.Thus it m ade sure t ha t the Tor w orked m ore safely and a chieved t he hiding of t he us er ’s ident it y.Key wo rds:anonym ous com m unicat ion;T or;Crowds;onion routing

0 引言

随着网络技术的普及与发展,网络安全也受到越来越多的关注。针对各种各样的安全问题,研究人员提出了各种不同的解决方案。目前,对通信内容加密与保护的技术已相对成熟,但对通信双方身份的保护技术却仍需完善。如在电子投票、电子银行、电子商务、电子拍卖等领域,用户身份的保密是必不可少的。但目前的网络协议如HTTP 、TC P/IP 均为开放式的,窃听者可以很容易地从截获的数据包中得到通信双方的IP 地址、报文长度、数据包交换的时间及频率等信息,由此窃听者就可能判断出用户身份,再结合其他消息,窃听者就可以在不知道通信内容的情况下推断出一些有价值的信息。

匿名通信就是在不改变现有网络协议情况下实现业务流中通信关系的隐藏,使窃听者无法直接获知或推知双方的通信关系或通信的一方。根据隐藏信息的不同,匿名通信分为三种:发送方匿名(sender anony m it y)保护通信发起者的识别信息;接收方匿名(recipient anony m it y)保护通信接收者的身份标志;收发双方无关联(unlinkabilit y of sender and recipient)则使得发起者与接收者无法被关联[1]。

Tor 是一种低时延的匿名通信系统。因为要保证数据包在系统中低的时延,它没有采用传统的发送填充信息和对一定量的数据包批量处理等技术,这些技术可以使观测者无法跟踪和识别数据包,因此存在着安全问题。文献[2]提出了一种攻击方式,它利用受控服务器发送的特殊数据,逐步跟踪并推断出通过这些特殊数据的Tor 节点,从而实现通信流分析。文献[3]也提出了一种攻击方法,Tor 在这种攻击中也是脆弱的。

针对这些不安全因素,本文提出了一种混合T or 匿名通信系

统,它可以有效抵抗文献[2,3]提出的攻击,提高Tor 系统的安全性,而且还保留了Tor 系统的低延迟特性。

1 Tor 匿名通信系统和Crowds 匿名通信系统

1.1 Tor 匿名通信系统

Tor 匿名通信系统[4]被称为第二代洋葱路由系统。它由一组洋葱路由器(onion router)

[5]

组成(也称为Tor 节点)。这些

洋葱路由器用来转发起始端到目的端的通信流。每个洋葱路由器都试图保证在外部观测者看来输入与输出数据之间的无关联性,即由输出的数据包不能判断出其对应输入的数据包,使攻击者不能通过跟踪信道中的数据流而实现通信流分析。

在Tor 匿名通信系统中,需要匿名的用户首先启动洋葱代理(onion proxy,OP)程序,洋葱代理负责通信链路的建立和数据的加/解密。它首先从目录服务器(directory serv er)中获得所有Tor 节点信息;然后在Tor 节点的集合中随机选取一个节点,协商秘密密钥;最后与它建立一个安全信道。密钥建立过程使用短期的Diffie-Hellm an 密钥交换协议,同时使用TLS 协议进一步保证信道的保密性和信息的前向安全。以后所有的数据都将通过这个信道进行传输。之后OP 通过已建立的信道,再继续将连接拓展至其他的Tor 节点,与其交换密钥,最终建立一条多层加密信道。数据在传输前首先被OP 按其所通过Tor 节点的顺序从后至前层层加密(类似于洋葱),在传输过程中,加密后的数据每通过一个Tor 节点被解密一次,直到最后一个节点数据被完全解密并转发到目的端。数据在从目的端返回的过程中,每经过一个Tor 节点被加密一次,到达OP 后

第24卷第10期2007年10月 计算机应用研究

Applicat ion Research of Com puters Vol.24No.10

Oct.2007

又被层层解密,最终转发给用户端的应用程序。由于每个Tor 节点只知道自己的加密和解密密钥,对于外部攻击者和合谋T or 成员来说,除非他们能够获得路径中所有Tor 节点的密钥,否则他们不可能得到通信数据的明文。

与传统的匿名通信系统不同,Tor 并不对来自不同用户的数据进行任何精确的混合,即不采用批量处理技术,而是将待输出的数据包存储在其对应流的缓存中,数据包的输出是以轮循的方式在各个流之间循环进行。这保证了所有连接的数据被公平地转发。当一个连接的流缓存为空时,它将跳过这一连接而转发下个非空连接缓存中的数据。因为Tor 的目标之一是低延迟,所以它并不对数据包进行精确的延迟、重新排序、批量处理和填充信息丢弃等传统操作。1.2 Crowds 匿名通信系统

Crow ds

[6]

是一个可以提供发送方匿名的通信系统。它的

主要思想是“blending into a crowd ”,即构造一个有很多匿名用户组成的群组,匿名通信发送方隐藏在众多的群组成员中。每个组员均充当代理的角色,当某成员需要建立匿名通信时,它将请求发送给其他成员。当该成员收到请求后,可以选择将请求直接提交给目的节点或将其转发至其他成员。从而使每个成员在被保护的同时,也为其他成员提供保护。具体而言,每个匿名保护的主机上运行一个被称为J ondo 代理程序,通过设定浏览器中的主机名和端口号。将J ondo 指定为HTTP 代理。该J ondo 从系统管理节点blender 中获得系统成员的J ondo 列表,来自浏览器的请求首先被发送给本地J ondo,本地J ondo 抛掷硬币来判断是将请求提交给目的端还是转发到下一个C rowds 节点。如果提交则与目的端建立连接,如果是转发到下一节点,则本地J ondo 从列表中随机选取一个C rowds 成员,并与其建立连接,将请求转发给他,下一C rowds 节点的J ondo 也进行相同的抛硬币操作,直到请求被最终提交给目的端。

在Crow ds 匿名通信系统中,连接建立过程不用传统的公钥加密,而是用各个J ondo 节点的对称密钥进行加密,节点的对称密钥从blender 服务器中获得。由于没有公钥操作,C rowds 系统的通信延迟特别低,但是其安全性没有公钥加密匿名通信系统高。因为每个转发数据的J ondo 节点均可解密通过的数据从而获得通信内容。其设计主要用于Web 浏览。在C rowds 系统中,加入C rowds 的用户越多,其匿名性越好。笔者证明当用户数n →∞时,Crow ds 系统无论对于本地窃听者,C rowds 合谋攻击者或目的端攻击者均能达到近乎完美的匿名性。

2 威胁模型

文献[2]针对Tor 系统提出了一种攻击方法。它能够逐步检测找出某一链路上的所有Tor 节点,从而发现通信的发起者,攻破Tor 匿名通信系统。

在Tor 中,不同用户的不同连接可能通过同一Tor 节点,由于不同的流在同一个Tor 节点被处理和转发,而它们又分享共同的处理器资源和网络带宽,这些流会相互影响。Mix

[7]

统的策略是将数据先存储在m ix 节点的缓存中,然后批量处理,使输入流与输出流无关联。但是Tor 并不采用这种策略,因为这会增加数据包的通信延迟。Tor 中的数据以轮循的方式输出,当一个连接中没有数据时,Tor 将跳过此连接而去处

理有数据的连接。这意味着Tor 节点的负载会影响此节点及以后在同一链路所有节点的通信流,增加其延迟。节点负载越重,那么通信延迟越高。对于高负载节点,只要增加一个额外的通信流,就将造成所有通过此节点数据流的高的延迟。攻击者可以利用Tor 的这一特点进行攻击。通过连接一个目标节点,测量其通信时延,攻击者可以估计出目标节点的通信负载,用这个测量结果与一个已知的通信模式进行比较,可以判断出此目标节点是否包含在通信链路中。

任何Tor 节点均可以进行这样的测量并且估计某一Tor 节点的负载。如图1所示,假设攻击者控制了一个Tor 节点,并将其连接路径长度设为1(默认值为3)。这个受控Tor 节点与目标Tor 节点(Tor 节点2)建立客户机服务器模式的连接,之后它将测量与此目标节点的负载。这一连接被输入特殊的探寻数据流(probe tra ffic),它可以测量通信延迟并由此估计目标Tor 节点的负载,这将检测通过目标节点瞬间的通信流。

图1 Tor 攻击模型1

攻击者利用上面的技术观察通过某目标节点输入和输出的数据流。然后进一步假设攻击者控制了一个网络服务器,称为受控服务器,这一服务器可以对输入信息进行回复。由此,用户可以从服务器获得匿名的确认信息。受控服务器通过匿名网络向用户发送数据。这种数据是一种特殊格式的数据。在攻击试验中,它是一组突发的数据流。因为攻击者知道Tor 网络中突发数据流的输入模式,能够建立模板,并且比较判断目标Tor 节点中的流是否与这种突发数据流相关。

攻击者的目标就是根据各个T or 节点的延迟数据来确定哪个节点处理了受控服务器发送的特殊格式数据。攻击者对每个节点进行测试,判断特殊数据流通过了哪个Tor 节点。如果某一Tor 节点通过了突发数据,那么它与受控节点探寻数据的相关值会大于未通过突发数据节点与受控节点探寻数据的相关值,由此通信链路被找出,匿名系统被攻破。

相关的执行非常简单,由受控服务器与探寻数据的延迟相乘,并将所有结果相加。受控服务器的模板函数S(t)为

S(t)=

1 服务器在采样时间t 发送数据0 服务器在采样时间t 未发送数据

探寻数据延迟的表达式为L(t),它表示目标Tor 节点在采样时间t 的通信延迟;L ′(t)为所有采样时间的平均值。相关值c 是S(t)与L ′(t)乘积的总和除以所有采样时间的总和。

c =[∑S(t)×L ′(t)]/[∑S(t)]

笔者通过仿真试验表明这种攻击模式可以有效降低Tor 匿名通信系统的匿名度。它可以以很高的概率发现通过突发数据的Tor 节点,并由此推断出通信路径,进行通信流分析。

文献[3]提出了一种针对m ix 匿名通信系统的攻击方案,该攻击方案也可应用到Tor 系统中,而且其假设也在Tor 的安全模型之内。

图2 Tor 攻击模型2

?

241?计算机应用研究第24卷

{

假设攻击者已经占据了通信的一个起点和一个终点,他只需要判断该起点和终点是不是在同一链路上。在T or中,通信的起点和终点是很容易判断的。因为Tor节点的个数是有限的,所有Tor节点的IP地址可以从目录服务器中获得。如果一个Tor节点收到的Crea t(建立连接命令)数据包不是来自其他T or节点,那么他可以肯定自己是某一通信流的起点;如果一个节点收到了其他Tor节点发送的C reat命令,而且此后未收到来自相同节点的rela y extend(连接拓展)命令,那么它也可以肯定自己是某一链路的终点。

图2显示了由发起者建立的一条匿名通信路径I,从T or I

1

开始到Tor I

3

结束。当接收到数据包时,Tor节点可以判断出此数据包属于哪条路径并且与谁通信。可以通过分析数据包的IP得知它的上一节点和下一节点的地址。假设Tor I1和Tor J3可以知道自己是某条连接的第一与最后一个节点,但是它们并不知道自己是否是在同一路径。如果有许多连接通过Tor匿名

系统,并且攻击者已经成功控制了Tor I

1和Tor J

3

。其中:I和J

表示可能不同的通信路径。攻击者的目标就是确定是否I=J。如果I=J,那么攻击者就可以正确判断出通信双方的源地址和目的地址,则匿名性即被攻破。

Tor系统的路径长度为3,第一个和最后一个合谋攻击者可以分别告知对方自己的下一跳与上一跳节点然后确定其是否相同。如果相同,则为同一链路;如果不同,则为不同链路。由此攻击者可以很容易攻破T or匿名通信系统。增加路径长度并不能保证Tor的安全,而且还会增加通信延迟。因为攻击者可以通过研究数据包到达时间的相关性来发动时间攻击。

时间攻击的基本思想是找出Tor I

1和Tor J

3

之间数据包的时间相

关性,它们之间的相关性越强,则越容易判断是否I=J。

研究时间相关性中,最有用的变量是时间差δ

i

,它表示第i 个数据包到达时间和紧随其后的数据包到达时间的差。因此合谋Tor节点可以根据第i个数据包的到达时间和第i+1个数据包的到达时间来判断其是否在同一路径上。假设相邻数据包在初始端的时间间隔是随机的,由于Tor并不引入延迟和

填充数据包,那么相同链路上的数据包的δ

i

值会有很大的相似性。由此攻击者可以判断出是否I=J,如果相等,那么匿名系统就被攻破。

3 混合的Tor匿名通信系统

防范以上两种攻击的常用策略就是在每个链路中填充信息。但会明显增加通信时延,无法保证Tor的低时延特性。因此本文提出了一种混合匿名通信系统方案,它可以保证在通信时延不会明显增加的情况下保护匿名通信系统的安全性。

图3 混合Tor匿名通信系统

该方案就是在数据进入Tor系统前,进入一个转发系统,实现发送方匿名。具体方案是用户先加入一个转发网络,转发网络的结构类似于Crowds,但其路径选择策略与Crow ds不同。转发网络并不采用C rowds那种完全随机的路由选取策略,因为C rowds路径长度可能过长,造成通信延迟过大。

转发网络的目的就是隐藏发送方,将真正通信用户隐藏在众多匿名用户组中,实现发送方匿名,这一点是与C rowds一致的。但由于Crow ds在安全方面的局限性,使其只能用于Web 浏览。本文转发系统是与Tor结合的,可以实现Tor所能实现的所有网络功能。具体方案如图3所示。当匿名用户需要发起匿名连接时,首先运行OP程序,选择一个Tor节点,并发起Deffie-Hellm an握手协议;之后用户运行自身的J ondo代理程序,该程序完成转发系统的成员选择及到Tor节点1的路径建立。其路径长度为最大路长受限的随机路径长度,成员选择策略为随机成员选择策略。

J ondo程序中的路径选择有两个参数,即转发概率p

f

和最

大路径长度N。p

f

是用来确定转发数据还是提交数据的门限值;N用来控制路径的最大长度。N为3~8的随机整数,由发

送者的J ondo程序产生。发送者取定p

f

和N的值后,开始抛硬

币,随机产生一个0,1之间概率值。如果此值小于p

f

,则随机选择一个J ondo作为下一跳节点,最大路径长度数N减1;然后将数据发送给刚刚选定的下一跳节点。此节点首先判断收到的N值是否为0,如果大于0,则继续进行抛硬币过程;如果等于0,则路由选择过程结束,此节点将作为转发网络的最后节

点。在抛硬币的过程中,如果随机数值大于p

f

,无论N值是多少,路由选择过程也将结束,数据将被提交给Tor网络。

路径建立过程中引入最大路径长度是为了防止出现路径过长,造成通信时延过大,采用随机数是为了保证匿名系统的安全性,使转发节点无法判断自己是否为第一个转发节点。当转发网络中的链路建立好以后,转发网络仅执行数据转发功能。由Tor负责网络的拥塞控制,数据完整性校验和前向安全等功能。

4性能分析

本文提出的方案对于文献[2,3]所提出的攻击具有很好的抵抗作用。对于文献[2]的攻击,即使攻击者能够找到转发突发数据的所有Tor节点,但是由于第一个Tor前的节点并非通信的发起者,通过该攻击也不可能找到通信的发送方。而且这种攻击方式对转发网络没有作用,因为攻击者需要通过逐个测试的方法才能判断出目标T or节点是否为转发节点,而转发网络中的用户n→∞,攻击者无法通过逐个测试的方法寻找通信路径。对于文献[3]所提出的攻击,攻击者必须首先找到通信的第一个节点和最后一个节点,但是在转发网络中,即使有合谋成员被选为转发节点,它无法判断自己是否是通信的第一个节点,因为它接收到的信息有可能是起始用户给他的,也有可能是其他转发用户转发的,它只能假设自己是通信的第一个转发节点,发动前驱攻击,但是转发网络的路径很短,所以攻击成功率很低[6]。

由于本系统是基于Tor系统的,它能够抵抗Tor所能抵抗的所有攻击并且继承了Tor匿名通信系统的优势。而且由于该本系统是混合的系统,使攻击的难度更大。因为仅针对Tor 的攻击或者针对转发网络的攻击是不可能完成通信流分析的。而且该系统增加了Tor系统的安全性,在Tor中,如果一个攻击者控制了目录服务器,那么它可能诱使OP选择合谋Tor节

?

3

4

1

?

第10期杨元原,等:一种混合的Tor匿名通信系统

点作为转发节点,针对这种攻击,Tor 只能通过人为因素来增加系统的安全性,但本系统可以很容易抵抗这种攻击,因为即使用户OP 选择了合谋的Tor 节点,只要转发网络是安全的,那么攻击者仍无法找出信息的发送方。同样,仅发动针对转发网络的攻击,仅能获知通信的发送方,系统仍能实现接收方匿名,因为转发网络的终点并非通信的终点。对于转发网络安全性来说,只要能够保证blender 节点的安全,那么用户在选择转发用户时将是完全随机的。文献[6]证明它是一个安全的系统,因此整个匿名通信将是安全的。

1)低时延性 转发网络的实现是非常简单而且高效率的。由于数据链路的建立和数据的转发都是用对称密钥加密的,速度非常快,影响时延主要因素是网络的带宽和网络拥塞情况。由于Tor 采用了拥塞控制算法和令牌桶策略来保证网络的健壮性,混合系统能够实现很低的通信时延。

2)数据安全性 在Crowds 系统中,任何一个转发节点均可获得通信的明文,因此不能保证数据的安全性。而在混合系统中,转发网络中的数据均是OP 加密后的数据,数据安全性可以很好地实现,同时可以完成整体性检验和数据的前向安全。

3)全局攻击 由于没有填充信息流,该系统与Tor 系统一样,对于全局攻击者来说是脆弱的。强大的全局攻击者可以通过端对端的时间攻击和包计数攻击攻破Tor 系统。但是文献[8]证明,即使再完美的匿名通信系统,都会在一定时间内被全局攻击者攻破,因此所有匿名通信系统对于全局攻击都是脆弱的。

5 结束语

本文提出了一种混合Tor 匿名通信系统方案。该方案不需要传统的填充信息和批量处理技术就可以保证Tor 匿名通统的安全性,而且由于没有采用填充信息,不用发送冗余

信系息包,提高了匿名通信系统的效率,降低了通信时延。本文提出的混合Tor 系统是一个安全高效的匿名通信系统。未来的方向是研究混合系统可能存在的安全漏洞,实现更强的安全性。参考文献:

[1]

FITM ANN A,K NTOPP M .

Anonymity,unobser vability,and

pseudonymity a proposal for ter minolog y[C]//FEDERRATH H.De-signing privacy enhancing technologies design issues in anony mity and observability.New York:Springer-Verlag,2001:1-9.

[2]

M URDOCH S J ,DANE ZIS G.Low-cost tra ffic ana lysis of Tor[C]//Proc of the 2005IEEE Sym posium on S ecur ity and Privacy.Washing-ton:IEEE Computer Society,2005:183-195.

[3]

BRIAN N L,M ICHAEL K R,WANG Chen-xi,et al.Timing a tta cks in Low-Latency mix systems:extended a bstract[C]//Pr oc of Financial Cr yptog raphy.Ber lin:S pr inger,2004:251-265.

[4]

DINGLEDINE R,M ATHE WSON N,SYVERS ON P.Tor:the second-genera tion onion router[C]//Proc of the 13th USENIX Secunty S ym-posium.Berkeley:US ENIX,2004:303-320.

[5]

REED M,SYVE RS ON P,GOLDSC HLAG D.Anonymous connection and onion r outing[J ].IE EE Journ al on Selected A rea s in Com-munications ,1998,16(4):482-494.

[6]

REITE R M K,RUBIN A D.Cr owds:anonymity for Web tr ansactions [J ].A CM Transa ctio ns on In forma tion and S ystem Security ,1998,1(1):62-92.

[7]

B ERTHOLD O,FEDERRATH H,K PSE LL S.Web MIXes:a system for anonymous and unobser vable Inter net access[C]//Inter national

Workshop on Desig n Issues in Anonynity and Unob Ser vability.Ber -lin:Springer,2001:115-129.

[8]

KES DOGAN D,AGRAWAL D,PENZ S.Limits of anonymity in open environments[C]//Proc of the 5th Inter national Workshop on Infor -ma tion.Ber lin:S pringer,2003:53-69.

(上接第140页)

还是水印的质量均有较大的改进,水印图像对

于压缩攻击(J PE G 或J PEG 2000)、其他的攻击(如大部分的滤波攻击)的鲁棒性要优于DWT 域水印算法。可以说,算法在抗干扰性和不可见性之间作出一个较优的选择,能够适应图像的局部变换,比目前流行的实小波水印具有更大的优越性。但是,该算法对于中值滤波、下采样攻击的鲁棒性有待改善。这将是笔者下一步的研究工作。

参考文献:

[1]

INGSBURY N.The dual-tr ee complex wavelet transform:a new ef-ficient tool for image restor ation and enhancement[C]//Proc of Eur o-pean Signal Processing Confer ence.[S.l.]:Bry ce Canyon UT,1998:319-322.

[2]KINGSBURY N.Image processing with complex wavelets[J].Philo-sophical Transactions Roya l Societ y Londo n A ,1999,357(9):2543-2560.

[3]LOO P,KINGSB URY N.Digital water marking with complex wa velets [J].IEE E Tran sactions on Signal P rocessin g,2000,2(3):29-32.

[4]LOO P,KINGSBURY N.Dig ital water marking using complex wa velets [C]//Pr oc of IEE E Conf on Im age Processing.2000:3608-3616.

[5]

LOO P.Digital water marking using complex wa velets[D].Cambr idge:Univ ersity of Cambridge,2002:16-60.

[6]李段,王成儒.基于重要小波树的图像水印技术[J].计算机工程与设计,2006,27(1):124-125.

[7]胡永建.数字图像可见水印与方法的研究[D].广州:中山大学,2004:18-45.

[8]VOLOS HYNOVS KIY S,PEREIRA S,IQUIS E V,et al.Attack mode-ling:towar ds a second gener ations water marking benchma rk[J].S ig-

nal processing ,2001,81(2001):1177-1214.

[9]

CHEN B,WORNELL G.Quantization index modulation:a class of prova bly good methods for dig ita l w atermar king and information em-bedding[J].IEE E Transactio n on Information Theory,2001,47(4):1423-1443.

?

441?计算机应用研究第24卷

baboon Lena camera

30

2520151050

10

15

25

30

40

JPEG compression(quality factor)图6CWT 域水印图像对于JPEG 压缩鲁棒性对比

相关主题