Github修復(fù)npm中的兩個(gè)安全漏洞

 漏洞資訊     |      2021-11-18

一、   漏洞描述

npm是 Node.js 的包管理工具,用來(lái)安裝各種 Node.js 的擴(kuò)展,后被GitHub收購(gòu)。

GitHub本次公開(kāi)披露的兩個(gè)漏洞是近兩個(gè)月在npm中發(fā)現(xiàn)的,第一個(gè)漏洞為信息泄露漏洞,第二個(gè)漏洞為授權(quán)漏洞。

二、   漏洞詳情

npm信息泄露漏洞

CVE: 暫無(wú)

組件:  npm

漏洞類(lèi)型: 配置問(wèn)題

影響: 泄露了私有npm包名

簡(jiǎn)述: 該漏洞是npmjs的復(fù)制服務(wù)器上的數(shù)據(jù)泄漏,這是由 "日常維護(hù) "造成的,導(dǎo)致暴露了私有npm包的名稱(chēng)列表,但在維護(hù)窗口期間,這些包的內(nèi)容并沒(méi)有暴露。

當(dāng)在為Replication.npmjs.com 上的公共 npm 副本提供支持的數(shù)據(jù)庫(kù)進(jìn)行維護(hù)期間,創(chuàng)建的記錄可能會(huì)暴露私有包的名稱(chēng),雖然私有包的內(nèi)容沒(méi)有暴露,但這些名稱(chēng)信息足以讓攻擊者以自動(dòng)化的方式進(jìn)行有針對(duì)性的依賴(lài)混淆攻擊和域名搶注。

雖然目前所有包含私有包名稱(chēng)的記錄已經(jīng)從 npm 的復(fù)制數(shù)據(jù)庫(kù)中刪除,但replicate.npmjs.com 服務(wù)仍被第三方使用,因此第三方可能會(huì)繼續(xù)保留副本或可能已將數(shù)據(jù)復(fù)制到其他地方。GitHub已經(jīng)對(duì)其生成公共復(fù)制數(shù)據(jù)庫(kù)的過(guò)程進(jìn)行了修改,以在未來(lái)消除私人軟件包名稱(chēng)泄露問(wèn)題。

Npm授權(quán)露漏洞

CVE: 暫無(wú)

組件:  npm

漏洞類(lèi)型: 代碼問(wèn)題

影響: 泄露了私有npm包名

簡(jiǎn)述:此漏洞源于處理對(duì)npm注冊(cè)表的請(qǐng)求的多個(gè)微服務(wù)之間不正確的授權(quán)檢查和數(shù)據(jù)驗(yàn)證,導(dǎo)致授權(quán)和發(fā)布的軟件包存在差異。攻擊者可以在沒(méi)有適當(dāng)授權(quán)的情況下使用賬戶(hù)發(fā)布任何npm包的新版本。

GitHub表示該漏洞目前尚未被惡意利用,并且已經(jīng)通過(guò)確保發(fā)布服務(wù)和授權(quán)服務(wù)的一致性來(lái)緩解這個(gè)問(wèn)題,以確保授權(quán)和發(fā)布使用的是同一個(gè)軟件包。

此外,流行的npm庫(kù) "ua-parser-js"、"coa "和 "rc "之前在一系列攻擊中被劫持,目的是用木馬和加密礦工感染開(kāi)源軟件消費(fèi)者。據(jù) GitHub 稱(chēng),這些流行庫(kù)的維護(hù)者都沒(méi)有在他們的賬戶(hù)上啟用雙因素身份驗(yàn)證 (2FA),因此,為避免這種情況再次發(fā)生,GitHub將要求 npm 維護(hù)人員在 2022 年開(kāi)始啟用2FA。

三、  安全建議

通用修補(bǔ)建議:

目前這些漏洞已經(jīng)修復(fù),建議相關(guān)用戶(hù)注意防范此類(lèi)攻擊。

參考鏈接:

https://github.blog/2021-11-15-githubs-commitment-to-npm-ecosystem-security/





漏洞信息摘自:?jiǎn)⒚餍?span style="font-size: 10px; text-align: right;">辰