Teredo是否会为企业带来安全风险

日期: 2010-03-04 作者:Ed Skoudis翻译:Sean 来源:TechTarget中国 英文

问:Teredo的漏洞是否会导致其在使用中出现安全隐患?   答:当Teredo应用在企业环境时,这使我感到害怕——仅仅是因为它所具备的功能。对不熟悉技术的人来说,由微软倡导的Teredo是在IPv4的端口上使用UDP数据报建立IPv6通信隧道的技术,正如RFC4380中所定义的那样。   Teredo允许内部网络过渡到IPv6, 通过它们的NAT设备互相连接并跨越IPv4的因特网。听起来很简单,不是吗?那么,在这里我将讨论一些企业需要重点关注的安全问题。

  在Teredo之前,许多组织在因特网上实验过网络到网络的IPv6连接,而且是使用IPv6-to-IPv4网关来实现的。下面是常见的情景……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

问:Teredo的漏洞是否会导致其在使用中出现安全隐患?

  答:当Teredo应用在企业环境时,这使我感到害怕——仅仅是因为它所具备的功能。对不熟悉技术的人来说,由微软倡导的Teredo是在IPv4的端口上使用UDP数据报建立IPv6通信隧道的技术,正如RFC4380中所定义的那样。

  Teredo允许内部网络过渡到IPv6, 通过它们的NAT设备互相连接并跨越IPv4的因特网。听起来很简单,不是吗?那么,在这里我将讨论一些企业需要重点关注的安全问题。

  在Teredo之前,许多组织在因特网上实验过网络到网络的IPv6连接,而且是使用IPv6-to-IPv4网关来实现的。下面是常见的情景:

  比方说,两个组织在他们的内部网络上部署了IPv6。 毫无疑问,在同一内网中,某一子网上的IPv6设备能够与其它IPv6设备通信。然而,在Teredo出现之前,通信会穿越庞大、通信状况糟糕的IPv4因特网,需要每个组织部署一个IPv6-to-IPv4网关,该网关将会对协议进行转换。在一个内部网络中,一台机器将会构造发往内网中另一系统的IPv6数据包,而网关会为IPv4数据包中的IPv6数据包建立隧道,并把它们发送到因特网上。 一旦被其它子网接收到,这些数据包将会被另一个网关解封,该网关从IPv4中提取IPv6数据包,并将其发送到IPv6的目的地。

  在一个端主机(end-host)系统中,Teredo不需要IPv4-to-IPv6网关就能实现封装,IPv6数据包会被放入UDP数据包中,再通过IPv4发送到目的系统。Teredo被用于NAT间的通信,只要IPv4上的UDP数据包能够在两个需要进行IPv6通信的系统间发送就行。

  这对企业来说意味着什么?如果没有Teredo,网络管理者将不得不安装和配置IPv6-to-IPv4 网关,这或许会增强他们对攻击的抵抗能力,但所有的隧道功能这时都交给了端系统,使得对于网络安全的保护变得更加困难。在内部网络中,任何具有Teredo功能的系统只要能够接收UDP数据包,就能成为IPv6隧道中的一个端点,此时任何绑定到系统IPv6地址上的应用程序便会暴露出来。

  在你的网络内部,一个装有Teredo的系统甚至可以成为IPv6中的VPN端点,而这有可能会允许攻击者发送随机的IPv6数据包到目标机上,而且可以从该机器为路由到内部网络中的其它地方。赛门铁克的安全专家James Hoagland描述了这些攻击,并在近期的一篇文章中做了更详尽的描述。

  如果Teredo默认是关闭的,那么它也不会带来什么问题。然而,Windows Vista绑定的IPv6和Teredo都是自动开启的,就我看来这明显是个无赖的行为。而Windows Server 2008支持IPv6, 但它的Teredo是关闭的。

  为了避免遭受基于Teredo隧道或者其他相关的攻击,你首先需要在网络防火墙上阻止随机的UDP数据包,尤其是Teredo默认端口UDP 3544上的输入输出通信数据。请注意,只有Teredo服务会监听该端口。客户端发送通信数据到目的地使用的都是任意高编号的UDP端口, 所以你真正要考虑的是去封锁所有到达或来自UDP3544的通信,并阻止Teredo客户端和服务器使用它。当然,各种黑客也可以使通信流量从其他端口进来。接下来,你应该做的是确保Windows主机上的个人防火墙支持IPv6过滤并且已被开启。虽然自带的Windows个人防火墙提供了这种支持,但是其它许多产品则没有。最后,你可以在端系统中运行带有恰当选项的’netsh’命令来关闭Teredo,或者在Windows注册表进行设置,这两种方法在一篇微软的文章中都有介绍。不过,我建议你在不使用Teredo时还是关闭它为好。

翻译

Sean
Sean

相关推荐