// 威脅簡報
Trigger.dev CLI 的 trigger dev --mcp 伺服器缺少認證:同網路的人或惡意網頁能借開發者身分操作專案
- CVSS
- 7.6 HIGH
- CISA KEV
- 未列入
- 弱點類型
- CWE-306
AI 審稿 2026-10-22(未經人工)指令測試:未提供漏洞重現:未進行驗證紀錄 ↓
Trigger.dev CLI 的 trigger dev --mcp 伺服器監聽所有網路介面且不檢查身分,同網路的人或惡意網頁可借開發者身分觸發、取消任務並讀取執行紀錄。
| 誰會中 | 使用 @trigger.dev/cli-v3 3.0.0 以上、4.5.4 以前(CNA 的範圍),執行過 trigger dev --mcp 且開發工作階段仍在進行、並已用 trigger login 登入的開發者。 |
|---|---|
| 後果 | 攻擊者可以用開發者存下的存取權杖,在專案裡啟動真實的任務執行、取消進行中的執行,並列出執行紀錄(可能含個資或機密)。能造成多大影響取決於專案任務做什麼,以及該權杖的權限範圍。 |
| 現在該做什麼 | 更新到 4.5.4 以上(官方指令:npx trigger.dev@latest update)。新版已移除 dev 指令的 --mcp 旗標,改用獨立的 trigger mcp 指令。 |
| 受影響版本 | 3.0.0 以上、4.5.4 以前(CNA VulnCheck 的範圍;PlainCVE 推測實際曝險可能從 2025 年 4 月的 v4 beta 才開始,未獲官方確認) |
| 修好的版本 | 4.5.4 以上 |
| CVSS 向量 | 顯示完整向量CVSS:4.0/AV:A/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:L/SC:N/SI:N/SA:N |
| 時間點 |
|
藍隊應對手冊
確認、修補 / 緩解、應變、強化。版本符合受影響條件不等於已被入侵;檢查沒有結果也不等於安全,每一項都有能證明與不能證明的範圍。標記的步驟對應下方攻擊流程裡可以擋下攻擊的那一步。
- 01確認安裝的 CLI 版本
在專案資料夾執行(只讀,不會修改環境)。CLI 在 npm registry 上的套件名稱是 trigger.dev(原始碼目錄為 packages/cli-v3);CVE 紀錄寫的 @trigger.dev/cli-v3 指的就是它。版本落在 3.0.0 以上、4.5.4 以前即在 CNA 的受影響範圍內。來源沒有提供偵測指引,這是 PlainCVE 的建議。
唯讀查詢npm ls trigger.dev - 02找出是否有人在用 trigger dev --mcp
在專案資料夾(含子資料夾)的 .json 檔(例如 package.json 的 npm 腳本)搜尋 dev --mcp。這個指令可能漏報:官方文件的 AI 工具設定範例使用的是 trigger.dev 的 mcp 子指令,不含 dev --mcp;有些設定檔放在家目錄或是 TOML 格式,也有人直接在終端機輸入旗標,這些都搜不到。沒找到不代表沒有曝險,請搭配下一步檢查連接埠。只有實際執行這個旗標、且開發工作階段開著時才會曝險。PlainCVE 的建議。
唯讀查詢grep -rn --include='*.json' -- 'dev --mcp' . 2>/dev/null - 03檢查開發機是否有程式在對外監聽 3333
在開發者的 Linux 機器上用 bash 執行(macOS 可改用 lsof -iTCP:3333 -sTCP:LISTEN)。若位址顯示為 0.0.0.0 或 *,代表對整個網路開放。若用 --mcp-port 指定過別的連接埠,請改查那個。PlainCVE 的建議。
唯讀查詢ss -ltnp | grep ':3333'
- 01更新到 4.5.4 以上
官方的更新指令。請在專案資料夾執行;此指令會修改環境(更新相依套件與 package.json)。4.5.4 移除了 dev 指令的 --mcp 與 --mcp-port 旗標。
會變更環境npx trigger.dev@latest update - 02改用獨立的 trigger mcp 指令
官方說明改用 trigger mcp 啟動 MCP 伺服器。PlainCVE 的判斷:官方文件把它設定成由 MCP 用戶端啟動的 stdio 程序(透過標準輸入輸出溝通,不開網路連接埠),但官方沒有明說它不受這個問題影響。
- 03還不能升級:不要用 --mcp,或用防火牆擋住
PlainCVE 的建議:停止使用 trigger dev --mcp;真的需要時,只在可信任的網路上用,並以主機防火牆阻擋外部連到該連接埠。
- 01檢查近期的任務執行
PlainCVE 的建議:曾在不受信任的網路上開著 trigger dev --mcp 時,檢查專案裡是否有不是你觸發的執行或被取消的執行。我們的資料中沒有任何來源提供回應指引。
- 02重新發放權杖並輪替紀錄中的機密
PlainCVE 的建議:懷疑遭濫用時,撤銷並重新取得開發者的存取權杖;執行資料或紀錄中若出現過機密(如 API 金鑰),一併更換。這是預防性做法,不代表已確認外洩。
完整修復步驟與說明
在專案資料夾用官方指令更新,更新後確認版本:
npx trigger.dev@latest update
npm ls trigger.dev # 應為 4.5.4 以上
npx trigger.dev@latest update 會修改相依套件與 package.json;npm ls 只讀。CLI 在 npm registry 的套件名稱是 trigger.dev,CVE 紀錄與公告使用的 @trigger.dev/cli-v3 指的是同一個 CLI(原始碼目錄 packages/cli-v3)。
- 更新後記得把 npm 腳本與 AI 工具設定檔中的
trigger dev --mcp改成trigger mcp,否則舊設定會失效。 - PlainCVE 的判斷:官方文件把
trigger mcp設定為由 MCP 用戶端啟動的 stdio 程序,不需要開網路連接埠;但官方沒有明說這個指令不受此問題影響。 - 官方 v4.5.4 更新說明把這項變更列為「改進」,沒有標示為安全修補(PlainCVE 閱讀更新說明的判斷)。只看更新說明的人可能不會意識到要優先升級。
攻擊流程
從左到右是攻擊發生的順序。藍色盾牌代表這一步可以被擋下,越早擋下越好。點圖示可看細節。
由上到下是攻擊發生的順序。藍色盾牌代表這一步可以被擋下,越早擋下越好。點圖示可看細節。
- 你的系統
開發者執行 trigger dev --mcp
這個旗標會在開發工作階段裡同時啟動一個本機 MCP 伺服器,方便 Cursor、Claude Code 等 AI 工具使用。開發者先前已用 trigger login 登入。
防禦: 官方變更:4.5.4 已移除 dev 指令的 --mcp 與 --mcp-port 旗標(第三方來源將 4.5.4 列為已修補)。
- 你的系統
伺服器監聽所有網路介面
它沒有只綁在本機(localhost),而是對整個網路開放 /sse 與 /messages 端點,官方公告列出的預設連接埠是 3333。
防禦: PlainCVE 的建議:還不能升級時,用主機防火牆擋掉其他機器連到這個連接埠。
- 攻擊者
同網路的攻擊者或惡意網頁送出 MCP 工具呼叫
這兩個端點沒有任何權杖檢查,所以不需要帳號。依 CVE 紀錄,開發者若瀏覽惡意網頁,網頁也可能對這個伺服器送出請求。
防禦: PlainCVE 的判斷:升級到 4.5.4 以上後,--mcp 旗標已移除,應不再有這個網路端點(更新說明未說明安全機制)。
- 你的系統
伺服器用開發者存下的存取權杖代為執行
存取權杖(token)是證明「我是誰」的一串字。伺服器拿 trigger login 存下的權杖去呼叫 Trigger.dev,所以請求看起來就是開發者本人。
- 外部
專案裡的任務被觸發、取消或紀錄被讀取
官方公告指出:可以排入真實的任務執行(不是預覽或沙箱)、取消進行中的執行、列出近期執行與其資料。依任務內容,可能連帶影響付款、外部 API 或客戶。影響範圍以該權杖的權限為上限。
防禦: PlainCVE 的建議:不要把機密直接放進任務的輸入資料或紀錄。
影響範圍
以下四個條件同時成立才會曝險(官方公告與 CVE 紀錄):
| 條件 | 說明 |
|---|---|
| 版本 | @trigger.dev/cli-v3 3.0.0 以上、4.5.4 以前(CNA VulnCheck 的範圍) |
| 使用方式 | 執行了 trigger dev --mcp,而且開發工作階段仍開著 |
| 登入狀態 | 已用 trigger login 登入,伺服器會用這組存下的存取權杖 |
| 攻擊者位置 | 在同一個區域網路(LAN),或開發者瀏覽了惡意網頁 |
| 版本 | 狀態 |
|---|---|
| 3.0.0 以上、4.5.4 以前 | 受影響(CNA 範圍) |
| 4.5.4 以上 | 已修補(—mcp 旗標已移除) |
關於起始版本: 3.0.0 是 CNA 給的起點。官方於 2025-04-09 隨 v4 beta 宣布 trigger dev --mcp,官方貼文似乎顯示這個旗標到那時才推出。PlainCVE 的判斷是實際曝險可能比 3.0.0 晚開始,但官方沒有版本說明可以證實。
原理
MCP(Model Context Protocol)是讓 AI 程式助理呼叫外部工具的協定。執行 trigger dev --mcp 時,CLI 會在開發者電腦上起一個 MCP 伺服器,讓 Cursor、Claude Code 這類工具能替你觸發任務、查詢執行狀況。
問題有兩層:
- 門開錯地方。 伺服器沒有只綁在本機(localhost),而是監聽所有網路介面,對整個網路開放
/sse與/messages端點;官方公告列出的預設連接埠是 3333。 - 門沒有鎖。 這兩個端點完全沒有權杖檢查。伺服器卻會拿開發者用
trigger login存下的存取權杖(證明「你是誰」的一串字)去呼叫 Trigger.dev。
所以任何連得到它的人,都能以開發者身分使用它提供的工具。官方公告列出的影響:排入真實的任務執行(不是預覽或沙箱)、取消進行中的執行、列出近期執行與其輸入資料(常含個資或機密)。依專案的任務內容,可能連帶造成付款、外部 API 或面向客戶的影響。損害以該權杖的權限為上限,而開發用權杖通常涵蓋整個專案。
沒有任何來源說攻擊者能在開發者電腦上執行任意程式碼;已描述的影響是透過開發者權杖濫用 Trigger.dev API。這對應 CWE-306(關鍵功能缺少認證)。
有問題的思路(概念示意,不是原始程式碼):
展開程式碼範例(js)
// 對所有網路介面開放,且不檢查任何權杖
server.listen({ host: "0.0.0.0", port: 3333 });
onToolCall((call) => api.run(call, storedLoginToken));比較安全的思路(概念示意):
展開程式碼範例(js)
// 不開網路連接埠;由 MCP 用戶端自己啟動,透過標準輸入輸出溝通
runMcpOverStdio((call) => api.run(call, storedLoginToken));官方更新說明只寫 4.5.4 移除 dev 指令的 --mcp 與 --mcp-port 旗標,改用獨立的 trigger mcp 指令。PlainCVE 的判斷:修補方式看起來是移除監聽,而不是替舊伺服器加上認證;更新說明沒有說明安全機制。
時間軸
| 日期 | 事件 |
|---|---|
| 2025-04-09 | Trigger.dev 隨 v4 beta 宣布 trigger dev --mcp 本機 MCP 伺服器 |
| 2026-07-14 | 第三方版本索引 releases.sh 記錄的 v4.5.4 發布日,移除 —mcp 旗標 |
| 2026-07-21 | 維護者 GitHub 安全公告發布;CVE 紀錄中的公開日期(datePublic)也是這天 |
| 2026-10-20 | VulnCheck 自己的公告日期 |
| 2026-10-21 | CVE 紀錄發布;CISA SSVC 評估遭利用狀態為 none |
| 2026-10-22 | 未列入 CISA KEV |
官方 GitHub 安全公告 GHSA-pqmg-rq46-vm4m 該頁含攻擊程式,本站不連結。
延伸閱讀
- 評分: 目前只有 CNA(VulnCheck)的分數:CVSS 4.0 為 7.6,CVSS 3.1 為 7.1,兩者都是「高」。差別在於 3.1 把攻擊複雜度算成「高」,4.0 則以「需要特定前提」表達。資料中沒有 NVD 自己的評分。
- 公開日期: 維護者公告(2026-07-21 發布)與 CVE 紀錄的公開日期(2026-07-21)一致。VulnCheck 的 2026-10-20 只是它自己公告的日期,不是公開日期。
- 遭利用狀況: 截至 2026-10-22 未列入 CISA KEV;CISA 在 2026-10-21 的 SSVC 評估寫遭利用為 none。修補前是否曾遭利用,沒有資料。GitHub Advisory Database 快照中的 EPSS(預測未來 30 天遭利用機率)約 0.2%,第 9.9 百分位。
- 其他編號: GitHub Advisory Database 另有條目 GHSA-8v2q-27xw-2fjh,GitHub 尚未審核。OSV 列出了引入與修補的 commit(798a47e8… 與 16595578…)。
- 相關弱點類型:CWE-306;設計原則「本機開發服務預設只綁 localhost」。
驗證紀錄 AI 依審稿規則逐項核對來源,全部通過;未經人工審稿,也尚未在我們的環境重現
| AI 審稿 | 2026-10-22 · 審稿規則 |
|---|
驗證紀錄只寫環境與結果,不公開重現步驟或可攻擊他人系統的程式。詳見 政策.
來源
- CVE / NVD / OSVCVE-2026-114090 Record (CVE Services API) · CVE Program / VulnCheck (CNA), 2026-10-21 · 查閱 2026-10-22
- 安全公告Trigger.dev CLI 3.0.0 before 4.5.4 Missing Authentication in MCP Server · VulnCheck, 2026-10-20 · 查閱 2026-10-22
- 安全公告GitHub Advisory Database entry for CVE-2026-114090 (GHSA-8v2q-27xw-2fjh, unreviewed) · GitHub · 查閱 2026-10-22
- 其他OSV entry for CVE-2026-114090 · OSV · 查閱 2026-10-22
- 修補 commit / 版本Trigger.dev changelog v4.5.4 · Trigger.dev · 查閱 2026-10-22
- 其他trigger.dev v4.5.4 release · releases.sh, 2026-07-14 · 查閱 2026-10-22
- 研究文章CVE-2026-114090 Missing Authentication for Critical Function in trigger.dev cli-v3 · OffSeq Radar · 查閱 2026-10-22
- 廠商說明trigger.dev issue #1780 (v4 beta release comment) · Trigger.dev (GitHub) · 查閱 2026-10-22
- 廠商說明Trigger.dev announcement of trigger dev --mcp · Trigger.dev (X), 2025-04-09 · 查閱 2026-10-22
- 其他PlainCVE CISA KEV snapshot for CVE-2026-114090 · PlainCVE, 2026-10-22 · 查閱 2026-10-22
媒體簡報
一句話
Trigger.dev 是讓開發者在背景執行工作的平台。它的命令列工具有一個選項 trigger dev --mcp,會在開發者電腦上啟動一個給 AI 程式助理用的伺服器,但這個伺服器對整個網路開放、又不檢查身分。同網路的人或惡意網頁因此可能借開發者的登入身分觸發、取消專案任務並讀取執行紀錄。4.5.4 版已移除這個選項;CISA 在 2026-10-21 的評估中把遭利用狀態列為 none,截至 2026-10-22 也未列入 KEV。
關鍵數字
- 嚴重度
- CVSS 4.0 7.6(CNA VulnCheck) cveawg.mitre.org
- 受影響版本
- cli-v3 >= 3.0.0, < 4.5.4 vulncheck.com
- 修補版本
- v4.5.4(移除 --mcp 旗標) trigger.dev
- CVE 紀錄發布
- 2026-10-21 cveawg.mitre.org
- 弱點類型
- CWE-306 關鍵功能缺少認證 api.github.com
已確認
- trigger dev --mcp 啟動的伺服器監聽所有網路介面,/sse 與 /messages 端點沒有權杖檢查。
- 官方公告指出,攻擊者可用開發者的存取權杖觸發真實任務、取消執行,並列出含資料的執行紀錄。
- 官方在 v4.5.4 移除了 dev 指令的 --mcp 與 --mcp-port 旗標。
- 截至 2026-10-22 未列入 CISA KEV;CISA 2026-10-21 的 SSVC 評估把遭利用狀態列為 none。
尚未確認 / 說法不一
- 受影響起點 3.0.0 來自 CNA;官方貼文顯示 --mcp 似乎到 2025 年 4 月 v4 beta 才推出,實際曝險可能較晚開始(PlainCVE 推測)。
- 沒有來源說攻擊者能在開發者電腦上執行任意程式碼;是否在修補前就遭利用也不清楚。
- 官方沒有說明替代用的 trigger mcp 指令是否不受此問題影響。
可引用的一句話
給 AI 助理開的一扇便利小門,沒上鎖,也沒關在屋內,而是開在整條街上。
圖片
引用時請標示「PlainCVE」並附上本頁連結。 完整引用格式見下方「如何引用本頁」。有事實錯誤請回報.
Trigger.dev CLI 的 trigger dev --mcp 伺服器缺少認證:同網路的人或惡意網頁能借開發者身分操作專案 Trigger.dev 是讓開發者在背景執行工作的平台。它的命令列工具有一個選項 trigger dev --mcp,會在開發者電腦上啟動一個給 AI 程式助理用的伺服器,但這個伺服器對整個網路開放、又不檢查身分。同網路的人或惡意網頁因此可能借開發者的登入身分觸發、取消專案任務並讀取執行紀錄。4.5.4 版已移除這個選項;CISA 在 2026-10-21 的評估中把遭利用狀態列為 none,截至 2026-10-22 也未列入 KEV。 關鍵數字: - 嚴重度:CVSS 4.0 7.6(CNA VulnCheck)(https://cveawg.mitre.org/api/cve/CVE-2026-114090) - 受影響版本:cli-v3 >= 3.0.0, < 4.5.4(https://www.vulncheck.com/advisories/trigger-dev-cli-3.0.0-before-4.5.4-missing-authentication-in-mcp-server) - 修補版本:v4.5.4(移除 --mcp 旗標)(https://trigger.dev/changelog/v4-5-4) - CVE 紀錄發布:2026-10-21(https://cveawg.mitre.org/api/cve/CVE-2026-114090) - 弱點類型:CWE-306 關鍵功能缺少認證(https://api.github.com/advisories?cve_id=CVE-2026-114090) 已確認: - trigger dev --mcp 啟動的伺服器監聽所有網路介面,/sse 與 /messages 端點沒有權杖檢查。 - 官方公告指出,攻擊者可用開發者的存取權杖觸發真實任務、取消執行,並列出含資料的執行紀錄。 - 官方在 v4.5.4 移除了 dev 指令的 --mcp 與 --mcp-port 旗標。 - 截至 2026-10-22 未列入 CISA KEV;CISA 2026-10-21 的 SSVC 評估把遭利用狀態列為 none。 尚未確認 / 說法不一: - 受影響起點 3.0.0 來自 CNA;官方貼文顯示 --mcp 似乎到 2025 年 4 月 v4 beta 才推出,實際曝險可能較晚開始(PlainCVE 推測)。 - 沒有來源說攻擊者能在開發者電腦上執行任意程式碼;是否在修補前就遭利用也不清楚。 - 官方沒有說明替代用的 trigger mcp 指令是否不受此問題影響。 「給 AI 助理開的一扇便利小門,沒上鎖,也沒關在屋內,而是開在整條街上。」— PlainCVE https://plaincve.date/vulns/cve-2026-114090-trigger-dev-mcp-missing-auth
如何引用本頁
本文採 CC BY 4.0,轉載請保留署名與連結。
PlainCVE 團隊(2026)。《Trigger.dev CLI 的 trigger dev --mcp 伺服器缺少認證:同網路的人或惡意網頁能借開發者身分操作專案》。PlainCVE。https://plaincve.date/vulns/cve-2026-114090-trigger-dev-mcp-missing-auth(查閱日期:YYYY-MM-DD)BibTeX
@misc{cve2026114090triggerdevmcpmissingauth2026,
title = {Trigger.dev CLI 的 trigger dev --mcp 伺服器缺少認證:同網路的人或惡意網頁能借開發者身分操作專案},
author = {PlainCVE 團隊},
year = {2026},
howpublished = {PlainCVE},
url = {https://plaincve.date/vulns/cve-2026-114090-trigger-dev-mcp-missing-auth},
note = {更新於 2026-10-22}
}