惡意程式碼來襲!周下載 900 萬次的 npm 庫 coa 遭劫持

六一發表於2021-11-11

據外媒 bleepingcomputer 報導,11 月 4 日,流行的 npm 庫“coa” 被劫持,其中注入了惡意程式碼,並且短暫地影響了世界各地依賴於“coa”的 React 包。

“coa”是 Command-Option-Argument 的縮寫,這個庫每週在 npm 上的下載量約為 900 萬次,並被 GitHub 上近 500 萬個開源儲存庫使用。

'coa' 是 Node.js 專案的命令列選項解析器。該專案的最後一個穩定版本 2.0.2 於 2018 年 12 月釋出。但是,在 npm 上突然出現了幾個可疑版本:2.0.3、2.0.4、2.1.1、2.1.3 和 3.1.3,正是這些惡意版本破壞了依賴於“coa”的 React 包:

GitHub 上 coa 的惡意版本

React 開發人員 Roberto Wesley Overdijk 對此表示:

“我不知道這種情況為什麼出現,也不知道到底發生了什麼。但無論這個版本怎麼做,它都破壞了網際網路。”

另一個使用 ElBidouilleur 控制程式碼的 GitHub 使用者發現 “coa”2.1.3 版本破壞了他們的構建:

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! coa@2.1.3 preinstall: start /B node compile.js & node compile.js
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the coa@2.1.3 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

此外,幾位開發者也加入了討論,表示自“coa”的新版本釋出以來,他們的構建也遇到了問題。

目前,雖然這些惡意版本已被 NPM 刪除。仍可以從Sonatype 的自動惡意軟體檢測系統檢索存檔副本。

惡意軟體同樣劫持了 “ua-parser-js” 和假的 noblox 包

相同的事件也發生在上個月,被 Facebook、Microsoft、Amazon、Reddit 和其他大型技術公司使用的另一個流行的 npm 庫 “ ua-parser-js ”遭到劫持。

據 BleepingComputer 分析,被劫持的“COA”版本中包含的惡意軟體實際上與被劫持的UA-PARSER-JS版本中的程式碼相同,可能在兩個事件背後的威脅演員之間建立連結。

惡意軟體可能是竊取 Windows的Danabot密碼竊取木馬。載入通過Regsvr32.exe 時,它將最終使用 rundll32.exe 再次啟動各種引數以執行不同的惡意行為。

載入時,Danabot 將執行各種惡意活動,包括:

  • 竊取來自各種 Web 瀏覽器的密碼,包括 Chrome、Firefox、Opera、Internet Explorer 和 Safari
  • 竊取各種應用程式的密碼,包括VNC,線上賭場應用程式,FTP客戶端和郵件帳戶
  • 竊取儲存的信用卡
  • 擷取活動螢幕的截圖
  • 日誌 keystrokes
  • 將所有這些被盜資料傳送回威脅演員,以允許他們違反受害者的其他賬戶

“coa” 庫使用者應該怎麼做

出於這類供應鏈攻擊的廣泛影響,強烈建議 “coa” 庫使用者檢查自己的專案是否有惡意軟體,包括檢查 compile.js、 compile.bat、sdd.dll 這些檔案是否存在。

如果確認已經受感染,請更改裝置上的密碼、金鑰和令牌,同時將 coa 的 npm 版本固定到穩定版本“2.0.2”。

相關文章