IPv6安全机制论述

目  录

1 IPv6安全隐患.. 1

1.1 IPv6安全技术简介… 1

1.1.1 IPv6安全技术的历史背景… 1

1.1.2 IPv6安全技术的特点… 1

1.2 IPv6安全隐患… 2

1.2.1 IPv4向IPv6过渡技术的隐患… 2

1.2.2 IPv6中组播技术缺陷的隐患… 3

1.2.3 邻居发现协议的隐患… 3

1.2.4 邻居发现协议的隐患… 3

2 方法措施.. 5

2.1 应对IPv6安全隐患的措施… 5

2.1.1 加大防护技术的研究投入… 5

2.1.2 加快信息安全产品研制。… 5

3 技术实现.. 6

3.1 IPv6认证… 6

3.1.1 IPv6身份认证的实现… 6

3.1.2 层次移动IP接入认证设计… 6

3.2 IPv6加密技术过程… 8

3.2.1 IPv6加密分析… 8

3.2.2 IPv6验证与加密的结合分析… 8

4 结论与展望.. 10

1 IPv6安全隐患

1.1 IPv6安全技术简介

1.1.1 IPv6安全技术的历史背景

以IPv4为核心技术的Internet获得巨大成功,但随着网络技术的飞速发展,IPv4地址资源的枯竭,以及其固有的局限性无法满足网络发展的需求,也带来了一些问题,比如现有的IPv4地址匮乏、服务保障问题等。自从2017年《推进互联网协议第六版(IPv6)规模部署行动计划》发布以来,经过数年的努力,我国电信网络基础设施IPv6改造已全面完成。目前IPv6正在政府部门的推动下大规模部署,中国也拥有了IPv6根服务器。截至2019年7月,全国已有12.78亿用户获得IPv6地址,主要互联网应用活跃用户数已达2.01亿户。政府网、政务网、中央媒体、中央企业网站和各大门户网站均已实现IPv6升级改造,已能支持IPv4和IPv6访问,各行业内网升级改造也正逐步展开。我国将长期处于IPv4和IPv6的混合环境之下,从而也带来了新的安全挑战,新形式下的风险防范亟待关注,如何做好新环境下的安全防护,也将是今后的重要课题。

1.1.2 IPv6安全技术的特点

(1)地址空间大

这是 IPv6 最大的特点,IPv6 地址一共有 128 bit。作为对比,IPv4 仅有 32 bit;如果要直观体现 128 bit 究竟大了多少的话,IPv6 的地址数量等于 IPv4 地址数量再乘以三个 42 亿。这就是为什么有人敢说 IPv6 可以为每一粒沙都分配 IP 地址的原因。

(2)精简报文结构

IPv6 的报文结构相比 IPv4 精简了许多。IPv4 的报文长度不固定,且有一个变化无常的 option 字段来实现一些功能;IPv6 在此前提下长度固定,且将 option 字段、分片的字段的功能转移到 IPv6 扩展报头中。这就极大的精简了 IPv6 的报文结构,更多的功能通过添加不同的扩展报头来实现。

(3)实现自动配置和前缀重新编址

在 IPv6 网络环境中,路由器会通告自身接口的前缀信息给终端设备;终端设备通过 IPv6 前缀,然后自己通过计算生成接口标识就可以为自己生成一个可用的 IPv6 地址,同时还会将路由作为自己的默认网关。就算这时需要将已经获得 IPv6 地址的终端设备移动到另一个网段的网络接入,那终端设备也可以通过上述过程自动更改自己的 IPv6 地址。

(4)支持层次化网络结构

IPv6 不再像 IPv4 一样按照 A、B、C等分类来划分地址,而是通过IANA->RIR ->ISP 这样的顺序来分配的。

IANA 是国际互联网号码分配机构,RIR是区域互连网注册管理机构,ISP是一些运营商(例如电信、移动、联通)。IANA 会合理给五个 RIR(我们所在区域的机构是 APNIC 亚太网络信息中心) 来分配 IPv6 地址,然后五个 RIR 再向区域内的国家合理配置地址,每个国家分配到的地址再交给 ISP 运营商,然后运营商再来合理的分配资源给用户。

在这个分配过程中将能够尽力避免出现网络地址子网不连续的情况,这样可以更好的聚合路由,减少骨干网络上的路由条目。

(5)更好的支持 QoS

