新聞中心

2025-08-29
知名開源建置工具Nx遭植入惡意程式上架NPM,開發者憑證恐外洩點閱數:102

文章出處:iThome / 編輯部

發表時間:2025-08-28

開源建置工具 Nx 惡意版本遭發布 NPM,安裝即觸犯惡意並上傳至 GitHub 儲存庫,還可察覺於端點啟動後,官方已下架並建議用戶檢查與清理環境

Nx 安全事件

知名開源建置工具 Nx 被發現有惡意版本被發布至 NPM。遭植入惡意程式的 Nx 套件在安裝時,會於本機逐一走訪檔案系統,搜集憑證與文字檔,並透過受害者的 GitHub 帳號建立名稱包含 s1ngularity-repository 的儲存庫,上傳經編碼的資料。

此外,惡意版本不僅竊取憑證,還會改寫使用者終端機啟動檔,在輸入密碼後直接強制關機。雖然官方已將相關版本下架並撤銷可發布的 NPM 權杖,但由於這些版本曾一度被標記為最新版,用戶在那段時間安裝或還原套件,都可能受到影響。

這起事件的根本原因,為 Nx 的 GitHub Actions 自動化流程出現漏洞,攻擊者結合 Bash 注入與流程提權,利用拉取請求驗證工作流程竊取 NPM 發布權杖,並藉此將惡意程式碼推送到 NPM。雖然主分支受保護,但舊分支的殘餘弱點仍被利用,讓攻擊鏈得以串接完成。

受影響的版本包括 nx 20.9.0 至 20.12.021.5.0 至 21.8.0,@nx/devkit、@nx/js、@nx/workspace、@nx/node 的 20.9.0 與 21.5.0,@nx/eslint 的 21.5.0,以及 @nx/key 和 @nx/enterprise-cloud 的 3.2.0。一般開發者無需記住所有版本號,只需檢查專案及全域環境是否安裝上述區間的版本即可。

值得注意的是,部分用戶即使未使用 Nx 工作區,也因 IDE 外掛 Nx Console 會自動安裝最新版本的 Nx,在惡意版本掛為最新版期間,僅開啟 IDE 就有可能觸發攻擊。官方現已更新 Nx Console,停止自動安裝行為。

針對本次事件,官方採取多項修補措施,包括恢復安全版本為最新,全面輪換 GitHub 及 NPM 機密、改用 NPM Trusted Publisher 機制發布套件,還強制所有套件啟用雙因素驗證,及啟用 CodeQL 進行原始碼檢查。同時清理和 Rebase 合併所有含脆弱流程的舊分支,並要求外部貢獻者拉取請求須經團隊核准。

官方建議開發者立即檢查 GitHub 帳號,一旦發現名稱包含 s1ngularity-repository 的儲存庫,在保存檔案後移除並通知官方。其次,用 npm ls nx 確認環境是否安裝惡意版本,必要時卸載後重新安裝最新版本並清理快取。最後,全面輪換 GitHub 與 NPM 等服務的憑證與權杖,並檢查 .zshrc.bashrc 刪除可疑命令。

原文引用連結:https://reurl.cc/z5QLly



上一則   |   回上頁   |   下一則