CVE-2026-35657: openclaw: auth bypass exposes agent session history via HTTP
GHSA-5jvj-hxmh-6h6j MEDIUMopenclaw's HTTP session history endpoint (/sessions/:sessionKey/history) authenticated bearer tokens but silently skipped the operator.read scope check enforced on the WebSocket path, meaning any valid token holder could read session histories regardless of their assigned permissions. In AI agent deployments, session histories routinely contain conversation transcripts, tool invocation outputs, and sensitive operational data — the exposure radius scales directly with what your agents handle. With 63 CVEs already documented in this package and an active ecosystem abuse incident (AIID #1368) showing malicious openclaw skills exfiltrating credentials from the same platform, this package deserves elevated scrutiny beyond this single issue. Patch immediately to 2026.3.25; if patching is blocked, restrict HTTP access to /sessions/*/history at the API gateway for tokens lacking operator.read scope, and audit existing HTTP access logs for unauthorized history reads.
Risk Assessment
Medium severity but elevated in AI agent contexts. No public exploit, no CVSS score, not in CISA KEV. Exploitability is trivial — any holder of a valid bearer token can reach the endpoint without specialized tooling or AI/ML knowledge. The real risk multiplier is the data sensitivity typical of agent session histories: production deployments frequently process PII, internal tool outputs, and credentials through agent workflows, all of which surface in session history. The 63 CVEs in this package and the AIID #1368 credential-theft incident suggest a systemic security posture problem beyond this specific authorization gap.
Attack Kill Chain
Affected Systems
| Package | Ecosystem | Vulnerable Range | Patched |
|---|---|---|---|
| openclaw | npm | <= 2026.3.24 | 2026.3.25 |
Do you use openclaw? You're affected.
Severity & Risk
Recommended Action
- Upgrade openclaw to 2026.3.25 (fix commit 1c45123231516fa50f8cf8522ba5ff2fb2ca7aea enforces operator scope declarations for HTTP callers).
- Interim workaround: block or ACL the /sessions/:sessionKey/history HTTP endpoint at the API gateway or reverse proxy, requiring explicit operator.read scope verification upstream before requests reach the application.
- Audit HTTP access logs for requests to /sessions/*/history from tokens without operator.read scope — treat any confirmed hits as potential data exposure incidents requiring notification review.
- Rotate bearer tokens for deployments with an unknown exposure window.
- Given 63 CVEs in this package, evaluate whether openclaw is appropriate for production use without a broader security review or migration plan.
Classification
Compliance Impact
This CVE is relevant to:
Related AI Incidents (1)
Source: AI Incident Database (AIID)
Frequently Asked Questions
What is CVE-2026-35657?
openclaw's HTTP session history endpoint (/sessions/:sessionKey/history) authenticated bearer tokens but silently skipped the operator.read scope check enforced on the WebSocket path, meaning any valid token holder could read session histories regardless of their assigned permissions. In AI agent deployments, session histories routinely contain conversation transcripts, tool invocation outputs, and sensitive operational data — the exposure radius scales directly with what your agents handle. With 63 CVEs already documented in this package and an active ecosystem abuse incident (AIID #1368) showing malicious openclaw skills exfiltrating credentials from the same platform, this package deserves elevated scrutiny beyond this single issue. Patch immediately to 2026.3.25; if patching is blocked, restrict HTTP access to /sessions/*/history at the API gateway for tokens lacking operator.read scope, and audit existing HTTP access logs for unauthorized history reads.
Is CVE-2026-35657 actively exploited?
No confirmed active exploitation of CVE-2026-35657 has been reported, but organizations should still patch proactively.
How to fix CVE-2026-35657?
1. Upgrade openclaw to 2026.3.25 (fix commit 1c45123231516fa50f8cf8522ba5ff2fb2ca7aea enforces operator scope declarations for HTTP callers). 2. Interim workaround: block or ACL the /sessions/:sessionKey/history HTTP endpoint at the API gateway or reverse proxy, requiring explicit operator.read scope verification upstream before requests reach the application. 3. Audit HTTP access logs for requests to /sessions/*/history from tokens without operator.read scope — treat any confirmed hits as potential data exposure incidents requiring notification review. 4. Rotate bearer tokens for deployments with an unknown exposure window. 5. Given 63 CVEs in this package, evaluate whether openclaw is appropriate for production use without a broader security review or migration plan.
What systems are affected by CVE-2026-35657?
This vulnerability affects the following AI/ML architecture patterns: agent frameworks, multi-tenant AI platforms, API gateways, agentic pipelines.
What is the CVSS score for CVE-2026-35657?
No CVSS score has been assigned yet.
Technical Details
NVD Description
## Summary Gateway HTTP Session History Route Bypasses Operator Read Scope ## Affected Packages / Versions - Package: `openclaw` - Affected versions: `<= 2026.3.24` - First patched version: `2026.3.25` - Latest published npm version at verification time: `2026.3.24` ## Details The HTTP `/sessions/:sessionKey/history` route previously authenticated bearer tokens but skipped the same `operator.read` check used by `chat.history` over WebSocket. Commit `1c45123231516fa50f8cf8522ba5ff2fb2ca7aea` makes HTTP callers declare operator scopes and rejects history reads that do not include `operator.read`. Verified vulnerable on tag `v2026.3.24` and fixed on `main` by commit `1c45123231516fa50f8cf8522ba5ff2fb2ca7aea`. ## Fix Commit(s) - `1c45123231516fa50f8cf8522ba5ff2fb2ca7aea`
Exploitation Scenario
An adversary holding a valid but limited-scope bearer token — obtained through credential theft, a compromised service integration, or an insider account with only write permissions — crafts HTTP GET requests to /sessions/<sessionKey>/history. Unlike the WebSocket path, the HTTP handler validates the token signature but skips the operator.read scope assertion, returning full session histories. The adversary enumerates session keys through predictable patterns or by observing keys returned from other accessible endpoints, then silently exfiltrates conversation transcripts, tool call outputs, and agent decision chains. In multi-tenant deployments this enables cross-operator boundary traversal, effectively collapsing tenant isolation without triggering authentication failures.
Weaknesses (CWE)
References
Timeline
Related Vulnerabilities
CVE-2026-30741 9.8 OpenClaw: RCE via request-side prompt injection
Same package: openclaw CVE-2026-28451 9.3 OpenClaw: SSRF via Feishu extension exposes internal services
Same package: openclaw GHSA-m3mh-3mpg-37hw 8.6 OpenClaw: .npmrc hijack enables RCE on plugin install
Same package: openclaw CVE-2026-27001 7.8 OpenClaw: prompt injection via unsanitized workspace path
Same package: openclaw GHSA-hr5v-j9h9-xjhg 7.7 OpenClaw: sandbox escape via mediaUrl path traversal
Same package: openclaw
AI Threat Alert