IPv6可以解决的网络安全问题
IPv6基于它的极大IP地址空间以及对应的协议栈安全设计,可以从根本上解决IPv4网络所面临的扫描泛滥、攻击不可追查、易于遭受DDoS攻击、IP Spoofing攻击无法从根本上杜绝等顽疾。IPv6可以解决的网络层攻击问题如下:
1)实现IP地址管理与源地址检查,解决IPv4下地址不可靠的问题
由于IPv6地址构造是可会聚的(aggregateable)、层次化的地址结构,因此IPv6的路由策略是在协议定义中固化的,不再需要逐条在核心路由器上配置,消除了权威机构把控核心路由对国家安全造成的风险。
IPv6下地址长度很长,不可能再通过人工分配IP,而必须基于自动化的IP地址管理技术。比如:IPv6提供CGA等将地址与用户证书绑定的地址验证机制,可以避免IP地址伪造带来的安全问题。
总之,由于IPv6协议下地址的分配使用严格受控、难以进行地址伪造、易于进行点对点溯源,IPv6可以解决IPv4下基于IP地址伪造的各种攻击,攻击活动更易被追查。
2)消除IPv4下针对复杂IP报文头的攻击
IPv6数据包头由基本头不同类型的扩展报头组成,基本头和扩展头功能明确,固定长度,不允许分片,解决了IPv4下针对包头的碎片攻击。
3)防范基于IPv4广播机制的网络放大攻击(Broadcast Amplication Attacks)
对于类似Smurf这样的攻击类型,在RFC2463中已经有禁止机制阻止此类攻击的发生。ICMPv6取消了广播,从机制上阻止IPv4下的放大攻击。
4)防止已知的碎片攻击
IPv6对于碎片机制具有严格的限制。比如:IPv6认为MTU小于1280字节的数据包是非法的,处理时会丢弃MTU小于1280字节的数据包(除非它是最后一个包),这有助于防止碎片攻击。
IPv6对IPv4下的分片ID的生成机制进行了安全性约束,使得分片ID不能被攻击者预测,从而使得攻击者通过预测Fragment ID,发送伪造的碎片报文以发动攻击的方法在IPv6下不再有效。
5)可有效抵御网络蠕虫攻击
基于网络扫描的传播方式在IPv4环境下普遍而且非常迅速,典型的蠕虫算法可以在30分钟内扫描整个IPv4网络。但同样算法要完成对2的64次方(IPv6子网地址空间)IPv6地址的扫描需要花费数亿年。病毒及网络蠕虫在IPv6的网络中传播将会变得很困难。
6)对DNS域名服务等网络关键基础设施的安全性提供扩展
基于IPv6的DNS系统可作为PKI系统的基础设施,有助于PKI架构在IP网络中的部署,可抵御网上的身份伪装与偷窃。
7)IPsec提供网络层安全通信保障机制
根据RFC4301中的定义,IPsec是IPv6协议中的一个可选部分。IPsec在IPv6中的用途,主要是保证IPsec协议栈自身的安全性,使得IPsec协议可以为诸如OSPFv3、RIPng提供无缝的加密和认证,提高整个IPv6网络抗攻击的能力。
当IPv6的用户使用IPsec协议为用户应用提供安全服务时,用户的使用模式与在IPv4下使用IPsec完全相同。
8)有效防御基于IP的"中间人"等基于IP地址欺骗的攻击方式
IPv6有较为健全的认证机制,如果充分利用,有能力在第一跳阻止恶意设备。如果启用IPv6内增强的端到端鉴别机制,可以最大限度预防中间人攻击;否则中间人攻击依然有效。
9)在IPv6下提供NPT代替IPv4下的NAT,避免基于NAT后的不可溯源
对于需要在IPv6下隐藏内网地址的用户,可以使用IPv6 Network Prefix Translation协议(RFC6296)隐藏内部IPv6地址。
IPv6 NPT技术限制了原本在IPv4 NAT中1:N的地址翻译,只允许1:1的地址隐藏。NPT协议可以保证外部非授权用户无法直接对真实IPv6地址建立连接,同时避免IPv4下传统NAT阻断网络端到端的连通性、使IP溯源困难而产生的安全隐患。