IPv6 通过两个方面来更好的支持了 QoS:优先级字段有 6 bit 可以用作优先级表示,可以表示64个不同的优先级。新增的流标签字段可以配合源地址、目的地址来定义一条数据流。早期流分类要通过源IP、目的IP、源端口、目的端口、协议五元组才能定义一条数据流,而这个定义过程需要拆封装到传输层才可以定义。有了流标签字段以后,可以直接通过网络层的信息就可以实现流分类,这样就大大地提高了流分类的效率。

(6)原生支持端到端的安全

IPv6 的扩展报头中有一个认证报头、封装安全净载报头,这两个报头是 IPsec 定义的。通过这两个报头网络层自己就可以实现端到端的安全,而无需像 IPv4 协议一样需要其他协议的帮助。

(7)支持移动特性

IPv6 支持终端设备移动的特性,顾名思义就是在终端设备移动到另一个网络环境中也可以快速恢复通讯(这还是概念,在实验中。未正式投入使用)。比如一个主机从网络A环境中迁移到了网络B环境中,主机通过前缀重新编址得知自己的网络位置,于是乎向以前的网关路由器发送报文来通告自己的新地址。以前的网关路由器只要收到发给主机的数据就会截获并发送到主机的新地址;主机收到数据之后就会知道有人想与自己通信,就会给这个数据的源地址发送一个报文,通告自己现在的新地址。这样主机就算迁移了到了新的网络环境也可以实现流量不断的能力。

1.2 IPv6安全隐患

1.2.1 IPv4向IPv6过渡技术的隐患

从协议本身来看,IPv6 与 IPv4 并没有太大的区别:它 是一个无连接的网络协议,使用与 IPv4 相同的下层服务, 并向上层提供相同的服务。双栈机制安全风险

(1)过渡期间双栈部署的网络中同时运行着 IPv4、IPv6 两个逻辑通道,增加了设备/系统的暴露面,也意味着防火墙、安全网关等防护设备需同时配置双栈策略,导致策略管理复杂度加倍,防护被穿透的机会加倍。IPv4 网络中,部分操作系统缺省启动了 IPv6 自动地址配置功能,使得 IPv4 网络中存在隐蔽的 IPv6 通道,由于该 IPv6 通道并没有进行防护配置,攻击者可以利用 IPv6 通道实施攻击。此外,双栈系统的复杂性也会增加网络节点的数据转发负担,导致网络节点的故障率增加。

(2)隧道机制安全风险在隧道环境下,部分隧道机制仅要求隧道出入口节点对报文进行简单的封装和解封,缺乏内置认证、加密等安全功能,导致攻击者可能截取隧道报文,伪造用户地址并伪装成合法用户发起攻击。以 IPv6 Over IPv4 为例,攻击者可伪造内层、外层地址发起仿冒攻击等安全风险。此外,由于部分隧道机制未采取对隧道封装内容的检查,因此,攻击者可将 IPv4 流量承载在 IPv6 报文中,导致原来 IPv4 网络的攻击流量经由 IPv6 的“掩护”后穿越防护造成威胁。

(3)翻译机制安全风险

翻译机制(协议转换)是为 IPv6 网络节点与 IPv4 网络节点相互通信提供透明的路由。翻译设备作为 IPv6 与 IPv4互连节点,易成为安全瓶颈,面临地址池耗尽等常见 DDoS攻击威胁,攻击者可通过伪造大量 IPv6 地址向翻译节点发起地址转换请求,消耗地址池 IPv4 资源,同时导致合法用户无法获取 IPv4 地址,进而引发 IPv4 网络无法正常访问,导致网络瘫痪。

双协议栈会带来新的安全问题,对于同时支持IPv4和IPv6的主机,黑客可以同时用两种协议进行协调攻击,发现两种协议中存在的安全弱点和漏洞,或者利用两种协议版本中安全设备的协调不足来逃避检测,而且双协议栈中一种协议的漏洞会影响另一种协议的正常工作。由于隧道机制对任何来源的数据包只进行简单的封装和解封,而不对IPv4和IPv6地址的关系做严格的检查,所以隧道机制的引入,会给网络安全带来更复杂的问题,也较多的出现安全隐患。

1.2.2 IPv6中组播技术缺陷的隐患

组播报文是通过UDP(用户数据报协议)进行传输的,所以它缺乏TCP(传输控制协议)所提供的可靠传输的功能。组播的开放性使通信数据缺乏机密性和完整性的安全保护,而IPv6组播所需的MLD等组播维护协议不能满足安全的需要。IP组播使用UDP,任何主机都可以向某个组播地址发送UDP包,并且低层组播机构将传送这些UDP包到所有组成员。由于在IPv6组播通信中,任何成员都可以利用MLD报文请求临近的路由加入组播群组,组播加入成员的约束机制很匮乏,无法保证通信的机密性,因此,对机密数据的窃听将非常容易。

