// 威脅簡報

OpenClaw MCP 設定缺少擁有者授權檢查:已授權的非擁有者傳訊者可寫入在主機上執行的指令

CVSS
8.8 HIGH
CISA KEV
未列入
弱點類型
CWE-862 · CWE-78
主題
AI 安全

PlainCVE 團隊 · 發布 2026-09-30 · AI 輔助 · 媒體簡報 ↓

AI 審稿 2026-09-30(未經人工)指令測試:未提供漏洞重現:未進行驗證紀錄 ↓

OpenClaw 2026.7.1 以前,已授權但非擁有者的外部頻道傳訊者,可以用 /mcp set 或 /mcp unset 寫入 MCP 設定,讓自選指令在設定載入時以 OpenClaw 的權限在主機上執行。

誰會中使用 npm 套件 openclaw 2026.7.1 以前版本,且有非擁有者的已授權外部頻道傳訊者的部署。官方公告沒有把 /mcp 是否啟用列為條件,但修補前一版的官方文件與原始碼顯示 /mcp 聊天指令預設關閉,要設定 commands.mcp: true 才能使用;更早的版本是否有這個開關不明。
後果如果條件成立,已授權但不是擁有者的傳訊者可以讓一個自選的指令以執行 OpenClaw 的系統使用者權限執行,可能影響主機的機密性、完整性與可用性。
現在該做什麼升級 openclaw 到 2026.7.1 以上。升級前,依官方建議在外部頻道停用 MCP 聊天指令,並檢查已設定的 MCP 伺服器有沒有不認得的項目。
受影響版本低於 2026.7.1 的所有版本(廠商公告與 CVE 紀錄;沒有來源說明問題從哪個版本開始)。npm 上的 2026.7.1-1、2026.7.1-2 與 2026.7.1 之後才發布的 2026.6.33~2026.6.35 依 semver 也低於 2026.7.1,廠商沒有說明它們是否含修補;依 git 紀錄,前兩者包含修補 commit ad5a26c,後三者不包含
修好的版本2026.7.1 以上(2026-07-13 釋出)
CVSS 向量
顯示完整向量CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
時間點
  • 首次公開 2026-09-11

藍隊應對手冊

確認、修補 / 緩解、應變、強化。版本符合受影響條件不等於已被入侵;檢查沒有結果也不等於安全,每一項都有能證明與不能證明的範圍。標記的步驟對應下方攻擊流程裡可以擋下攻擊的那一步。

DETECT確認我受影響嗎?有沒有入侵跡象?
  1. 01確認 openclaw 版本

    低於 2026.7.1 的版本受影響,2026.7.1-1、2026.7.1-2 與 2026.6.33~2026.6.35 依 semver 也在範圍內(見「影響範圍」)。官方的安裝方式是全域安裝(npm install -g),所以要加 -g 才查得到。也可以用 openclaw --version 看版本,但官方更新文件說,如果安裝時略過了套件腳本,CLI 會在執行任何指令(包括 --version)前先補完尚未執行的安裝生命週期,所以它不一定是單純的讀取;這裡的指令只列 npm ls -g。另外確認有沒有非擁有者的已授權傳訊者,以及設定裡的 commands.mcp 是否設為 true:修補前一版(commit 259877d)的官方文件寫 /mcp「Disabled by default — enable with commands.mcp: true」,v2026.6.35 的原始碼也會先檢查 commands.mcp 是否開啟,所以至少在修補前的這些版本,沒開啟 commands.mcp 就用不到 /mcp。更早的版本是否有這個開關不明,版本過舊的仍以升級為準。

    唯讀查詢
    npm ls -g openclaw
  2. 02檢查已設定的 MCP 伺服器

    官方建議檢查已設定的 MCP 伺服器有沒有意料之外的項目,特別是你沒有加過的 stdio 指令。

