惡意代碼來襲!周下載 900 萬(wàn)次的 npm 庫(kù) coa 遭劫持
據(jù)外媒 bleepingcomputer 報(bào)導(dǎo),11 月 4 日,流行的 npm 庫(kù)“coa” 被劫持,其中注入了惡意代碼,并且短暫地影響了世界各地依賴于“coa”的 React 包。
“coa”是 Command-Option-Argument 的縮寫,這個(gè)庫(kù)每周在 npm 上的下載量約為 900 萬(wàn)次,并被 GitHub 上近 500 萬(wàn)個(gè)開源存儲(chǔ)庫(kù)使用。
"coa"?是 Node.js 項(xiàng)目的命令行選項(xiàng)解析器。該項(xiàng)目的最后一個(gè)穩(wěn)定版本 2.0.2 于 2018 年 12 月發(fā)布。但是,在 npm 上突然出現(xiàn)了幾個(gè)可疑版本:2.0.3、2.0.4、2.1.1、2.1.3 和 3.1.3,正是這些惡意版本破壞了依賴于“coa”的 React 包:

GitHub 上 coa 的惡意版本
React 開發(fā)人員 Roberto Wesley Overdijk 對(duì)此表示:
“我不知道這種情況為什么出現(xiàn),也不知道到底發(fā)生了什么。但無(wú)論這個(gè)版本怎么做,它都破壞了互聯(lián)網(wǎng)。”
另一個(gè)使用 ElBidouilleur 句柄的 GitHub 用戶發(fā)現(xiàn) “coa”2.1.3 版本破壞了他們的構(gòu)建:
npm?ERR!?code?ELIFECYCLE
npm?ERR!?errno?1
[email protected]?preinstall:?start?/B?node?compile.js?&?node?compile.js
npm?ERR!?Exit?status?1
npm?ERR!
[email protected]?preinstall?script.
npm?ERR!?This?is?probably?not?a?problem?with?npm.?There?is?likely?additional?logging?output?above.
npm?ERR!?A?complete?log?of?this?run?can?be?found?in:
npm?ERR!?/home/mboutin/.npm/_logs/2021-11-04T14_01_45_544Z-debug.log此外,幾位開發(fā)者也加入了討論,表示自“coa”的新版本發(fā)布以來,他們的構(gòu)建也遇到了問題。
目前,雖然這些惡意版本已被 NPM 刪除。仍可以從Sonatype 的自動(dòng)惡意軟件檢測(cè)系統(tǒng)檢索存檔副本。
惡意軟件同樣劫持了 “ua-parser-js”?和假的 noblox 包
相同的事件也發(fā)生在上個(gè)月,被 Facebook、Microsoft、Amazon、Reddit 和其他大型技術(shù)公司使用的另一個(gè)流行的 npm 庫(kù) “ ua-parser-js ”遭到劫持。
據(jù) BleepingComputer 分析,被劫持的 “coa” 版本中包含的惡意軟件實(shí)際上與被劫持的 UA-PARSER-JS 版本中的代碼相同,可能在兩個(gè)事件背后的威脅演員之間建立鏈接。
惡意軟件可能是竊取 Windows 的 Danabot 密碼竊取木馬。加載通過Regsvr32.exe 時(shí),它將最終使用 rundll32.exe 再次啟動(dòng)各種參數(shù)以執(zhí)行不同的惡意行為。
加載時(shí),Danabot 將執(zhí)行各種惡意活動(dòng),包括:
竊取來自各種 Web 瀏覽器的密碼,包括 Chrome、Firefox、Opera、Internet Explorer 和 Safari
竊取各種應(yīng)用程序的密碼,包括 VNC,在線賭場(chǎng)應(yīng)用程序,F(xiàn)TP 客戶端和郵件帳戶
竊取存儲(chǔ)的信用卡
截取活動(dòng)屏幕的截圖
日志 keystrokes
將所有這些被盜數(shù)據(jù)發(fā)送回威脅演員,以允許他們違反受害者的其他賬戶。
“coa” 庫(kù)用戶應(yīng)該怎么做
出于這類供應(yīng)鏈攻擊的廣泛影響,強(qiáng)烈建議 “coa” 庫(kù)用戶檢查自己的項(xiàng)目是否有惡意軟件,包括檢查?compile.js、 compile.bat、sdd.dll 這些文件是否存在。
如果確認(rèn)已經(jīng)受感染,請(qǐng)更改設(shè)備上的密碼、密鑰和令牌,同時(shí)將 coa 的?npm 版本固定到穩(wěn)定版本“2.0.2”。
-?END -