1.2.3 邻居发现协议的隐患

在自动地址配置中,邻居发现协议(NDP)是基于IP的协议结构,用来完成邻居可达性检测、链路地址解析、路由及网络前缀发现、流量重定向等链路机制。报文身份的可鉴别性是NDP协议的主要安全需求,而哄骗报文攻击是其所而临的主要安全威胁。攻击者只要仿造节点不可达信息和重复地址检测,进行DoS攻击,或者传播虚假的路由响应和重定向报文,就能诱骗网络流量。

1.2.4 邻居发现协议的隐患

1.针对密码的攻击,对一些老版本的操作系统,有的组件不是在验证网络传输标识信息时进行信息保护,于是,窃听者可以捕获有效的用户名及其密码,掌握合法用户权限,进入机器内部破坏。

2.针对密钥的攻击,IPv6下,IPSec的两种工作模式都要交换密钥,一旦攻击者破解到正确的密钥,就可以得到安全通信的访问权,监听发送者或接收者的传输数据,甚至解密或窜改数据。

3.加密耗时过长引发的DoS攻击,加密需要很大的计算量,如果黑客向目标主机发送大规模看似合法事实上却是任意填充的加密数据包,目标主机将耗费大量CPU时间来检测数据包而无法回应其他用户的通信请求。

2 方法措施

2.1 应对IPv6安全隐患的措施

2.1.1 加大防护技术的研究投入

1.从IPv6协议的自身特点来看,容易受到分片攻击、邻居发现协议攻击、扩展头攻击等,应针对各种攻击类型的特点开展攻击原理分析、攻击检测、攻击防御、攻击解决方案研究。

2.在IPv4向IPv6演进的过程中,应将过渡机制与安全问题结合起来,实现平滑、无缝、安全的过渡技术,进行新的安全体系设计。

3.在新技术新应用结合方面,应开展IPv6环境下移动互联网、物联网、云计算等领域网络安全技术、管理及机制研究工作,如移动互联网下应关注IPv6的移动性安全管理,物联网中应关注IPv6在感知层应用的安全问题,云计算方面应关注基于IPv6的云计算平台安全解决方案等问题。

2.1.2 加快信息安全产品研制。

应对现有网络安全保障系统进行升级改造,提升对IPv6地址和网络环境的支持能力。根据《行动计划》的要求,各种安全产品应增强IPv6地址精准定位、侦查打击和快速处置能力,同时应开展针对IPv6的网络安全等级保护、个人信息保护、风险评估、通报预警、灾难备份及恢复等工作。

3 技术实现

3.1 IPv6认证

3.1.1 IPv6身份认证的实现

IPv6下身份认证的实现主要是通过其数据报的AH头。设计认证头部(AH)协议的目的是用来增加IP数据报的安全性。AH协议提供无连接的完整性、数据源认证和抗重放保护服务。数据完整性特征保证在传输过程中对数据报内容的修改都可以检测出来;认证特征使得终端系统或网络设备能够认证用户或应用的身份并相应地过滤通信量,它也可以防止在今天的Internet上可以观察到的地址欺骗攻击,AH还能对付重放攻击。然而,AH不提供任何保密:它不加密所保护的数据报。AH的作用是为IP数据流提供高强度的密码认证,以确保被修改过的数据报可以被检查出来。

图1-2 AH报文头

3.1.2 层次移动IP接入认证设计

    层次移动IPv6引入移动锚点(MAP),作用如同一个本地家乡代理,它将代表其所服务的移动节点接收所有数据包,并将这些数据包封装后直接转发至移动节点的当前地址。如果移动节点在本地MAP域中更改其当前地址(即在线转交地址(LCOA)),只需在相应的MAP注册新的LCOA。因此,移动节点在对端节点或家乡代理注册本地转交地址(RCOA)后,如果移动节点在一个MAP域中移动,则LCOA不发生改变。这使移动节点的移动对于与其通信的对端节点是透明的。

在无线链路情况下,层次移动IPv6可以减少通过空中接口发送到通信对端或家乡代理的消息数目。移动锚点的引入有利于移动IPv6协议减少与外部网络之间的移动信令传输。

采用DHCPv6协议作为接入认证方式,在DHCPv6 Request消息中添加用户名和密码选项来传送认证信息。

在层次移动IP的启动过程中,当MN收到路由通告,发现与自己的路由缓存中维护的路由前缀不一样时,发送一个信号量启动DHCPv6客户端子进程,开始接入认证过程。在DHCPv6协议中创建用户名、密码和认证失败选项,在填充选项内容时,用户名和密码通过对MN的配置文件进行读取操作,由AAA服务器预先分配给用户。

