APP下载

27万个专案使用的npm套件netmask遭爆含有重大漏洞

消息来源:baojiabao.com 作者: 发布时间:2026-02-20

报价宝综合消息27万个专案使用的npm套件netmask遭爆含有重大漏洞
图片来源: 

sickcodes

一群安全研究人员于上周揭露,热门的npm套件netmask含有一个重大的安全漏洞CVE-2021-28918,可能衍生出服务器端请求伪造(Server-Side Request Forgery,SSFR)或本地文件包含(Local File Inclusion,RFI)漏洞,而且全球有超过27万个专案采用了netmask。

Npm为Node.js套件管理工具,而netmask则可用来解析与理解IPv4无类别域间路由(Classless Inter-Domain Routing,CIDR)区块,以让它们能被利用或比较,例如它可在使用者输入特定IP时,判断它是否位于使用者所定义的区块中,或者是列出所有包含在某一区块中的IP。

CVE-2021-28918漏洞出现在netmask的private-ip功能中,这个漏洞很简单,它只是把应该视为8位元的IP地址第一节视为字串,当作是10位元,例如于private-ip中输入0127.0.0.1时,它指的应该是81.0.0.1,但netmask却自动忽略了前面的0,将它视为127.0.0.1,此一漏洞从netmask自9年前现身以来,便存在迄今。

研究人员指出,该漏洞看起来不起眼,却会造成巨大灾难。如果浏览器能够辨识8进位文字,但Node.js应用程序不行,代表使用者可提交任何看起来像是来自内部的网址,但事实上所存取的却是远端的恶意档案,或者是使用者提交了看起来是公开的网址,但其实是私人网域,并因而衍生出SSFR或RFI攻击。

举例来说,使用者在netmask中提交了012,该套件以为它属于12公共IP,但它其实是10,为私人IP;或者使用者提交了010,netmask把它视为10私人IP,但它却是8公共IP。

研究人员警告,任何人都可以在netmask中提交一个看起来像是私人IP的位址,但它实际上却连至公共IP以下载恶意档案。

迄今netmask的全球下载数量已超过312万次,在GitHub上有27.8万个专案采用netmask,相关专案是否受到CVE-2021-28918漏洞波及端看其应用方式,目前该漏洞已被修补,研究人员呼吁所有netmask用户都应尽速更新。

2021-03-29 15:51:00

相关文章