vlambda博客
学习文章列表

混合进制IP地址解析漏洞,Go,Rust语言net类库受影响合进制IP地址解析漏洞


概述

所有使用这次基础库的应用程序可能会受到不确定的服务器端请求伪造(SSRF) 和远程文件包含(RFI) 漏洞的攻击。

因为该基础库被广使用,所以大量的Go,Rust网络应用都收到影响。

另外Python 标准库ipaddress也受漏洞影响。

漏洞原理

比如8.8.8.8

混合进制IP地址解析漏洞,Go,Rust语言net类库受影响合进制IP地址解析漏洞 其他浏览器也是如此,比如谷歌Chrome:

混合进制IP地址解析漏洞,Go,Rust语言net类库受影响合进制IP地址解析漏洞

混合进制IP地址解析漏洞,Go,Rust语言net类库受影响合进制IP地址解析漏洞

这样可能会导致应用程序中出现不确定的服务器端请求伪造 (SSRF)和远程文件包含(RFI)漏洞。

漏洞影响

由于net库在Golang和Rust语言中均为核心库,被大量应用所依赖,通过在Github上简单搜索,仅golang中依赖该库的代码文件超超过49w。

混合进制IP地址解析漏洞,Go,Rust语言net类库受影响合进制IP地址解析漏洞

而且Go和Rust不是唯一受该漏洞影响的语言,还有Python语言的ipaddress 库 (CVE-2021-29921)、 netmask库 (CVE-2021-28918、CVE-2021-29418) 和等类似的库也受影响。

在大多数情况下,该漏洞为被评为有高或严重的严重性。

漏洞解决

目前 Golang 的 net 模块将补丁将在Golang 1.17 版中发布。

对于 Rust net里,也已经一个修复程序已经合并:

请使用这些类库的同学,关注官方漏洞发布及时更新版本。