
近 800 個惡意 npm 套件被發現,跨平台攻擊 Windows、Mac 及 Linux
網絡安全研究人員發現,npm 套件管理器中出現了一場大規模的惡意套件攻擊行動,近 800 個偽裝成正常套件的軟件包被上傳至 npm 註冊表,目標是向開發者的系統植入跨平台遠端訪問木馬(RAT)及資訊竊取程式。
- npm 註冊表中發現近 800 個惡意套件,利用 README 檔案誘導開發者執行惡意程式碼
- 惡意軟件名為 WEL1DROPPER,可根據作業系統與處理器架構下載對應的攻擊模組
- macOS 版本會檢查除錯器與分析工具,具備反偵測能力
- 部分域名暗示攻擊可能針對俄羅斯金融機構與流動支付系統
非傳統攻擊手法:以 README 誘導執行
有別於常見的 npm 供應鏈攻擊利用 preinstall 或 postinstall 等生命週期鉤子(lifecycle hooks)自動觸發惡意程式碼,這次發現的套件採取了不同的策略。OpenSourceMalware 研究員 Paul McCarty 指出,這些套件在其 README 檔案中直接指示開發者載入並執行惡意模組,繞過了常規的安全掃描機制。
這些套件的名稱多採用 AI 生成的偽裝字串或隨機拼字錯誤的組合,試圖模仿熱門套件的名稱以誤導開發者。
WEL1DROPPER 下載器:分層攻擊架構
一旦開發者按照 README 指示執行了惡意程式碼,一個名為 WEL1DROPPER 的下載器便會啟動。該程式首先識別主機的作業系統與處理器架構,然後從三個 Cloudflare Workers 伺服器中選取合適的攻擊模組下載。
若 HTTPS 下載失敗,惡意軟件會切換到備用機制,通過 DNS TXT 記錄從特定域名(wel1[.]ru)分段獲取下一階段的攻擊代碼。McCarty 解釋,惡意程式會先請求一條 TXT 記錄獲取分段數量(範圍為 1 至 2,000),然後逐段請求並組合成完整的攻擊模組。
macOS 與 Linux 同樣受威脅
根據網絡安全公司 Sonatype 的分析,macOS 版本的感染流程與 Windows 相似,會先檢查系統是否存在除錯器或分析工具等偵測環境,然後從遠端伺服器下載攻擊模組。若主要下載管道失效,同樣會使用 DNS TXT 記錄作為備用傳輸方式。
Linux 版本的樣本則是一個經 UPX 壓縮的 ELF 二進位檔案,最終會部署 Sliver,這是一個開源的指揮與控制(C2)框架,常被攻擊者用作滲透工具。
攻擊目標與背景
研究人員在 macOS 版本的攻擊模組中發現了 tcsbank[.]ru 與 cloudpayments[.]ru 等俄羅斯相關域名,暗示這場攻擊可能針對俄羅斯金融機構與流動支付系統。此外,這場攻擊行動被懷疑是今年 4 月發現、代號為 Moika 的依賴混淆攻擊(dependency confusion)行動的進化版本,當時有超過 250 個惡意套件被上傳至 npm。
Palo Alto Networks Unit 42 同期亦記錄了多個針對 npm 與 Python Package Index(PyPI)的攻擊行動,顯示開源套件生態系統正面臨日益嚴峻的安全威脅。
資料來源:The Hacker News
