在2012年6月6日全球IPv6启动日,很多公司都为其产品和服务启用了IPv6协议,这也让我们有机会验证IPv6安全性的误解。人们普遍认为,因为IPv6增加的地址空间,从攻击者的角度来看,IPv6主机扫描攻击将需要花很多时间和精力,使得攻击几乎不可能。然而,事实并不是这样。通过分析IPv6地址在互联网上进行配置的方式,本文将介绍IPv6攻击可行性的真实情况分析。
IPv6不可战胜的神话
IPv6比IPv4有更大的地址空间。标准IPv6子网(在理论上)可以容纳大约1.844 * 1019 个主机,因此其主机密度要比IPv4子网低得多(即,子网中主机数与可用IP地址数量的比率较低)。
因为IPv6地址空间数量如此巨大,很多人认为IPv6将使潜在的攻击者很难对IPv6网络执行主机扫描攻击。有些人估计对单个IPv6子网的主机扫描攻击可能需要5千万年!
在IPv4互联网中的主机扫描攻击
在深入分析IPv6主机扫描攻击的细节之前,让我们来看看在IPv4互联网中,主机扫描攻击是如何执行的。IPv4的地址空间数量有限,整个IPv4地址空间(在理论上)由 232 个地址组成,IPv4子网通常有256个地址。因此,在典型的IPv4子网中,主机密度相对较高。IPv4主机扫描攻击通常是按照以下方式执行的:
• 选定一个目标地址范围
• 发送一个测试数据包到该范围内的每一个地址
• 每个响应的地址都被认为是“可用的”
由于典型的IPv4子网的搜索空间比较小(通常是256个地址),并且这种子网的主机密度很高,对于大多数攻击者而言,在目标网络中按顺序尝试每个可能的地址已经足以发动攻击。
在IPv6互联网中的主机扫描攻击
有两个因素使IPv6的主机扫描攻击比IPv4的攻击更加困难:
• 典型的IPv6子网比IPv4子网更大(IPv6为264 个地址,而IPv4为256个地址) 。
• IPv6子网的主机密度比IPv4子网主机密度低得多
由于这两个因素,在目标IPv6子网中,按顺序试探每一个地址是不可行的,无论是从数据包/带宽的角度来看,还是从执行攻击需要的时间来看。
击破IPv6安全神话
然而,IPv6主机扫描攻击并非如此繁琐和费时。我们需要认识到,IPv6主机地址并不是随机分布在这相应的256个子网地址空间中,这意味着攻击者在试图确定“可行”节点时,实际上并不需要扫过整个子网地址空间。了解IPv6地址生成或者配置的方式,就明白了这种地址分配是非随机的。
IPv6地址选择
下图显示了IPv6全球单播地址。
IPv6全球单播地址,顾名思义,是用于互联网通讯的IPv6地址(而不是,比方说,仅用于本地子网内通讯的本地地址)。它类似于IPv4:全球路由前缀通常由上游供应商分配,本地网络管理员将组织网络分成多个逻辑子网,而接口ID(IID)用来确定该子网中的特定网络接口。
(责任编辑:)