觀點 · 資訊分享

Nx Console 擴充功能被塞進惡意版本:只掛 36 分鐘,卻能偷走開發機上的各種登入憑證

VS Code 外掛 Nx Console 的 18.95.0 版遭惡意發布,來源是一週前 TanStack 供應鏈事件偷走的開發者權杖。CISA 在 5 月 27 日把 CVE-2026-48027 列入已遭利用漏洞清單。

發布
2026-05-27
篇幅
約 4 分鐘 · 1,651 字
結構
7 節 + 3 題常見問題
標籤
#Nx Console#供應鏈攻擊#CVE-2026-48027#VS Code#CISA KEV
Nx Console 擴充功能被塞進惡意版本:只掛 36 分鐘,卻能偷走開發機上的各種登入憑證

一句話看懂:有人用被偷走的開發者權杖,把惡意版本的 VS Code 外掛 Nx Console 上架,裝了就會被偷各種登入憑證;CISA 在 5 月 27 日把它列入已遭利用清單。

Nx Console 18.95.0 供應鏈攻擊資訊圖卡:一個被偷走的 GitHub 權杖,讓攻擊者能直接上架惡意外掛

先用白話講:供應鏈攻擊是什麼?

想像你每天固定到同一家早餐店買早餐,有人偷偷把店裡的醬料換成有問題的。你什麼都沒做錯,照常買、照常吃,問題卻跟著你進了肚子。

供應鏈攻擊就是這種手法:攻擊者不打你的門,而是污染你信任的工具、外掛或套件。這次中招的是 VS Code 的外掛 Nx Console。

發生什麼事

  • 惡意版本:Nx Console 18.95.0,在 Visual Studio Marketplace 與 Open VSX 兩個外掛市集上架
  • 曝險時間:官方事後報告寫 2026-05-18 的 UTC 12:30 到 13:09;Visual Studio Marketplace 約 11 分鐘被撤下,Open VSX 約 36 分鐘(NVD 的描述寫的是 5 月 19 日,兩邊日期不一致,這裡以官方報告為準)
  • 怎麼進來的:攻擊者拿到一位核心貢獻者的 GitHub CLI 權杖,以他的身分上架
  • 權杖怎麼洩的:5 月 11 日 TanStack 供應鏈事件裡,有一個被污染的 @tanstack/zod-adapter 版本被這位貢獻者的開發機安裝,啟動腳本把憑證偷走。攻擊者之後在 Nx 的 GitHub 專案裡潛伏了約一週才動手
  • CISA:2026-05-27 把 CVE-2026-48027 列入已知遭利用漏洞(KEV)清單,修補期限 2026-06-10

惡意程式做了什麼?

依 Nx 官方報告,外掛一啟動就會:

  • 在電腦上留下後門與常駐檔案
  • 搜集憑證:雲端帳號、npm、GitHub 權杖、SSH 私鑰、.env 檔、Docker 設定等
  • 透過 HTTPS、GitHub API 與 DNS 把資料傳出去

VS Code 與它的分支(例如 Cursor)都在影響範圍內。Nx CLI、官方 @nx/* 外掛與 Nx Cloud 沒有受影響。

給開發者的技術細節

  • 受影響版本只有 18.95.0;18.100.0 起是安全的
  • 判斷風險的條件:曝險時段內有安裝、或外掛開了自動更新
  • 官方的補強:發布流程改成需要兩位管理員核准,其他可發布的專案改用 npm OIDC 受信任發布
  • 官方事後報告列出了具體的檔名與入侵指標,要自查請以該報告為準
  • 起因之一有個容易忽略的細節:專案設定了「新發布 7 天內不安裝」,但 packageManager 釘的 pnpm 版本太舊,這個設定被默默忽略

我的看法

這起事件最讓我在意的是「連鎖」:一個套件被污染,一週後另一個專案的外掛跟著出事。對接案的人來說,開發機本身就是高價值目標,上面通常同時有客戶的雲端金鑰、SSH 金鑰和 .env。

我會做的幾件事:外掛盡量少裝、自動更新對關鍵外掛可以考慮關掉;開發機的憑證用有期限的短效權杖;還有就是定期確認「安全設定真的有生效」,像這次 pnpm 的設定就是被默默忽略的。

名詞小辭典

  • 供應鏈攻擊:污染使用者信任的工具、套件或外掛,藉此進入使用者的環境。
  • CISA KEV:美國 CISA 維護的「已知遭利用漏洞」清單,被列入代表已經有實際攻擊。
  • 權杖(Token):代替密碼的登入憑證,被偷走就能冒充本人。
  • Open VSX:開源的外掛市集,Cursor 等 VS Code 分支常用。

資料來源

常見問題

供應鏈攻擊是什麼?
壞人不直接攻擊你,而是去污染你信任的工具或套件。你照常安裝更新,惡意程式就跟著進到你的電腦。
我怎麼知道自己有沒有中?
如果你在曝險時段(官方寫 2026-05-18 UTC 12:30 至 13:09)有開 VS Code 或 Cursor 並開了外掛自動更新,就要當作可能中招。詳細的檢查項目請看 Nx 官方事後報告中的 Indicators of compromise。
中了要做什麼?
官方建議把那台機器上能碰到的憑證全部輪替,包含 GitHub、npm、雲端帳號、SSH 金鑰與 .env 檔裡的值;並確認 Nx Console 已升到 18.100.0 以後。
LINE