• [ 首頁 ]
  • [ 滲透測試 ]
  • [ 黑客技術 ]
  • [ 黑客松 ]
  • [ 聯繫我們 ]
標題: 自我複製蠕蟲在(主要)自動化供應鏈攻擊中攻擊了 180 多個 npm 包
作者: HACKGO.NET
日期: 2025-04-10

自我複製蠕蟲在(主要)自動化供應鏈攻擊中攻擊了 180 多個 npm 包

一次潛在的巨大供應鏈攻擊正在進行中,這歸因於一種自我複製的蠕蟲狀有效載荷,這種載荷一直在危害 npm Registry 上發布的軟體包。


該蠕蟲被稱為“Shai-hulud”,因為它會竊取運行受感染軟體包的受害者的憑證,並將其發佈在包含該名稱的公共 GitHub 儲存庫中。


該蠕蟲還使用從受害者那裡竊取的 npm 身份驗證令牌來延續感染和破壞的循環,並使用破壞的 GitHub 令牌來洩露身份驗證機密並公開私人儲存庫。


關於 npm 和 npm 令牌

Npm 是 JavaScript 程式語言的套件管理器,也是一個線上倉庫(npmjs.com),託管著數百萬個 JavaScript 和 Node.js 套件。大多數 npm 套件都是從 GitHub 倉庫建置的。


自 2020 年 npm Inc 被 GitHub 收購以來,該儲存庫實際上一直在 GitHub 的保護下運作。


開發者使用 GitHub 登入npmjs.com,然後產生一個 npm 存取令牌,用於在 npm 倉庫中發布和上傳新的套件版本。這些令牌儲存在本機(開發者的機器上)或 CI/CD 系統(例如 GitHub Actions)中。


Shai-Hulud蠕蟲

「Shai-hulud 蠕蟲本身是一個超過 3MB 的龐大 JavaScript 程式碼。然而,它的行為卻非常簡單。」ReversingLabs 的逆向工程師 Karlo Zanki解釋道。


npm 開發者帳號被入侵後,該蠕蟲會尋找該開發者所維護的其他軟體套件。然後,它會將自身注入到每個軟體包中,並為每個軟體包建立一個新版本。每個新建立的軟體包都會被一個 postinstall 操作修改,當毫無戒心的使用者下載受感染的軟體包時,該操作會執行惡意的bundle.js檔案。蠕蟲會不斷重複這個過程,直到找到新的開發者進行感染,並利用他們進一步傳播。


該蠕蟲還使用合法掃描工具TruffleHog來搜尋 GitHub 個人存取權杖、AWS 存取金鑰、Google Cloud Platform 服務憑證、Azure 憑證和 NPM 驗證令牌。


惡意腳本會驗證收集到的憑證,如果找到 GitHub 令牌,則會使用它們建立一個名為 Shai-Hulud 的公共儲存庫,並透過 GitHub /user/repos API 上傳收集到的雙 base64 編碼機密。


「它還會將新的 GitHub Actions 工作流程推送到所有可存取的儲存庫。此操作會將每個儲存庫的機密洩露到攻擊者使用的webhook.site URL,」Wiz 研究人員補充道。


最後,它將通過受害者的 GitHub 帳戶,將任何私人存儲庫公開,在其名稱後面添加-migration後綴,並將其描述更改為“Shai-Hulud Migration”。


蠕蟲病毒 npm 供應鏈攻擊


蠕蟲病毒將私人儲存庫公開(資料來源:Aikido Security)


奇點攻擊是 Shai-Hulud 的前奏嗎?

StepSecurity 擁有最新的受影響軟體包列表,但其數量似乎每小時都在增加。 (目前已確認有 187 個軟體包。)


ReversingLabs 認為第一個被感染的軟體包是rxnt-authentication。


該公司分享道:“該軟體包的惡意版本 0.0.3 於 9 月 14 日 17:58:50 UTC 發布。因此,npm 維護者 techsupportrxnt 可以被視為此次攻擊活動的‘0號病人’。”


合氣道研究員查理·埃里克森 (Charlie Eriksen) 表示,這種攻擊最引人注目的特徵之一是,它的行為就像一條真正的蠕蟲。


「攻擊者無需手動鎖定目標軟體包。一旦某個環境受到威脅,蠕蟲就會利用維護者本身的發布權自動傳播。」他指出。


目前尚不清楚這次攻擊的幕後黑手是誰,但此次攻擊與2025 年 8 月的「S1ngularity」攻擊(在 npm 註冊表上提供惡意版本的 Nx 建置系統套件)有太多相似之處,不容忽視。


在這兩種情況下,攻擊者:


將被盜資料外洩到受害者 GitHub 帳戶內的公共儲存庫

使用受損的 GitHub 令牌公開受害者的私人儲存庫

僅針對使用 Linux 或 macOS 的開發人員

最近,npm 生態系統也因供應鏈洩漏而受到震動,18 個廣泛使用的 npm 套件被注入了加密竊取程式碼並上傳到 npm 註冊表。

Copyright ©2023 Designed by : Wild Click Creative Agency
[ Telegram ] [ 聯繫我們 ] [ Email:[email protected] ]