CVE-2026-32898: OpenClaw: ACP bypass enables silent tool execution
MEDIUMOpenClaw versions before 2026.2.23 contain an authorization bypass where the ACP client auto-approves tool calls based on untrusted toolCall.kind metadata or permissive name heuristics, completely removing the human approval gate from read-class tool invocations. In AI agent environments where tools access files, credentials, or internal APIs, losing the approval control means malicious or unexpected tool calls execute silently without any human review—directly undermining the principal oversight mechanism organizations rely on for agentic AI governance. Despite a CVSS of 5.4, EPSS places this in the top 83rd percentile for exploitation probability, and the attack requires only low privileges over the network with no user interaction needed. Upgrade to OpenClaw ≥ 2026.2.23 immediately using patches from commits 12cc754 and 63dcd28; as an interim measure, audit all registered tool definitions for read-like naming patterns and enforce strict server-side toolCall.kind validation in ACP configuration.
What is the risk?
CVSS 5.4 (medium) materially understates contextual risk in AI agent deployments. The ACP approval bypass eliminates a human-in-the-loop control that is architecturally central to safe agentic AI operation—not a compensating control but the primary governance mechanism. Exploitation requires only low privileges and network access with no user interaction, making it accessible to any authenticated insider or compromised account. The EPSS 83rd percentile indicates meaningful exploitation interest relative to the broader CVE population. Four downstream dependents limit supply-chain blast radius, but 396 historical CVEs in the same package signal a codebase with systemic security debt warranting scrutiny beyond this specific finding.
How does the attack unfold?
What systems are affected?
| Package | Ecosystem | Vulnerable Range | Patched |
|---|---|---|---|
| OpenClaw | pip | — | No patch |
Do you use OpenClaw? You're affected.
How severe is it?
What is the attack surface?
What should I do?
6 steps-
Upgrade to OpenClaw ≥ 2026.2.23 using patches from commits 12cc754332f9a7c9 and 63dcd28ae0be2de1c.
-
Audit all registered tool definitions for names containing read-like terms (read, get, fetch, list, query, view, describe) that may match auto-approve heuristics.
-
Review ACP configuration to enforce strict server-side toolCall.kind validation; never rely on client-supplied kind values for security decisions.
-
Apply least-privilege to all tool permissions—remove sensitive resource access from tools that do not strictly require it.
-
Enable verbose audit logging for all tool invocations, including auto-approved ones, and alert on unexpected execution patterns.
-
Until patched, consider disabling ACP auto-approval entirely and requiring explicit human approval for all tool calls in sensitive environments.
What does CISA's SSVC say?
Source: CISA Vulnrichment (SSVC v2.0). Decision based on the CISA Coordinator decision tree.
How is it classified?
Which compliance frameworks are affected?
This CVE is relevant to:
Frequently Asked Questions
What is CVE-2026-32898?
OpenClaw versions before 2026.2.23 contain an authorization bypass where the ACP client auto-approves tool calls based on untrusted toolCall.kind metadata or permissive name heuristics, completely removing the human approval gate from read-class tool invocations. In AI agent environments where tools access files, credentials, or internal APIs, losing the approval control means malicious or unexpected tool calls execute silently without any human review—directly undermining the principal oversight mechanism organizations rely on for agentic AI governance. Despite a CVSS of 5.4, EPSS places this in the top 83rd percentile for exploitation probability, and the attack requires only low privileges over the network with no user interaction needed. Upgrade to OpenClaw ≥ 2026.2.23 immediately using patches from commits 12cc754 and 63dcd28; as an interim measure, audit all registered tool definitions for read-like naming patterns and enforce strict server-side toolCall.kind validation in ACP configuration.
Is CVE-2026-32898 actively exploited?
No confirmed active exploitation of CVE-2026-32898 has been reported, but organizations should still patch proactively.
How to fix CVE-2026-32898?
1. Upgrade to OpenClaw ≥ 2026.2.23 using patches from commits 12cc754332f9a7c9 and 63dcd28ae0be2de1c. 2. Audit all registered tool definitions for names containing read-like terms (read, get, fetch, list, query, view, describe) that may match auto-approve heuristics. 3. Review ACP configuration to enforce strict server-side toolCall.kind validation; never rely on client-supplied kind values for security decisions. 4. Apply least-privilege to all tool permissions—remove sensitive resource access from tools that do not strictly require it. 5. Enable verbose audit logging for all tool invocations, including auto-approved ones, and alert on unexpected execution patterns. 6. Until patched, consider disabling ACP auto-approval entirely and requiring explicit human approval for all tool calls in sensitive environments.
What systems are affected by CVE-2026-32898?
This vulnerability affects the following AI/ML architecture patterns: agent frameworks, AI agent pipelines, human-in-the-loop approval systems, agentic AI deployments.
What is the CVSS score for CVE-2026-32898?
CVE-2026-32898 has a CVSS v3.1 base score of 5.4 (MEDIUM). The EPSS exploitation probability is 0.26%.
What is the AI security impact?
Affected AI Architectures
MITRE ATLAS Techniques
AML.T0053 AI Agent Tool Invocation AML.T0074 Masquerading AML.T0084.001 Tool Definitions AML.T0107 Exploitation for Defense Evasion Compliance Controls Affected
What are the technical details?
Original Advisory
OpenClaw versions prior to 2026.2.23 contain an authorization bypass vulnerability in the ACP client that auto-approves tool calls based on untrusted toolCall.kind metadata and permissive name heuristics. Attackers can bypass interactive approval prompts for read-class operations by spoofing tool metadata or using non-core read-like names to reach auto-approve paths.
Exploitation Scenario
An attacker with a low-privilege account on an OpenClaw deployment registers a tool named 'readSecrets' or 'getEnvConfig', or crafts a tool call with toolCall.kind set to 'read'. When the AI agent invokes this tool during an autonomous task, the ACP client evaluates the name heuristic or the untrusted kind field, classifies it as a safe read-class operation, and auto-approves execution without presenting an approval prompt to any human reviewer. The tool reads environment variables containing database credentials or API keys accessible in the agent's runtime and returns them to the attacker. This scenario directly mirrors the AIID #1368 incident where malicious OpenClaw skills exfiltrated credentials via ClawHub—except this CVE eliminates the approval mechanism that would have surfaced the suspicious skill to a human reviewer before execution.
Weaknesses (CWE)
CWE-807 — Reliance on Untrusted Inputs in a Security Decision: The product uses a protection mechanism that relies on the existence or values of an input, but the input can be modified by an untrusted actor in a way that bypasses the protection mechanism.
- [Architecture and Design] Store state information and sensitive data on the server side only. Ensure that the system definitively and unambiguously keeps track of its own state and user state and has rules defined for legitimate state transitions. Do not allow any application user to affect state directly in any way other than through legitimate actions leading to state transitions. If information must be stored on the client, do not do so without encryption and integrity checking, or otherwise having a mechanism on the server side to catch tampering. Use a message authentication code (MAC) algorithm, such as Hash Message Authentication Code (HMAC) [REF-529]. Apply this against the state or sensitive data that has to be exposed, which can guarantee the integrity of the data - i.e., that the data has not been modified. Ensure that a strong hash function is used (CWE-328).
- [Architecture and Design] Use a vetted library or framework that does not allow this weakness to occur or provides constructs that make this weakness easier to avoid. With a stateless protocol such as HTTP, use a framework that maintains the state for you. Examples include ASP.NET View State [REF-756] and the OWASP ESAPI Session Management feature [REF-45]. Be careful of language features that provide state support, since these might be provided as a convenience to the programmer and may not be considering security.
Source: MITRE CWE corpus.
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N References
- github.com/openclaw/openclaw/commit/12cc754332f9a7c92e158ce7644aa22df79c0904 patch
- github.com/openclaw/openclaw/commit/63dcd28ae0be2de1c75af09cc81841cebeec068f patch
- github.com/openclaw/openclaw/security/advisories/GHSA-7jx5-9fjg-hp4m vendor-advisory
- vulncheck.com/advisories/openclaw-acp-permission-auto-approval-bypass-via-untrusted-tool-metadata third-party-advisory
Timeline
Related Vulnerabilities
CVE-2026-33579 9.9 OpenClaw: scope bypass escalates low-priv to admin
Same package: openclaw CVE-2026-32922 9.9 OpenClaw: privilege escalation to RCE via token scope bypass
Same package: openclaw CVE-2026-32038 9.8 OpenClaw: sandbox bypass enables container lateral movement
Same package: openclaw CVE-2026-53838 9.8 OpenClaw: approval scope bypass via reconnection state
Same package: openclaw CVE-2026-30741 9.8 OpenClaw: RCE via request-side prompt injection
Same package: openclaw