且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

《IPv6安全》——1.1 重温IPv6

更新时间:2022-09-02 08:04:19

本节书摘来异步社区《IPv6安全》一书中的第1章,第1.1节,作者:【美】Scott Hogg , Eric Vyncke,更多章节内容可以访问云栖社区“异步社区”公众号查看

1.1 重温IPv6

IPv6安全
Internet工程任务组(IETF)是负责定义Internet协议标准的组织。当IETF开发IPv4时,没有想到Internet的全球扩展和当前的Internet安全问题。在IPv4的原始设计中,网络安全仅给以最低限度的考虑。在20世纪80年代,当IPv4正在开发之时,“Internet”是由若干协作的组织构成的。随着IPv4发展成熟和20世纪90年代发生Internet爆炸,Internet威胁变得日渐其多。如果当初IPv4开发之时可以预测到Internet威胁的当前环境,那么这个协议将会把更多的安全措施集成到其设计之中。

在20世纪90年代,IETF意识到将需要IP的新版本,并通过起草新协议需求而开始了任务组的工作,这形成了IP下一代(IPng),后来成为IPv6(RFC 1883)。IPv6是IPv4之后的第二个网络层标准协议,用于Internet和

其他计算机网络间的通信。IPv6提供数项令人感叹的功能,是Internet协议演进中真正的新协议。这些改进是以如下方式出现的:增加的地址长度、高效的首部格式、可扩展的首部和保留通信机密性和完整性的能力。1998年末,RFC 2460对IPv6协议进行了完全的标准化,其中定义了首部结构。现在IPv6已经准备好克服当前IPv4中的许多缺陷,并形成IPv4不支持的新的通信方式。

1.1 重温IPv6

IPv6提供了优于其前任(IPv4)的数项改进。在有关IPv6的许多其他书籍中详细描述了IPv6的优势。下面汇总了IPv6的特征以及它所提供的改进措施。

较大的地址空间:将地址长度从32位增加到128位。
高效的协议首部:提高了数据包转发效率。
无状态自动配置:为节点提供确定其自身地址的能力。
多播:增加了高效使用的一对多通信能力。
超大型数据包:为了较高的效率,提供巨型数据包负荷的能力。
网络层安全:通信的加密和认证鉴权。
服务质量(QoS)能力:数据包和流标签的QoS标记,用以识别具有优先级的流量。
任意播:使用非唯一地址的冗余服务。
移动性:更简单地处理移动或漫游节点。
注释

记住如下IPv6术语。

一个节点是以IPv6进行通信的任意系统(计算机、路由器等)。
一台路由器是能够路由选路并转发IPv6数据包的任意三层设备。
一台主机是一个节点,可以是计算机或非路由器的任何其他类型接入设备。
一条数据包是三层消息,源于一个IPv6节点,目的地为另一个IPv6地址。
在IPv6部署过程中,要求之一是这种新协议必须具有灵活的迁移机制。网络应该易于在数年间逐步地迁移到这种新协议。因为IPv6将变得非常流行,所以迁移需要是缓慢的和有条不紊的。

同时运行IPv4和IPv6,称为双栈,这也是是主要的迁移对策之一。这个概念描述如下场景:一台路由器支持两种或多种不同的路由协议,并互不干扰地转发不同类型的流量。经验丰富的网络工程师将会回忆起“独立运行路由选路”的概念。这个概念指这样的事实,来自每种协议的数据包可相互通过而不相互影响。因为“双栈”可能会是一种占主导地位的迁移对策,所以运行这两种协议的网络会暴露于这两种协议存在的各种攻击之中。攻击也是发展的,它会利用IPv4和IPv6中弱点的组合实施攻击。

除了双栈之外,迁移到IPv6还包括各种类型的隧道方法,即在还没有迁移到IPv6的IPv4网络上承载IPv6。可能存在对迁移机制本身的攻击,因为这可能获得一个网络的IPv4或IPv6部分的接入访问能力。在当前和未来的网络及系统上被允许支持IPv6之前,人们必须评估IPv6系统的安全性。

IPv6和IPv4都是网络层协议,因此网络层的许多弱点是类似的。但是,无论对于哪个IP版本而言,在IP层之上和之下的协议层仍然是相同的,所以存在的多数攻击将不会改变。因为这两个协议是相关的,所以这两种协议之间的相似性会产生类似的攻击模式。IPv6可在一些方面改善安全性,但在其他方面,它对新威胁也是开放的。第2章的讨论重点放在针对IPv6协议自身的攻击上,并描述了应对这些攻击的方式。

自1998年12月IETF发布RFC 2460以来,IPv6一直在持续演进。随着可用IPv4公用地址数量的减少,IPv6变得更具吸引力。事实上,IPv6是这个IP地址耗尽问题的唯一可行的解决方案。当前IPv4网络中的许多问题与地址预留有关。例如,长期使用网络地址转换(NAT)和双重-NAT就不是Internet扩展的一个真正的长期对策。

如今,在Internet上的用户身份经常是未知的,这就产生了攻击者容易操作的一个环境。匿名化工具(例如Tor和开放代理)以及NAT的使用,允许用户隐藏他们的源IP地址,并在被攻击目标不知情的情况下,实施攻击。因为NAT隐藏了内部地址,所以NAT经常被误解为一种安全保护措施,从而使内部网络拓扑处于混乱状态。许多网络管理员错误地理解了安全的含义,并将太多的信赖放在NAT上。其实NAT破坏了完全的端到端通信模型,而这个模型恰是IP安全(IPSec)的基础,有了它IPSec才能完全发挥作用。执行NAT功能的防火墙难以在故障倒换期间维护NAT的状态。对流经一个NAT的应用流量进行排错也经常是困难的。使用IPv6,因为存在大量可用地址,所以就不必使用NAT。每个节点都有唯一的地址,它能够使用那个地址进行内部通信和外部通信。

在核心层、分发层和接入层都支持双栈之后,计算机系统自身就可以支持IPv6。这样,系统管理员就可以在支持IPv6的节点之间启用IPSec隧道,在系统之间提供通信的机密性和完整性。这提供了比当前未加密IPv4更高等级的安全能力。IPSec部署采用了认证和加密,如今在计算机到计算机的通信中很少使用。因为NAT阻止认证首部,所以如今使用IPSec的常见方法是仅加密隧道模式中的负荷。但是,关键系统之间的通信可以有选择地采用IPv6 IPSec,使用认证和加密实施安全保障。第8章提供了如何保障IPv6通信安全的细节。因为当IPv6能够为每个节点提供一个全局唯一的IP地址时,就不需要NAT,所以IPv6可以唯一地提供这种清晰的端到端的安全通信。