网络安全 频道

IPv6防火墙安全:新协议带来的问题

  【IT168 应用】企业在广域网(WAN)中部署 IPv6,接着也会部署IPv6防火墙。本文介绍了一些由IPv6引起的安全问题,以及IT专业人员在部署和运营IPv6防火墙时应该考虑的问题。

  引入IPv6防火墙

  大多数企业网络的第一道防线都是防火墙,它用于防御公共互联网攻击,限制本地用户的公共互联网访问。在企业网络部署IPv6之后,也会部署IPv6防火墙,这样目前IPv4实施的安全策略也会在IPv6中实施。

  虽然IPv6和IPv4各自提供的服务(非常好的的数据报文服务)非常相似,但是这两种协议之间存在一些细微差别,这对防火墙设备和操作会影响很大。本文将介绍它们之间的差别,以及它们如何影响IPv6防火墙设计和操作。然后还会说明这些差别可能如何被恶意利用,以减少和消除IPv6防火墙的安全漏洞。

  IPv6头结构

  IPv6的一个主要变化是采用固定长度的协议头,而不像IPv4那样采用可变长度协议头。任何必要的选择都必须加到后续的扩展头中,扩展头位于固定的IPv6头和封装的IPv6上层协议之间。它会根据处理选项的不同系统而采用不同的扩展头。例如,需要在目标主机中处理的选项会包含在一个“目标选项”头信息中,而由路由器处理的选项则会包含在一个“跳间选项”头信息中。理论上,这至少能够让路由器和主机解析、处理归它们的选项——而IPv4则不同,处理数据包的所有节点必须解析所有的选项。

  这个头结构决定了IPv6头信息链:多个头信息会被依次链接在一起,首先是IPv6头,最后是上层协议。每一个扩展头都包含具体的头长度和下一个头链接的头信息类型。因此,任何IPv6流都会采用完整的IPv6头信息链,然后处理它需要的头信息。下图是IPv6头信息链的示意图。

IPv6防火墙安全:新协议带来的问题
▲图1:IPv6头信息链示例

  分片头是其中一种特殊类型的扩展头,它包含了实现IPv6分片所需要的机制。与IPv4头不同,IPv6不是将所有分片相关信息保存在固定的IPv6头中,而是将这些信息保存在一个可选的分片头中。因此,执行分片的主机只需要在IPv6头信息链中插入一个分片头信息,再添加需要分片的原始数据包。

  IPv6防火墙对安全的影响

  上述IPv6头信息链结构的灵活性优于IPv4,因为它不限制数据包可以包含的数量。然而,这种灵活性也是有代价的。

  任何需要获取上层信息(如TCP端口号)的系统,都需要处理整个IPv6头信息链。而且,由于当前的协议标准支持任意数量的扩展头,包括同一种扩展头的多个实例,因此它会对防火墙等设备造成多种影响:

  • 防火墙需要解析多个扩展头,才能够执行深度数据包检测(DPI),它可能会降低WAN性能,引发拒绝服务(DoS)攻击,或者防火墙被绕过。

  • 组合扩展头和分片可能妨碍数据包检测。

  正如前面介绍的,由于当前的协议规范支持任意数量的扩展头,包括同一种扩展头类型的多个实例,因此防火墙必须能够细致地处理包括异常的多IPv6扩展头信息的数据包。而这可能被一些攻击者利用,他们可能故意在数据包中加入大量的扩展头,使防火墙在处理上述数据包时浪费过多资源。最终,这可能会引起防火墙性能下降,或者造成防火墙本身出现DoS问题。此外,有一些性能不佳的防火墙在应用过滤策略时,可能无法处理整个IPv6头信息链,从而可能让一些攻击者利用扩展头威胁相应的防火墙。

  IPv6分片也可能被恶意利用,方法与IPv4的类似。例如,为了破坏防火墙的过滤策略,攻击者可能会发送一些重叠的分片,从而影响目标主机的分片重组过程。在IPv6中,这个问题更为严重,因为多个IPv6扩展头和分片的组合可能产生一些错误分片,尽管它们的数据包大小是“正常的”,但是它们丢失了一些实施过滤策略通常需要的基本信息,如TCP端口号。即,数据包的第一个分片可能包含很多IPv6选项,以致上层协议头可能属于另一个分片,而不是第一个分片。

0
相关文章