// 威脅簡報
OpenClaw MCP 設定缺少擁有者授權檢查:已授權的非擁有者傳訊者可寫入在主機上執行的指令
- CVSS
- 8.8 HIGH
- CISA KEV
- 未列入
- 弱點類型
- CWE-862 · CWE-78
- 主題
- 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 |
| 時間點 |
|
藍隊應對手冊
確認、修補 / 緩解、應變、強化。版本符合受影響條件不等於已被入侵;檢查沒有結果也不等於安全,每一項都有能證明與不能證明的範圍。標記的步驟對應下方攻擊流程裡可以擋下攻擊的那一步。
- 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 - 02檢查已設定的 MCP 伺服器
官方建議檢查已設定的 MCP 伺服器有沒有意料之外的項目,特別是你沒有加過的 stdio 指令。
- 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 - 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,不能把它當成已確認有效的緩解。
- 01移除不認得的 MCP 項目並把主機當成可能遭入侵
PlainCVE 的建議:如果發現不是擁有者加入的 stdio MCP 指令,先移除,再檢查執行 OpenClaw 的使用者能存取的檔案與憑證,必要時輪替。
完整修復步驟與說明
- 升級。 用
npm ls -g openclaw看目前版本(openclaw --version也可以,但依官方更新文件,安裝時略過套件腳本的話,它會先補完安裝生命週期再顯示版本),低於 2026.7.1 就升級到openclaw@2026.7.1以上(官方建議)。官方文件建議的升級指令是openclaw update;2026 年 6 月以前的安裝,文件要求先升到 2026.9.5 並執行openclaw doctor --fix,再升到最新版。 - 升級前後都要檢查設定。 PlainCVE 的判斷:升級可能不會移除先前已存入的項目。所以升級後仍要依官方建議檢查已設定的 MCP 伺服器有沒有意料之外的項目。
- 修補 commit。 2026.7.1 的官方發布說明寫到,已授權的非擁有者聊天參與者不能再透過
/mcp查看或修改擁有者控制的 MCP 伺服器設定,並對應到 commitad5a26c(在 /mcp 指令加上擁有者檢查);發布說明沒有標出 CVE 編號,把它對應到這個 CVE 是 PlainCVE 依內容比對的判斷。OSV 標示的修補 commit2d2ddc4看起來是 v2026.7.1 的發布標籤 commit。另一個 commit2aa93d4(#69774)也收緊了擁有者檢查,但它的變更紀錄屬於 2026.4.20 左右,沒有提到 /mcp 或這個 CVE。判斷是否已修補,仍以正式版版本號 2026.7.1 以上為準。
攻擊流程
從左到右是攻擊發生的順序。藍色盾牌代表這一步可以被擋下,越早擋下越好。點圖示可看細節。
由上到下是攻擊發生的順序。藍色盾牌代表這一步可以被擋下,越早擋下越好。點圖示可看細節。
- 攻擊者
已授權的非擁有者在外部頻道送出 /mcp set 或 /mcp unset
攻擊者不是匿名的:必須已經是某個外部頻道上被允許傳訊的使用者,只是不是擁有者。
防禦: 官方建議:升級前在外部頻道停用 MCP 聊天指令。
- 你的系統
OpenClaw 可能略過擁有者授權檢查
會改動設定的 MCP 指令本該只限擁有者使用,受影響版本卻可能略過這道擁有者授權檢查。
防禦: 升級到 2026.7.1 以上。
- 你的系統
攻擊者選的 stdio MCP 指令被存進 Gateway 的 MCP 設定
這個設定是持久保存的,不會因為對話結束而消失。
防禦: 官方建議:檢查已設定的 MCP 伺服器有沒有意料之外的項目。
- 你的系統
OpenClaw 載入 MCP 設定時執行該指令
指令以執行 OpenClaw 的系統使用者權限執行,這個使用者能碰到的東西,指令也都碰得到。
防禦: PlainCVE 建議:用權限最小的專用帳號執行 OpenClaw,縮小影響範圍。
- 攻擊者
主機的機密性、完整性與可用性可能受影響
官方公告指出這可能影響主機的機密性、完整性與可用性。
影響範圍
| 條件 | 是否受影響 |
|---|---|
| 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-13 | OpenClaw 2026.7.1 釋出,是第一個穩定的修補版本 |
| 2026-09-11 | 官方安全公告 GHSA-wwx7-573h-pqwc 公開;CVE 紀錄的公開日期(datePublic)也是這天 |
| 2026-09-26 | VulnCheck 發布 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 · 審稿規則 |
|---|
驗證紀錄只寫環境與結果,不公開重現步驟或可攻擊他人系統的程式。詳見 政策.
來源
- 安全公告GHSA-wwx7-573h-pqwc — MCP configuration changes could omit owner authorization · OpenClaw (GitHub), 2026-09-11 · 查閱 2026-09-28
- CVE / NVD / OSVCVE-2026-100596 Record (CVE Services API) · CVE Program / VulnCheck (CNA), 2026-09-26 · 查閱 2026-09-28
- CVE / NVD / OSVNVD API - CVE-2026-100596 · NIST · 查閱 2026-09-28
- 其他OSV - CVE-2026-100596 · OSV · 查閱 2026-09-28
- 修補 commit / 版本OpenClaw 2026.7.1 release notes · OpenClaw, 2026-07-13 · 查閱 2026-09-28
- 修補 commit / 版本Require owner gate for MCP chat command (ad5a26c) · OpenClaw (GitHub), 2026-06-24 · 查閱 2026-09-28
- 其他GitHub compare - ad5a26c...v2026.7.1-2 · GitHub · 查閱 2026-09-28
- 其他GitHub compare - ad5a26c...v2026.6.35 · GitHub · 查閱 2026-09-28
- 廠商說明OpenClaw docs at 259877d (parent of fix commit) - docs/tools/slash-commands.md · OpenClaw (GitHub) · 查閱 2026-09-30
- 其他OpenClaw v2026.6.35 source - src/auto-reply/reply/commands-mcp.ts · OpenClaw (GitHub) · 查閱 2026-09-30
- 廠商說明OpenClaw docs - Slash commands · OpenClaw · 查閱 2026-09-28
- 廠商說明OpenClaw docs - Gateway channel commands configuration · OpenClaw · 查閱 2026-09-28
- 廠商說明OpenClaw docs - Install · OpenClaw · 查閱 2026-09-28
- 廠商說明OpenClaw docs - Updating · OpenClaw · 查閱 2026-09-28
- 廠商說明OpenClaw docs - Update methods · OpenClaw · 查閱 2026-09-28
- 廠商說明OpenClaw docs - CLI reference · OpenClaw · 查閱 2026-09-28
- 其他fix: require owner identity for owner-enforced commands (#69774) · OpenClaw (GitHub) · 查閱 2026-09-28
- 其他GitHub Advisory Database API - CVE-2026-100596 (EPSS) · GitHub · 查閱 2026-09-28
- 新聞報導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 才能用,但官方公告沒有把它列為前提,更早的版本是否有這個開關也不明。
可引用的一句話
能在聊天室裡說話,不代表能改主機的設定;這個漏洞把這兩件事混在一起了。
圖片
引用時請標示「PlainCVE」並附上本頁連結。 完整引用格式見下方「如何引用本頁」。有事實錯誤請回報.
OpenClaw MCP 設定缺少擁有者授權檢查:已授權的非擁有者傳訊者可寫入在主機上執行的指令 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)(https://cveawg.mitre.org/api/cve/CVE-2026-100596) - 修補版本:2026.7.1(2026-07-13 釋出)(https://docs.openclaw.ai/releases/2026.7.1) - 官方安全公告:GHSA-wwx7-573h-pqwc,2026-09-11 公開(https://github.com/openclaw/openclaw/security/advisories/GHSA-wwx7-573h-pqwc) - CVE 紀錄發布:2026-09-26(VulnCheck)(https://cveawg.mitre.org/api/cve/CVE-2026-100596) - 回報者:yetval(https://github.com/openclaw/openclaw/security/advisories/GHSA-wwx7-573h-pqwc) 已確認: - 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 才能用,但官方公告沒有把它列為前提,更早的版本是否有這個開關也不明。 「能在聊天室裡說話,不代表能改主機的設定;這個漏洞把這兩件事混在一起了。」— PlainCVE https://plaincve.date/vulns/cve-2026-100596-openclaw-mcp-config-missing-authorization
如何引用本頁
本文採 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}
}