在获取密码后通过标准的DES加密算法对原始密码采用双方协商好的密钥进行加密。由于DES只能对不大于8字节的字符进行加密,所以在加密过程中先计算原始密码的长度,如果小于或等于8字节则直接进行加密;如果大于8字节则截取前8个字节进行加密,再对剩余的字节进行相同的加密过程,把生成的密码拷贝到密码选项中。为了简化运算,在该文中默认密码字节不大于16字节,一般能满足实际运用。

在客户端消息选项中,添加用户名和密码选项的标识,通过标识对相应的选项进行处理。当客户端在构建Request消息时,把定义好的用户名和密码标识通过系统函数添加到Request消息中,完成后发送该消息给服务器。

DHCPv6服务器端收到Request消息后,通过switch语句对标识进行处理,获取选项中的用户名和密码密文字符,其中通过DES解密算法对收到的密文使用原先加密用的密钥进行解密。假如密文大于8个字节,则先对前8个字节进行解密,之后在对剩余的字节进行解密。把解密好的密码和用户名通过字符读取操作存到AAA的配置文件中。

完成后在DHCPv6服务器创建子进程来启动AAA客户端程序,并且构造Reply报文,在其中创建一个消息队列来等待接收AAA客户端认证完成后返回的认证结果。如果收到认证成功标识,则从地址池中获取一个合法地址添加到该消息选项中完成后发送Reply消息。并且将MN的MAC地址和IP地址发送到包过滤器的访问控制列表(ACL)中;如果收到认证失败标识,则在构造的Reply消息中添加一个认证失败信息选项,该认证选项标识为OPTION_AUTH_FAIL。将认证失败信息添加到该选项中,并且删除准备分配给客户端的合法地址选项,完成后发送Reply消息。

MN对收到的Reply报文进行判断,使用switch语句对消息中各选项进行处理。如果认证成功则含有地址选项标识,从中获取合法地址分配给接口使用,MN可以使用当地网络提供的服务或者完成切换绑定认证[5]过程。如果认证失败,不含有地址选项,而含有OPTION_AUTH_FAIL选项,MN可以获取该选项中相应的出错信息,进行再次认证或是退出该网络。

3.2 IPv6加密技术过程

3.2.1 IPv6加密分析

    ESP,也就是IPv6当中的封装安全载荷,它的出现主要是为了实现IPv6与IPv6间混合业务的安全实现。其主要的工作流程是,ESP对所有的数据以及加载进行的舍监地严格的加密.提高其传输的机密性,从而达到避免无关用户对正在进行交换的信息进行监听的现象,只有可依赖的用户通过密钥方式才能够打开相关传输内容.另外,ESP在数据的完整性方面也有一定的贡献,DES(数据加密标准)是ESP的主要标准。

3.2.2 IPv6验证与加密的结合分析

使用AH与ESP是对一个IP数据包进行数据机密性、真实性与完整性提供的最初概念,所说在说,在设想范围之内,两个扩展报头会在许多不同的情况之间被同时使用,就会使得IP数据包的整体规格变大。这样一来,验证功能就会在ESP的报尾得到额外的嵌入,从而对ESP的序列号和有效载荷提供一种保护。所以说,在验证与加密的问题上,协议的研制者还存在关个待解决的问题,那就是同时使用AH与ESP和单单使用ESP报头的选择性问题,特别需要强调的是ESP的报伪可以为数据提供个验证功能。但是,无论是哪一种选择,在传输与隧道模式当中,进行数据传输之时,与AH与ESP的组合使用并无关系,esp头如图1-4所示。

 

4.结论与展望

为了满足广域网络的灵活组网、按需服务、差异化保障、网络可视化等需求,出现了以 SRv6(网络基础隧道)、VPN+/Slicing(网络分片)、Detnet(确定性网络技术)、iFIT(随路流检测技术)、BIER6、APN6(应用感知网络)等协议为代表的IPv6+ 技术体系。这个技术体系实现网络统一部署、灵活编程、任意扩展,并支持网络可视、应用感知、弹性分片等能力,将成为下一代互联网部署的核心技术。

IPv6 不是下一代互联网的全部,而是下一代互联网创新的起点和平台。随着 IPv6 的规模部署,以 SRv6 为代表的 IPv6+ 技术将在网络中广泛应用,形成像 MPLS 一样的一个时代,构建出自动化、可承诺的下一代网络,推动云业务的迅速发展的同时,助力企业数字化转型加速。