当前位置:数据网络行业动态 → 正文

IPv6更新:在安全和隐私方面有所改进

责任编辑:editor005 作者:Fernando Gont |来源:企业网D1Net  2017-07-04 14:26:34 本文摘自:TechTarget中国

近日,国际互联网工程任务组(也被称为IETF)发布了一套新标准:RFC 8064,《有关稳定IPv6接口标识符的建议》。这个新标准正式更新了14个IETF标准,包括IPv6寻址架构。本质上来看,RFC 8064建议部署和使用RFC 7217以生成稳定IPv6地址。该RFC的发布是先前IPv6寻址安全和隐私方面工作的成果,特别是RFC 7217本身,还有RFC 7707和RFC 7721。

IPv6背景知识

传统算法通过无状态地址自动配置(SLAAC)生成稳定IPv6地址,这种算法被设计为使用底层链路层地址作为地址的接口标识符来生成地址。

随着时间的推移,人们已经意识到通过IPv6地址执行主机跟踪的风险。由于MAC地址通常为独一无二,并且它们被嵌入在IPv6地址中,所以主机标识符容易由IPv6地址泄漏。为了应对这个问题,IETF发布了针对临时地址的标准,这些临时地址通常与传统(稳定)IPv6地址一起使用。然而,尽管临时地址可帮助缓解主机跟踪的特定向量,但IPv6主机跟踪的其他向量以及传统地址扫描机制的漏洞等问题仍然未被解决。

IETF在IPv6地址安全和隐私方面不断努力,最终发布了一个提案,以替代传统算法来生成IPv6地址。不过,这个IPv6更新提案在相关IETF工作组(被称为6man)被推迟。6man工作组决定将所提出的算法作为RFC7217发布,但不会正式取代传统SLAAC算法。这意味着没有正式更新IETF标准。

虽然RFC7217的发布是IPv6更新,但没有任何标准推荐或者强制执行其部署和使用,因此,当时传统SLAAC算法仍然是生成稳定IPv6地址的推荐方法。

随后,有关IPv6地址安全和隐私的两个RFC的发布(即RFC 7707和RFC 7721)为IETF采取最后一步奠定了基础,即让RFC 7217中提到的算法取代传统SLAAC算法。

这最终在2017年2月发布RFC 8064得以实现,该RFC建议部署和使用RFC 7217生成稳定地址,并建议不要使用在IPv6地址嵌入链路层地址的任何地址生成机制。

语义模糊的接口标识符

RFC 7217 IPv6更新指定了算法来生成IPv6接口标识符(以及IPv6地址),在相同网络内稳定,但随着节点从一个网络移动到另一个网络而发生变化。该算法可用以下表达式来总结和体现:

IPv6_IID = Hash(Net_Prefix, Net_ID, Net_Iface_ID, Secret_Key)

其中:

Hash():加密安全哈希函数

Net_Prefix:本地路由器发布的IPv6前缀

Net_ID:可选网络标识符,例如WiFi网络的服务集标识符

Net_Iface_ID:底层网络接口的标识符(例如网络接口名称)

Secret_Key:秘密值,通常在系统安装期间作为随机值初始化,并在重新启动时保持不变

基本上来说,IPv6接口标识符是通过对多个参数连接计算安全散列来获得,最常见的是本地路由器(Net_Prefix)和秘密密钥(Secret_Key)公布的网络前缀。

只要节点保持在相同网络,它将维护和配置相同的IPv6地址,这是因为散列函数的所有参数保持不变。另一方面,由于网络前缀会改变,所以一旦节点连接到不同的网络,IPv6接口标识符将会改变。同时,如果节点返回到之前连接的网络,它将配置与之前相同的IPv6地址,因为用于计算该IPv6接口标识符的所有参数都将与原来情况相同。

部署IPv6更新

截至本文发稿时,至少存在以下RFC 7217部署:

Linux kernel v4.0;

NetworkManager v1.2.0-0.3.20151112gitec4d653.fc24;

dhcpcd 6.4.0; 以及

macOS Sierra.

Linux内核部署是第一个RFC 7217部署,因此,也可作为参考部署。然而,Ubuntu以及Fedora等最受欢迎的Linux版本使用NetworkManager应用程序包进行网络配置而部署依靠内核。自1.2.0-0.3.20151112gitec4d653.fc2版本起,NetworkManager已经部署RFC 7217。随着主流Linux版本的新版本发布,所以主流版本都应该会支持RFC 7217规定的新算法。Fedora等受欢迎的Linux发行版已经提供默认启用的新算法。

在很多Linux发行版(例如Raspbian)中,dhcpcd安装包被用于网络配置。Dhcpcd自6.4.0版本就已经支持RFC 7217,当前版本的Raspbian已经在默认情况下启用RFC 7217规定的算法。

最后,主流操作系统macOS Sierra也增加对RFC 7217 IPv6更关心支持,并在默认情况下启用该新算法。

还有一些最流行的操作系统最新版本也已经支持RFC 7217,Android也将支持RFC 7217。

在笔者撰写本文时,Microsoft Windows并不支持RFC 7217,但根据Windows中增加的很多其他安全和隐私改进(例如MAC地址随机化),再加上RFC 8064的共同作者隶属于微软的事实,微软应该会在未来某个时间增加对RFC 7217的支持。

关键字:RFC背景知识

本文摘自:TechTarget中国

x IPv6更新:在安全和隐私方面有所改进 扫一扫
分享本文到朋友圈
当前位置:数据网络行业动态 → 正文

