匿名通信技术现状分析与展望
摘 要
随着流量审查技术的不断演进,传统的加密通信技术在隐藏数据特征方面显示出固有的缺陷。为了应对审查,多种技术手段应运而生,其中匿名通信技术凭借其独特的设计理念显现出巨大的发展潜力。为深入探讨匿名通信技术未来的发展方向,采用文献研究法、实验研究法和定性分析法,对现有的匿名通信技术的实现方法进行了分析和归纳,发现现有技术存在被审查者识别的风险。基于此,提出了匿名通信技术未来的发展方向以及应用价值。
内容目录:
1 匿名通信技术
1.1 流量审查和匿名通信
1.2 匿名通信技术概念
1.3 匿名通信技术发展现状
2 匿名通信技术分析
2.1 匿名代理技术分析
2.2 流量混淆技术分析
3 匿名通信技术问题与展望
3.1 现阶段匿名通信技术的问题
3.2 匿名通信技术的发展方向
3.3 匿名通信技术的普及推广
4 结 语
现代网络通信技术高速发展,人们在享受高速信息传递带来的便利的同时,也受到大到犯罪组织,小到个人黑客的窥视。因为网络的开放性,第三者可以轻松地介入到用户的通信中,捕获其感兴趣的信息,甚至扰乱正常的通信,使得信息无法及时到达目的地,轻者影响用户体验,重者耽误重要信息的传递,造成无法估量的损失。加密通信技术可以保护信息无法被窃取,但是却存在暴露通信特征的问题,使得审查者很容易察觉裹挟在众多通信流量中的重要信息,从而进行重点拦截和阻断,加剧了信息被截获乃至通信中断的可能性。而匿名通信技术正是为解决以上问题应运而生的,随着流量审查技术的日益发展,匿名通信技术的发展路线也呈现出多元化的态势。
匿名通信技术的发展总是伴随着审查技术的不断进步,在面对越来越强大的审查系统时,当前的匿名通信技术已显得力不从心。为了找到匿名通信技术的发展方向,需要对现有的技术进行全面总结归纳,通过发现不足,找到破题之法。
1
匿名通信技术
1.1 流量审查和匿名通信
流量审查隶属于网络审查的一部分,是不同于客户端审查和服务器端审查的基于中间人攻击的审查行为,因其不需要在网络通信的双方安装额外的软件或设备,事先也不需要告知被审查者或者要求服务商提供协助,所以具有广泛的适用范围、更高的效率和较高的隐蔽性等特性。流量审查技术因具有以上优势成为了网络审查技术中最重要的审查手段。通过流量审查技术,审查者可以获取通信过程的双方连接信息、双方身份信息以及流量属性,从而进行进一步的利用或者破坏。
流量审查同其他众多网络安全领域的技术一样是一把双刃剑,通过流量审查,可以及时地发现网络中存在的安全威胁,如入侵行为、渗透行为等,也可以阻止个人、企业或国家秘密非法流向海外。在社会安全领域,流量审查甚至能够防止恐怖分子的恐怖袭击、追查嫌疑犯的动向,为社会治安带来新的突破口。然而如若不法分子掌握这种技术,那么个人隐私或财产安全、企业或国家的秘密将面临很大的威胁,比如通过流量审查劫持网银登录信息盗取钱财,或通过阻挠党政机关通信导致政令传达受阻甚至被篡改。人们都不希望自己的通信过程受到审查,但是网络不是法外之地,没有适当的管理就谈不上自由,应该从辩证的角度去看待这项技术。从社会安定、国家安全方面来看,应该适当发展流量审查技术,同时应该对这种技术实行严格的管控,避免其成为隐患,造成不可估量的损失。
近年来流量审查技术不断发展,从简单的数据包过滤、域名系统(Domain Name System,DNS)欺骗,到更加先进的主动探测技术和深度包检测技术(Deep Packet Inspection,DPI),流量审查技术已经具备了对于一些特殊流量进行甄别的能力。加密通信技术作为一种能够有效保护通信内容不被未授权的第三方知晓的技术,已经被广泛使用了上千年,然而随着流量审查技术的不断发展,这种技术已经威胁到加密通信的安全。
流量审查技术并非无懈可击,其有界性限制了一个流量审查系统的审查范围和审查能力。避开流量审查的方法有两种:一是通过试探审查系统的审查边界,可以选择绕过审查边界,从而避开审查;二是通过持续增加通信流量,对流量审查系统的审查能力造成挑战,使其可靠性降低,从而有一定概率可以避开审查。当然,以上两种方法也存在一定缺陷,比如前者会受到通信系统拓扑的限制,后者也会给通信系统造成不小的压力。那么有没有一种不以牺牲通信质量为代价,有效地逃避流量审查的技术呢?
匿名通信技术由此应运而生,如果说信息加密技术和密码破译技术是对立而生、相互促进,那么匿名通信技术和流量审查技术同前两者一样,针锋相对、互争雄长。根据 1981 年David Chaum 的论文著作,尝试利用匿名性逃避流量审查系统的审查,从而有效地保证了通信双方连接信息不被泄露,成为规避网络审查技术的主要思想,开创了匿名通信技术的先河。
1.2 匿名通信技术概念
在数学中,一个被明确定义的集合 [ 称为匿名集合(Anonymity Set)]中的任意元素(比如某个人、某台计算机、某个对象),在这个集合中无法与其他元素进行区分,那么这个元素就具有不可被识别的属性,称该元素为匿名(Anonymous),其具有匿名性。然而匿名性不是绝对的,它取决于观察者的观察能力或者观察方式,比如一个由计算机构成的匿名集,观察者如果只能辨别或者观察到计算机的基本属性,无法通过内存大小或者处理器型号等更深一层的属性进行更细致的分类,那么这个匿名集合中任意一台计算机都具有匿名性。如果观察者可以观察到计算机的编号或者序列号,那么这个集合将不再是一个匿名集合,其中的计算机也不再具有匿名性。
在网络空间中,如果不考虑审查者的存在,那么将存在着大量的匿名集合。虽然审查技术仍在不断发展,但是流量审查系统有界性这一特点导致当前审查者不具备对所有的匿名集合进行深度审查的能力,甚至对某些匿名集合采取不予审查的行为,以避免不必要的计算资源的浪费。在通信领域,使参与通信的个体处于审查者无法审查或不愿审查的匿名集合中,使其具有不被审查者从众多元素中识别出来的匿名性,是匿名通信技术的核心思想。
考量一个匿名通信系统的抗审查能力,即是对该匿名通信系统匿名性的考量,这个考量分为两个方面:一方面是对匿名通信系统使用的匿名集合的整体匿名性的考量,假设审查者的审查能力不变,那么匿名集合包含的元素越多,各元素之间相似分布越均匀,这个匿名集合的整体匿名性就越强;另一方面是对匿名通信系统中的通信个体匿名性的考量,匿名通信系统中参与通信的个体与匿名集合中其他元素相似性越大,那么这个个体在匿名通信系统中的匿名性就越大。当一个匿名集合中的元素无限多且所有元素都一致时,这个匿名集合就具有完全匿名性,集合中的元素也具有完全匿名性,当然在现实中这种情况是不存在的,但这种情况代表了一个匿名通信系统所具备的最大匿名性,越趋近于这个状态,就表示该匿名通信系统匿名性越强 。
1.3 匿名通信技术发展现状
匿名通信技术出现的时间并不长,其发展历史主要是围绕着流量审查技术的发展而展开的,虽然该领域引起了较为广泛的关注,但是没有形成一套科学的理论体系,也没有一个较为统一的分类方法 。这里根据目前已经存在的匿名通信系统及其实现匿名性的方法路线,将匿名通信技术分为两大类,即基于代理转发的匿名通信技术(又称匿名代理技术)和基于流量混淆的匿名通信技术(又称流量混淆技术),其中每一种技术又可以再进行细分,匿名通信技术的技术路线分类如图 1 所示。
图 1 匿名通信技术的技术路线分类
这两种匿名通信技术并不是相互独立存在的,目前很多匿名通信系统都结合了这两种技术来实现系统的匿名性。接下来将对这两种匿名通信技术进行详细分析。
2
匿名通信技术分析
2.1 匿名代理技术分析
2.1.1 基于代理服务器的匿名代理技术
基于代理服务器的匿名代理技术是较早出现的一种匿名通信技术,是匿名代理技术的一种简单实现,匿名代理服务器会对用户发起的请求进行改造,使得在通信过程中审查者无法获取通信请求一方的真实身份。在早期流量审查技术还是以数据包过滤为主要手段的时候,互联网中充斥着各种匿名代理服务器,其往往是被公布于某个网站上的一系列代理列表(Proxy List),这些列表网站没有固定的地址,用户大多通过搜索引擎进行搜索并访问。这类匿名代理的协议基本以 HTTP 或 Socket 为主,一般没有任何加密手段。基于这种技术路线的代表系统有 TriangleBoy、Flashproxy、Web Mixs 等。其 中 TriangleBoy 和Flashproxy 都采用了大量部署代理服务器的方式来保证系统的可用性,二者系统架构如图 2所示。
图 2 TriangleBoy 和 Flashproxy 系统架构
Web Mixs 实现了瀑布流路由的方法,通过多级跳转访问目的地址,其系统架构如图 3 所示。
图 3 Web Mixs 系统架构
但是无论以上哪种系统,都无法避免目标地址暴露给审查系统,只做到了用户端的匿名。随着流量审查技术的不断发展,这种单一的匿名通信技术已经不再单独使用,而是结合数据加密或流量整形被用于其他匿名通信技术中。
2.1.2 基于隧道的匿名代理技术
通过建立加密隧道可以保护通信内容不泄露,如虚拟专用网络(Virtual Private Network,VPN)技术目前已经非常成熟,通过 VPN 网关,通信双方可以建立一条安全的加密通信隧道,VPN 系统典型架构如图 4 所示。
图 4 VPN 系统典型架构
从流量审查的角度来看,对于一条 VPN 隧道,其可以代理的匿名通信数量无法估量,而且其全部流量都进行加密处理,除非切断该条VPN 隧道,否则无法做到对一条隧道内某个或某几个通信个体的审查。基于隧道的匿名代理技术理论上可以做到通信过程的完全匿名化,但是因为其具有的潜在危险性,部分国家和地区已经严格控制该技术的使用,要求代理提供方必须经过严格的审核,甚至要求主动接入流量审查系统,从而使得 VPN 技术在这些地区失去了匿名的意义。
2.1.3 基于重路由的匿名代理技术
最为著名的基于重路由的匿名代理技术是20 世纪 90 年代中期由美国海军研究实验室的员工保罗·西维森(Paul Syverson)等人开发的洋葱路由(The Onion Router,Tor)。与前两种匿名代理技术不同,Tor 不采用单一节点进行代理,其对信源加密的方式如同洋葱的多层结构,每一层都对应了上层的加密信息和 Tor 网络中某个节点的地址,当到达一个节点时,该节点获取到下一个节点的地址后将剩余的加密部分进行传输,Tor 系统架构如图 5 所示。
图 5 Tor 系统架构
早期 Tor 网络将所有节点明文公布,使得审查者可以轻易了解到 Tor 网络的边界,从而进行审查或阻断。现在 Tor 节点的公布采用了加密和身份认证,同时随着 Tor 的普及,越来越多的志愿者加入节点的建设中,使得如今的 Tor 节点集合非常庞大,审查者很难观察到 Tor 网络的边界,或者可以说 Tor 网络已经无处不在,成为暗网(Dark Web)的重要组成部分。当然 Tor 也不是没有弱点,因为 Tor 协议的特殊性,使得 Tor 流量在网络中非常容易辨认 ,而 Tor 网络中的活动普遍被认为不合法,所以很多国家和地区都对 Tor 流量进行了严密的监控和打击,而且因为Tor 网络中各节点的硬件素质也没有保障,导致了 Tor 网络在实际使用中并不稳定。
2.2 流量混淆技术分析
随着流量审查技术的不断发展,审查者不再只关心通信过程中通信双方的地址、端口等连接信息,基于 DPI 的流量审查技术能够通过通信协议、数据长度、通信模式等多个维度检测通信双方的传输内容,这时候只有匿名代理技术是不够的,想要通过这样的流量审查系统而不被发现,需要对流量本身进行“整容”,使其不再具有被流量审查系统识别的上述特征,并混入互联网中的其他流量中,避免受到审查,这就是流量混淆技术。
互联网中充斥着各种通信流量,其中一些流量不具备较为明显的特征,这些流量大多是一些内容较短、在网络中分布较为分散、没有固定的通信地址的流量,比如访问较为小众的网站、设备远程控制、网络实验等行为产生的流量,这些流量形成了一个巨大的匿名集合,这个匿名集合中的流量特征就是没有明显特征。网络中还存在另一种流量,这些流量的协议、端口、通信地址以及通信模式都较为固定,而且这些流量通常用户较多,在网络中能够形成一定规模,对于流量审查系统有着较高的辨识度,比如视频流量、即时通信流量、BT 下载流量等,那么根据匿名集合的定义,这些流量中具有相同模式的流量也能够形成具有一定规模的匿名集合。
流量混淆技术的本质就是将原本的流量隐藏到网络中由其他流量组成的匿名集合中,从而逃避审查。那么根据上述网络中流量的类型,流量混淆技术便有了两个发展方向:基于随机化的流量混淆技术和基于拟态的流量混淆技术。
2.2.1 基于随机化的流量混淆技术
基于随机化的流量混淆技术是指利用随机填充数据、随机调整延时、随机加密等手段,对流量进行整形,使得流量的通信协议、报文长度、通信模式更分散,更不具备明显特征,从而使审查者更难从该匿名流量集合中识别出被混淆的流量。
典型的基于随机化的流量混淆技术主要有Obfsproxy 系列和 ScrambleSuit,以下是各种协议的分析比对。
Obfsproxy 是 Tor 项目于 2012 年为了对抗流量审查技术提出的流量混淆插件,其运行于 Tor网络的传输层之上,主要功能是对 Tor 网络中的流量进行整形,其最早使用的算法为 Obfs2,随后因为安全性的问题又相继推出了 Obfs3 和Obfs4。Obfs2 作为初代基于随机化的流量混淆技术,其设计时将主要的注意力放在对流量的随机化和去随机化上,而忽略了通信双方在握手阶段的安全性,其握手阶段使用的密钥交换系统因具有明显特征,所以很容易被审查系统识别出来。Obfs3 是 Obfs2 的升级版,其对上一版中存在的握手阶段的设计进行了改进,能很好地防止在握手阶段被识别,但是在设计初期没有考虑握手时的身份认证需求,导致攻击者可以很容易地伪装成为假的传输节点,使得通信过程受到窃听,严重威胁到了通信安全。作为Obfs3 的继任者,Obfs4 实现了完整的基于非对称密钥体系的身份认证系统,使得节点和网桥的真实身份都具备了可信度,但是目前 Obfs4 系统节点已被证实可以通过主动探测的手段被识别,使其失去匿名性。
ScrambleSuit 由 Philipp Winter 等人于 2013 年设计并实现,主要是为了解决 Obfs2 中存在的安全缺陷。其思路是通过增强的认证机制实现对流量审查技术中主动探测技术的屏蔽,从而有效地防止主动探测系统对代理服务器的地址进行采集。与 Obfs 一样,ScrambleSuit 在设计时只考虑了单向认证,即网桥服务器节点对用户的认证,而用户不会对网桥服务器的身份进行认证,使得审查者可以在 Tor 网络中散布虚假的代理服务器地址 [8],这些虚假的代理服务器要么会阻断 Tor 连接,要么会作为中间人窥探收集通信内容,最终造成严重的安全问题,ScrambleSuit系统攻击方法如图 6 所示。
图 6 ScrambleSuit 系统攻击方法
2.2.2 基于拟态的流量混淆技术
与基于随机化的流量混淆技术所追求的流量无特征性不同,基于拟态的流量混淆技术为流量混淆技术开辟了一条新思路,那就是给流量赋予强特征,将其隐匿于具有很强特征的流量集合中,从而实现匿名的效果。
基于拟态的流量混淆技术并非近几年产生的,其诞生甚至早于基于随机化的流量混淆技术。较有代表性的基于拟态的流量混淆系统有Collage、SWEET、SkypeMorph 和 simple-obfs。
Collage 是 较 早 期(2010 年) 对 于 基 于 拟态的流量混淆技术的一种探索,严格意义上Collage 并不能算是流量混淆技术,而是一种通过隐写进行匿名发布的技术。在该系统中,发布者将信息隐写在图片、音频或者视频中,然后将这些内容发布到拥有大量用户产生内容的网站,比如 Wordpress、Myspace 等,然后通过其他途径告知接收者下载这些媒体文件,将隐写内容解密,达到匿名通信的目的,Collage 系统架构如图 7 所示。
图 7 Collage 系统架构
Collage 的缺点非常明显,整个通信过程不具备连续性,而且需要额外的带外通信信道进行控制,容易暴露通信过程。但是 Collage 的出现为日后基于拟态的流量混淆技术开辟了思路。
SWEET 是将通信内容隐匿于邮件的系统,这些用于隐匿信息的邮件和一般邮件一样,可以依托于较为流行的公共邮箱服务,如 Gmail、网易邮箱、QQ 邮箱等,SWEET 系统架构如图 8所示。因为电子邮件的流量非常大,如果对这样巨大的流量进行审查,找出其中隐匿的信息,对于审查者来说,无疑要带来巨大的工作量,而阻断电子邮件的流量显然是不可行的,所以理论上 SWEET 具有很高的可行性。
图 8 SWEET 系统架构
但是邮件系统具有高延时的特点,无法保证通信的连续性,如果审查者对列入黑名单的可疑邮件地址进行审查,那么这些黑名单内的用户在使用 SWEET 通信时就不具备匿名性了。
SkypeMorph 是 Tor 项目的一个插件,用于混淆客户端与网桥之间的连接信息。为了保证匿名性和通信的连续性,SkypeMorph 将 Skype流量作为匿名流量集合,将流量整形为与 Skype通信流量相近的流量。其实现过程是在客户端与网桥服务器上都通过运行 Skype 客户端登录Skype 网络,并以文本消息的形式交换公钥,根据 Skype 用户的属性如用户 ID、聊天 Session 等信息,SkypeMorph 程序按照 Skype 视频通话协议构造与之相仿的数据包,模拟 Skype 视频通话进行匿名通信,SkypeMorph 系统架构如图 9所示。
图 9 SkypeMorph 系统架构
因为 Skype 的用户量很大,全球网络中充斥着 Skype 视频通话的流量,而且为了保证通话质量,Skype 将视频通话设计为对等式网络(Peer to Peer,P2P)模式,建立连接后不再经过 Skype服务器,使得伪装成 Skype 视频通话的匿名流量很难被察觉。但是 Skype 通信协议作为不公开的私有协议,需要通过逆向分析才能利用,而且协议一旦更改,就要再次分析更新,如果不及时更新,通信过程就会暴露。
simple-obfs 是 近 年 来 较 为 流 行 的 Shado wsocks 加 密 通 信 系 统 使 用 的 混 淆 插 件, 与SkypeMorph 模 拟 私 有 协 议 不 同,simple-obfs是 对 开 放 的 安 全 传 输 层 协 议(Transport Layer Security,TLS)进行模拟,因为不需要逆向分析通信协议,所以实现难度相对较低,simple-obfs系统架构如图 10 所示。因为 TLS 协议是目前互联网上使用最广泛的安全传输层协议,并且传输内容为加密内容,所以 simple-obfs 的设计者假设审查者不能对所有 TLS 通信进行审查,即通过模拟 TLS 流量获得很高的安全性。
图 10 simple-obfs 系统架构
模拟 TLS 流量需要解决的主要问题是 TLS的握手阶段,正常的 TLS 连接是需要服务器下发证书的,而临时的匿名通信不可能申请证书,所以 simple-obfs 通过 TLS 的“会话保存恢复机制”来实现 TLS 流量模拟。因为不能获得真正的证书,所以 simple-obfs 对 TLS 的模拟并不能做到一模一样,在 Random、Session ID 以及 Session Ticket TLS 等信息方面还是与真正的 TLS 流量存在差异,存在被审查者识别的风险。
3
匿名通信技术问题与展望
匿名通信技术虽然可以应对流量审查技术,但是这两项技术的发展还是处于此消彼长的状态,匿名通信技术目前无法从根本上威胁流量审查技术。究其原因,匿名通信技术获得的研发投入和流量审查技术无法相提并论。各国政府在密码技术的审查技术研究领域进行了大量投入,却忽视了匿名通信技术的研究。
3.1 现阶段匿名通信技术的问题
结合上文分析,匿名通信技术现阶段主要采取两种方式来规避审查,匿名代理技术的核心思想是“多绕路”,流量混淆技术的核心思想是“伪装术”。表 1 总结了以上几种匿名通信技术的抗审查能力。
表 1 几种匿名通信技术抗审查能力对比
从表 1 中可以看出,“多绕路”的技术路线匿名性普遍较差,而且基本上已经处于探索的停滞状态;“伪装术”的技术路线虽然存在可用性的问题,但基于拟态的流量混淆技术近年来发展迅速,基本解决了可用性的问题。然而无论是以上哪种技术路线,目前都难以抵抗主动探测技术的攻击,而且存在被识别的风险。
3.2 匿名通信技术的发展方向
目前简单匿名系统已无法有效对抗审查,能够有效对抗审查技术的匿名通信技术均是将多种匿名技术结合,甚至还需要加入密码技术来共同构建匿名系统。因此,有效融合多种匿名和密码技术的匿名通信系统是未来匿名通信技术的一个研究和发展方向。
对于匿名集合的进一步研究也是匿名通信技术发展的关键。一方面要不断优化目前已有的匿名通信系统的匿名集合,例如对基于拟态的匿名方法进一步改进,使整形后的流量无限接近匿名集合中的正常流量,增强匿名系统的匿名性;另一方面可以开拓新的匿名集合,对于大量使用的流量类型加以研究利用。
另外,在对抗流量审查技术的研究领域,还可考虑主动攻击的思路,一方面从审查系统的隐蔽性入手,主动探测审查系统的物理和能力边界,暴露整个审查系统的审查模式;另一方面根据审查系统的特征,针对性地构造数据,致使审查系统无法正常工作。
3.3 匿名通信技术的普及推广
前文提到的洋葱路由是由美国海军研究实验室大力推行的一套匿名通信系统,美军不遗余力地向全球用户推广该项目,就是要在互联网构建可以保护美国在线情报系统的匿名通信系统。洋葱路由的用户越多,美国的在线情报就越安全。
我国电子政务网络、军事情报指挥网络的设计思路依然停留于构建与互联网物理隔离的专用网络,采用专线、专用加密设备和专用加密算法,虽然看上去极难从这些网络窃取信息,但实际上却极易辨认。当攻击方通过间谍行为接入这些专用网络时,可以百分之百地获取到敏感信息。
目前重要信息的保护主要还是依赖于密码技术,通过信源加密、链路加密等手段保护敏感信息在网络中的传输。然而,具有针对性的审查能够从行为特征、流量特征、目的地址等方面轻松截获信息,同时随着密码破译能力的不断提升,这些信息被破译也只是时间问题。
引入匿名通信技术,可以有效解决以上问题,普及匿名通信技术对于该技术的进一步发展和研究有着重要意义。当一种匿名通信技术被普及后,随着用户数量的增加,其匿名集合中的元素就不断地增加,匿名集合包含的元素越多,各元素的匿名性也就越强,匿名系统的匿名性也就越强,这正符合“大隐隐朝市”的思想。
4
结 语
匿名通信技术虽然已经在海外发展多年,但是国内对这方面的研究还处于萌芽阶段,即使现有的尖端技术也不足以对抗审查。匿名通信技术缺乏系统的理论基础,也缺少相关领域科研人员和机构的重视,本文虽对各类匿名通信技术进行了剖析,并提出了该技术的发展思路,但仍缺乏有效验证。未来将围绕所提出的发展方向,形成新型匿名通信技术的设计方案,并加以验证。