MITIGATE修補 / 緩解先修補;還不能修補時先擋住
  1. 01升級到 2026.7.1 以上

    官方的修補方式,2026.7.1 是第一個穩定的修補版本。官方文件建議用 openclaw update 升級(會自己判斷安裝方式);手動升級可用 npm i -g openclaw@latest --allow-scripts=openclaw(npm 11.15 以前不加 --allow-scripts=openclaw),由服務管理的 Gateway 要先停止,裝完再重新啟動。文件也說 2026 年 6 月以前的安裝要先升到 2026.9.5、執行 openclaw doctor --fix,再升到最新版。升級後用上面偵測步驟的指令確認版本。

    會變更環境
    openclaw update
  2. 02還不能升級:在外部頻道停用 MCP 聊天指令

    官方建議的暫時做法。/mcp 聊天指令由全域設定 commands.mcp 控制:修補前一版(commit 259877d)的官方文件寫 /mcp「Disabled by default — enable with commands.mcp: true」,v2026.6.35 的原始碼也會先檢查 commands.mcp 是否開啟,目前文件也是預設 false;把 commands.mcp 設為 false 或拿掉即可關閉。更早的版本是否有這個開關不明,請自行檢查設定。文件另有依頻道的設定 channels.<provider>.configWrites,說明是「依頻道管控設定變更」(預設 true),但文件沒有說它是否也管 /mcp,不能把它當成已確認有效的緩解。

RESPOND應變發現入侵跡象時
  1. 01移除不認得的 MCP 項目並把主機當成可能遭入侵

    PlainCVE 的建議:如果發現不是擁有者加入的 stdio MCP 指令,先移除,再檢查執行 OpenClaw 的使用者能存取的檔案與憑證,必要時輪替。

HARDEN強化長期避免同類問題
  1. 01用最小權限的帳號執行 OpenClaw

    PlainCVE 的建議:注入的指令會繼承 OpenClaw 程序的權限,帳號權限越小,損害越小。

  2. 02只在需要時開啟會改設定的聊天指令

    PlainCVE 的建議:外部頻道的傳訊者不一定值得完全信任,會改動主機設定的指令應該保持關閉。