IPv6更新:在安全和隐私方面有所改进

责任编辑:editor005 作者:Fernando Gont |来源:企业网D1Net  2017-07-04 14:26:34 本文摘自:TechTarget中国

近日,国际互联网工程任务组(也被称为IETF)发布了一套新标准:RFC 8064,《有关稳定IPv6接口标识符的建议》。这个新标准正式更新了14个IETF标准,包括IPv6寻址架构。本质上来看,RFC 8064建议部署和使用RFC 7217以生成稳定IPv6地址。该RFC的发布是先前IPv6寻址安全和隐私方面工作的成果,特别是RFC 7217本身,还有RFC 7707和RFC 7721。

IPv6背景知识

传统算法通过无状态地址自动配置(SLAAC)生成稳定IPv6地址,这种算法被设计为使用底层链路层地址作为地址的接口标识符来生成地址。

随着时间的推移,人们已经意识到通过IPv6地址执行主机跟踪的风险。由于MAC地址通常为独一无二,并且它们被嵌入在IPv6地址中,所以主机标识符容易由IPv6地址泄漏。为了应对这个问题,IETF发布了针对临时地址的标准,这些临时地址通常与传统(稳定)IPv6地址一起使用。然而,尽管临时地址可帮助缓解主机跟踪的特定向量,但IPv6主机跟踪的其他向量以及传统地址扫描机制的漏洞等问题仍然未被解决。

IETF在IPv6地址安全和隐私方面不断努力,最终发布了一个提案,以替代传统算法来生成IPv6地址。不过,这个IPv6更新提案在相关IETF工作组(被称为6man)被推迟。6man工作组决定将所提出的算法作为RFC7217发布,但不会正式取代传统SLAAC算法。这意味着没有正式更新IETF标准。

虽然RFC7217的发布是IPv6更新,但没有任何标准推荐或者强制执行其部署和使用,因此,当时传统SLAAC算法仍然是生成稳定IPv6地址的推荐方法。

随后,有关IPv6地址安全和隐私的两个RFC的发布(即RFC 7707和RFC 7721)为IETF采取最后一步奠定了基础,即让RFC 7217中提到的算法取代传统SLAAC算法。

这最终在2017年2月发布RFC 8064得以实现,该RFC建议部署和使用RFC 7217生成稳定地址,并建议不要使用在IPv6地址嵌入链路层地址的任何地址生成机制。

语义模糊的接口标识符

RFC 7217 IPv6更新指定了算法来生成IPv6接口标识符(以及IPv6地址),在相同网络内稳定,但随着节点从一个网络移动到另一个网络而发生变化。该算法可用以下表达式来总结和体现:

IPv6_IID = Hash(Net_Prefix, Net_ID, Net_Iface_ID, Secret_Key)

其中:

Hash():加密安全哈希函数

Net_Prefix:本地路由器发布的IPv6前缀

Net_ID:可选网络标识符,例如WiFi网络的服务集标识符

Net_Iface_ID:底层网络接口的标识符(例如网络接口名称)

Secret_Key:秘密值,通常在系统安装期间作为随机值初始化,并在重新启动时保持不变

基本上来说,IPv6接口标识符是通过对多个参数连接计算安全散列来获得,最常见的是本地路由器(Net_Prefix)和秘密密钥(Secret_Key)公布的网络前缀。

只要节点保持在相同网络,它将维护和配置相同的IPv6地址,这是因为散列函数的所有参数保持不变。另一方面,由于网络前缀会改变,所以一旦节点连接到不同的网络,IPv6接口标识符将会改变。同时,如果节点返回到之前连接的网络,它将配置与之前相同的IPv6地址,因为用于计算该IPv6接口标识符的所有参数都将与原来情况相同。

部署IPv6更新

截至本文发稿时,至少存在以下RFC 7217部署:

Linux kernel v4.0;

NetworkManager v1.2.0-0.3.20151112gitec4d653.fc24;

dhcpcd 6.4.0; 以及

macOS Sierra.

Linux内核部署是第一个RFC 7217部署,因此,也可作为参考部署。然而,Ubuntu以及Fedora等最受欢迎的Linux版本使用NetworkManager应用程序包进行网络配置而部署依靠内核。自1.2.0-0.3.20151112gitec4d653.fc2版本起,NetworkManager已经部署RFC 7217。随着主流Linux版本的新版本发布,所以主流版本都应该会支持RFC 7217规定的新算法。Fedora等受欢迎的Linux发行版已经提供默认启用的新算法。

在很多Linux发行版(例如Raspbian)中,dhcpcd安装包被用于网络配置。Dhcpcd自6.4.0版本就已经支持RFC 7217,当前版本的Raspbian已经在默认情况下启用RFC 7217规定的算法。

最后,主流操作系统macOS Sierra也增加对RFC 7217 IPv6更关心支持,并在默认情况下启用该新算法。

还有一些最流行的操作系统最新版本也已经支持RFC 7217,Android也将支持RFC 7217。

在笔者撰写本文时,Microsoft Windows并不支持RFC 7217,但根据Windows中增加的很多其他安全和隐私改进(例如MAC地址随机化),再加上RFC 8064的共同作者隶属于微软的事实,微软应该会在未来某个时间增加对RFC 7217的支持。

关键字:RFC背景知识

本文摘自:TechTarget中国

电子周刊
回到顶部

关于我们联系我们版权声明隐私条款广告服务友情链接投稿中心招贤纳士

企业网版权所有 ©2010-2024 京ICP备09108050号-6 京公网安备 11010502049343号

^