完整修復步驟與說明
  1. 升級。 用 npm ls -g openclaw 看目前版本(openclaw --version 也可以,但依官方更新文件,安裝時略過套件腳本的話,它會先補完安裝生命週期再顯示版本),低於 2026.7.1 就升級到 openclaw@2026.7.1 以上(官方建議)。官方文件建議的升級指令是 openclaw update;2026 年 6 月以前的安裝,文件要求先升到 2026.9.5 並執行 openclaw doctor --fix,再升到最新版。
  2. 升級前後都要檢查設定。 PlainCVE 的判斷:升級可能不會移除先前已存入的項目。所以升級後仍要依官方建議檢查已設定的 MCP 伺服器有沒有意料之外的項目。
  3. 修補 commit。 2026.7.1 的官方發布說明寫到,已授權的非擁有者聊天參與者不能再透過 /mcp 查看或修改擁有者控制的 MCP 伺服器設定,並對應到 commit ad5a26c(在 /mcp 指令加上擁有者檢查);發布說明沒有標出 CVE 編號,把它對應到這個 CVE 是 PlainCVE 依內容比對的判斷。OSV 標示的修補 commit 2d2ddc4 看起來是 v2026.7.1 的發布標籤 commit。另一個 commit 2aa93d4(#69774)也收緊了擁有者檢查,但它的變更紀錄屬於 2026.4.20 左右,沒有提到 /mcp 或這個 CVE。判斷是否已修補,仍以正式版版本號 2026.7.1 以上為準。

攻擊流程

從左到右是攻擊發生的順序。藍色盾牌代表這一步可以被擋下,越早擋下越好。點圖示可看細節。

由上到下是攻擊發生的順序。藍色盾牌代表這一步可以被擋下,越早擋下越好。點圖示可看細節。

OpenClaw MCP 設定缺少擁有者授權檢查:已授權的非擁有者傳訊者可寫入在主機上執行的指令: 1. 已授權的非擁有者在外部頻道送出 /mcp set 或 /mcp unset → 2. OpenClaw 可能略過擁有者授權檢查 → 3. 攻擊者選的 stdio MCP 指令被存進 Gateway 的 MCP 設定 → 4. OpenClaw 載入 MCP 設定時執行該指令 → 5. 主機的機密性、完整性與可用性可能受影響CVE-2026-100596 · OpenClaw MCP 設定缺少擁有者授權檢查:已授權的非擁有者傳訊者可寫入在主機上執行的指令攻擊者你的系統已授權的非擁有者在外部頻道送出 /mcp set 或 /mcp unset — 攻擊者不是匿名的:必須已經是某個外部頻道上被允許傳訊的使用者,只是不是擁有者。 1已授權的非擁有者在外部頻道送出 /mcp set 或/mcp unsetOpenClaw 可能略過擁有者授權檢查 — 會改動設定的 MCP 指令本該只限擁有者使用,受影響版本卻可能略過這道擁有者授權檢查。 2OpenClaw 可能略過擁有者授權檢查攻擊者選的 stdio MCP 指令被存進 Gateway 的 MCP 設定 — 這個設定是持久保存的,不會因為對話結束而消失。 3攻擊者選的 stdioMCP 指令被存進Gateway 的 MCP 設定OpenClaw 載入 MCP 設定時執行該指令 — 指令以執行 OpenClaw 的系統使用者權限執行,這個使用者能碰到的東西,指令也都碰得到。 4OpenClaw 載入 MCP 設定時執行該指令主機的機密性、完整性與可用性可能受影響 — 官方公告指出這可能影響主機的機密性、完整性與可用性。 5主機的機密性、完整性與可用性可能受影響攻擊路徑可在此擋下PlainCVE · plaincve.date/vulns/cve-2026-100596-openclaw-mcp-config-missing-authorization · CC BY 4.0
OpenClaw MCP 設定缺少擁有者授權檢查:已授權的非擁有者傳訊者可寫入在主機上執行的指令: 1. 已授權的非擁有者在外部頻道送出 /mcp set 或 /mcp unset → 2. OpenClaw 可能略過擁有者授權檢查 → 3. 攻擊者選的 stdio MCP 指令被存進 Gateway 的 MCP 設定 → 4. OpenClaw 載入 MCP 設定時執行該指令 → 5. 主機的機密性、完整性與可用性可能受影響CVE-2026-100596 · OpenClaw MCP 設定缺少擁有者授權檢查:已授權的非擁有者傳訊者可寫入在主機上執行的指令已授權的非擁有者在外部頻道送出 /mcp set 或 /mcp unset — 攻擊者不是匿名的:必須已經是某個外部頻道上被允許傳訊的使用者,只是不是擁有者。 1攻擊者已授權的非擁有者在外部頻道送出/mcp set 或 /mcp unsetOpenClaw 可能略過擁有者授權檢查 — 會改動設定的 MCP 指令本該只限擁有者使用,受影響版本卻可能略過這道擁有者授權檢查。 2你的系統OpenClaw 可能略過擁有者授權檢查攻擊者選的 stdio MCP 指令被存進 Gateway 的 MCP 設定 — 這個設定是持久保存的,不會因為對話結束而消失。 3你的系統攻擊者選的 stdio MCP 指令被存進Gateway 的 MCP 設定OpenClaw 載入 MCP 設定時執行該指令 — 指令以執行 OpenClaw 的系統使用者權限執行,這個使用者能碰到的東西,指令也都碰得到。 4你的系統OpenClaw 載入 MCP 設定時執行該指令主機的機密性、完整性與可用性可能受影響 — 官方公告指出這可能影響主機的機密性、完整性與可用性。 5攻擊者主機的機密性、完整性與可用性可能受影響攻擊路徑可在此擋下PlainCVE · CC BY 4.0plaincve.date/vulns/cve-2026-100596-openclaw-mcp-config-missing-authorization
圖片可自由用於報導與教學,採 CC BY 4.0,圖上已附出處。
  1. 攻擊者

    已授權的非擁有者在外部頻道送出 /mcp set 或 /mcp unset

    攻擊者不是匿名的:必須已經是某個外部頻道上被允許傳訊的使用者,只是不是擁有者。

    防禦: 官方建議:升級前在外部頻道停用 MCP 聊天指令。

  2. 你的系統

    OpenClaw 可能略過擁有者授權檢查

    會改動設定的 MCP 指令本該只限擁有者使用,受影響版本卻可能略過這道擁有者授權檢查。

    防禦: 升級到 2026.7.1 以上。

  3. 你的系統

    攻擊者選的 stdio MCP 指令被存進 Gateway 的 MCP 設定

    這個設定是持久保存的,不會因為對話結束而消失。

    防禦: 官方建議:檢查已設定的 MCP 伺服器有沒有意料之外的項目。

  4. 你的系統

    OpenClaw 載入 MCP 設定時執行該指令

    指令以執行 OpenClaw 的系統使用者權限執行,這個使用者能碰到的東西,指令也都碰得到。

    防禦: PlainCVE 建議:用權限最小的專用帳號執行 OpenClaw,縮小影響範圍。

  5. 攻擊者

    主機的機密性、完整性與可用性可能受影響

    官方公告指出這可能影響主機的機密性、完整性與可用性。

影響範圍

條件是否受影響
openclaw 2026.7.1 以前 + 有非擁有者的已授權外部頻道傳訊者受影響(官方公告的範圍)。修補前的版本依官方文件預設關閉 /mcp,開啟 commands.mcp 才受影響;更早的版本是否有這個開關不明,保守起見升級
openclaw 2026.7.1 以上已修補
2026.7.1-1、2026.7.1-2(2026-07-18 發布到 npm)依 semver 落在「低於 2026.7.1」;廠商沒有說明是否含修補,git 紀錄顯示包含修補 commit ad5a26c
2026.6.33、2026.6.34、2026.6.35(2026-07-21 至 09-10 發布到 npm,較舊的版本線)發布時間在 2026.7.1 之後,但依 semver 版本號低於 2026.7.1,落在受影響範圍內;廠商沒有說明是否含修補,git 紀錄顯示不包含 ad5a26c
擁有者自己設定或安裝的 MCP 伺服器不在公告範圍內,官方仍視為受信任的整合

沒有來源說明問題是從哪個版本開始的;OSV 把範圍起點標為「0」,也就是 2026.7.1 以前的版本都視為受影響。

版本範圍的細節:廠商公告與 CVE 紀錄寫的是 semver 的「低於 2026.7.1」。npm 上另有 2026.7.1 正式版之後才發布的 2026.7.1-1、2026.7.1-2,以及 2026.6.33~2026.6.35;依 semver 這些都低於 2026.7.1,落在官方的受影響範圍內,廠商也沒有說明它們是否含修補。PlainCVE 查了 GitHub 上的 git 紀錄:v2026.7.1-1、v2026.7.1-2 是接在 ad5a26c 之後的版本,包含這個修補;v2026.6.33~v2026.6.35 的標籤不包含 ad5a26c,這三個版本的 /mcp 處理程式也沒有 ad5a26c 加入的擁有者檢查。這是本站讀 git 紀錄的判斷,不是廠商說法;保險的做法是直接裝 2026.7.1 正式版或版本號更新的正式版,使用 2026.6.x 版本線的讀者不要只看發布日期。

攻擊者必須先是外部頻道上被允許傳訊的使用者(CVSS 向量為 PR:L,需要低權限、不需使用者互動),不是任何人都能利用。

官方公告與 CVE 紀錄都沒有把 /mcp 聊天指令是否啟用列為條件。不過修補前一版(commit 259877d,也就是修補 commit ad5a26c 的上一版)的官方文件寫 /mcp「Disabled by default — enable with commands.mcp: true」,v2026.6.35 的 /mcp 處理程式也會先檢查這個開關,沒開啟就不處理;目前的官方文件一樣是預設關閉。也就是說,至少在修補前的這些版本,要擁有者主動把 commands.mcp 設為 true,這個問題才用得上。更早的版本是否有同樣的開關、預設值為何,本站沒有找到來源,所以版本過舊的部署仍請直接升級。

原理

OpenClaw 提供 /mcp set 與 /mcp unset 聊天指令,用來修改 Gateway 的 MCP 伺服器設定。MCP(Model Context Protocol)是讓 AI 應用程式連接外部工具的通訊協定;其中「stdio」類型的 MCP 伺服器,是以本機程式的方式啟動,設定裡寫的就是要執行的指令。

會改動設定的指令本該只有擁有者(owner)能用。受影響版本中,這道擁有者授權檢查可能被略過:已授權、但不是擁有者的外部頻道傳訊者,可以把自選的 stdio 指令寫進設定並保存下來。之後 OpenClaw 載入 MCP 設定時,這個指令就以執行 OpenClaw 的系統使用者權限執行,官方指出這可能影響主機的機密性、完整性與可用性。

這屬於 CWE-862(缺少授權)。官方公告另外列了 CWE-78(作業系統指令注入),CVE 紀錄則只列 CWE-862。

有問題的思路(概念示意,不是 OpenClaw 原始程式碼):

展開程式碼範例(js)
function handleMcpSet(sender, serverConfig) {
  // 只確認對方是已授權的傳訊者,沒有確認是不是擁有者
  if (!isAuthorizedSender(sender)) return deny();
  saveMcpConfig(serverConfig); // stdio 指令會在下次載入設定時執行
}

修好的思路:

展開程式碼範例(js)
function handleMcpSet(sender, serverConfig) {
  // 會改動設定的 MCP 指令一律只限擁有者
  if (!isOwner(sender)) return deny();
  saveMcpConfig(serverConfig);
}

時間軸

日期事件
2026-07-13OpenClaw 2026.7.1 釋出,是第一個穩定的修補版本
2026-09-11官方安全公告 GHSA-wwx7-573h-pqwc 公開;CVE 紀錄的公開日期(datePublic)也是這天
2026-09-26VulnCheck 發布 CVE 紀錄
2026-09-28截至此日未列入 CISA KEV;NVD 將它標為 Deferred(暫緩分析),沒有自己的分析結果

PlainCVE 的判斷:修補版本比安全公告早約兩個月釋出。

延伸閱讀

  • 評分:CNA(VulnCheck)在 CVE 紀錄中給 CVSS 4.0 8.7 與 CVSS 3.1 8.8,官方公告的 CVSS 3.1 也是 8.8。NVD 把它標為 Deferred(暫緩分析),沒有給自己的分數;本頁採用 CVSS 3.1 8.8 與其向量。
  • 利用狀況:截至 2026-09-28 未列入 CISA KEV。沒有來源回報實際遭利用,也沒有來源說它在修補前就被利用,這兩點都未確認。TheHackerWire 表示目前沒有確認的公開利用程式。GitHub 資料顯示 EPSS 約 0.25%(百分位約 14%)。
  • 公開日期說法不一:官方公告與 CVE 紀錄寫 2026-09-11;TheHackerWire 寫 2026-09-26,那其實是 CVE 紀錄的發布日。本頁以 2026-09-11 為公開日。
  • CWE 差異:CVE 紀錄只列 CWE-862;官方公告另列 CWE-78。
  • 回報者:yetval(依官方公告)。

驗證紀錄 AI 依審稿規則逐項核對來源,全部通過;未經人工審稿,也尚未在我們的環境重現

AI 審稿2026-09-30 · 審稿規則

驗證紀錄只寫環境與結果,不公開重現步驟或可攻擊他人系統的程式。詳見 政策.

來源

  1. 安全公告GHSA-wwx7-573h-pqwc — MCP configuration changes could omit owner authorization · OpenClaw (GitHub), 2026-09-11 · 查閱 2026-09-28
  2. CVE / NVD / OSVCVE-2026-100596 Record (CVE Services API) · CVE Program / VulnCheck (CNA), 2026-09-26 · 查閱 2026-09-28
  3. CVE / NVD / OSVNVD API - CVE-2026-100596 · NIST · 查閱 2026-09-28
  4. 其他OSV - CVE-2026-100596 · OSV · 查閱 2026-09-28
  5. 修補 commit / 版本OpenClaw 2026.7.1 release notes · OpenClaw, 2026-07-13 · 查閱 2026-09-28
  6. 修補 commit / 版本Require owner gate for MCP chat command (ad5a26c) · OpenClaw (GitHub), 2026-06-24 · 查閱 2026-09-28
  7. 其他GitHub compare - ad5a26c...v2026.7.1-2 · GitHub · 查閱 2026-09-28
  8. 其他GitHub compare - ad5a26c...v2026.6.35 · GitHub · 查閱 2026-09-28
  9. 廠商說明OpenClaw docs at 259877d (parent of fix commit) - docs/tools/slash-commands.md · OpenClaw (GitHub) · 查閱 2026-09-30
  10. 其他OpenClaw v2026.6.35 source - src/auto-reply/reply/commands-mcp.ts · OpenClaw (GitHub) · 查閱 2026-09-30
  11. 廠商說明OpenClaw docs - Slash commands · OpenClaw · 查閱 2026-09-28
  12. 廠商說明OpenClaw docs - Gateway channel commands configuration · OpenClaw · 查閱 2026-09-28
  13. 廠商說明OpenClaw docs - Install · OpenClaw · 查閱 2026-09-28
  14. 廠商說明OpenClaw docs - Updating · OpenClaw · 查閱 2026-09-28
  15. 廠商說明OpenClaw docs - Update methods · OpenClaw · 查閱 2026-09-28
  16. 廠商說明OpenClaw docs - CLI reference · OpenClaw · 查閱 2026-09-28
  17. 其他fix: require owner identity for owner-enforced commands (#69774) · OpenClaw (GitHub) · 查閱 2026-09-28
  18. 其他GitHub Advisory Database API - CVE-2026-100596 (EPSS) · GitHub · 查閱 2026-09-28
  19. 新聞報導CVE-2026-100596 · TheHackerWire · 查閱 2026-09-28

媒體簡報

一句話

OpenClaw 的 /mcp 聊天指令有授權缺陷:已授權、但不是擁有者的外部頻道傳訊者,可以寫入一個 MCP 設定,讓自選的指令在設定載入時以 OpenClaw 的權限在主機上執行。官方已在 2026 年 7 月 13 日釋出的 2026.7.1 修補,並於 9 月 11 日公開安全公告。截至 2026 年 9 月 28 日,它未列入美國 CISA 的已知遭利用漏洞清單,也沒有來源回報實際遭利用。

關鍵數字

嚴重度
CVSS 3.1 8.8;CVSS 4.0 8.7(CNA VulnCheck) cveawg.mitre.org
修補版本
2026.7.1(2026-07-13 釋出) docs.openclaw.ai
官方安全公告
GHSA-wwx7-573h-pqwc,2026-09-11 公開 github.com
CVE 紀錄發布
2026-09-26(VulnCheck) cveawg.mitre.org
回報者
yetval github.com

已確認

  • openclaw 2026.7.1 以前,已授權的非擁有者可透過 /mcp set 或 /mcp unset 持久寫入 MCP 設定。
  • 寫入的 stdio MCP 指令會在設定載入時以 OpenClaw 程序使用者的權限執行。
  • 官方已在 2026.7.1 修補,並建議升級前在外部頻道停用 MCP 聊天指令。

尚未確認 / 說法不一

  • 是否有實際遭利用、是否在修補前就被利用,都沒有來源說明。
  • 公開日期說法不一:官方公告與 CVE 紀錄寫 2026-09-11,TheHackerWire 寫 2026-09-26(CVE 紀錄的發布日)。
  • 2026.7.1 的發布說明把 /mcp 的修正對應到 commit ad5a26c,但沒有標出 CVE 編號。修補前一版的文件與 v2026.6.35 的原始碼顯示 /mcp 預設關閉、要開啟 commands.mcp 才能用,但官方公告沒有把它列為前提,更早的版本是否有這個開關也不明。

可引用的一句話

能在聊天室裡說話,不代表能改主機的設定;這個漏洞把這兩件事混在一起了。

圖片

下載分享圖(PNG) · 攻擊流程圖(可下載)

引用時請標示「PlainCVE」並附上本頁連結。 完整引用格式見下方「如何引用本頁」。有事實錯誤請回報.

如何引用本頁

本文採 CC BY 4.0,轉載請保留署名與連結。

PlainCVE 團隊(2026)。《OpenClaw MCP 設定缺少擁有者授權檢查:已授權的非擁有者傳訊者可寫入在主機上執行的指令》。PlainCVE。https://plaincve.date/vulns/cve-2026-100596-openclaw-mcp-config-missing-authorization(查閱日期:YYYY-MM-DD)
BibTeX
@misc{cve2026100596openclawmcpconfigmissingauthorization2026,
  title  = {OpenClaw MCP 設定缺少擁有者授權檢查:已授權的非擁有者傳訊者可寫入在主機上執行的指令},
  author = {PlainCVE 團隊},
  year   = {2026},
  howpublished = {PlainCVE},
  url    = {https://plaincve.date/vulns/cve-2026-100596-openclaw-mcp-config-missing-authorization},
  note   = {更新於 2026-09-30}
}