BTC
ETH
SOL
BNB
GOLD
XRP
DOGE
ADA
Back to home
Security

[HIGH] Security Advisory: OpenClaw: `browser.request` still allows `POST /reset-profile` through the `operator.write` surface (openclaw)

OpenClaw version 2026.3.22 ships with a high-severity authorization flaw.

OpenClaw version 2026.3.22 ships with a high-severity authorization flaw. An authenticated user with access only to the operator.write surface via browser.request can still execute POST /reset-profile. This resets persistent browser profiles, wiping out local data directories. The issue persists despite a prior fix in GHSA-vmhq-cqm9-6p7q that blocked similar profile mutations like creation and deletion.

Update to 2026.3.24 immediately. That’s the current shipping release with the patch. CVSS v3.1 scores it 8.1 (AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:H) under CWE-863: Incorrect Authorization. Low-privilege callers bypass intended gates, hitting destructive endpoints.

Why This Hits Hard

Persistent browser profiles store userDataDir locally—think cookies, extensions, session state for automated testing or scraping with Playwright. A reset via this path:

This disrupts availability and integrity in production automation pipelines. Imagine a CI/CD job or monitoring service relying on stable profiles; one bad actor with operator.write access nukes them. It’s not theoretical—tests confirm the routes execute fully.

The prior advisory fixed POST /profiles/create and DELETE /profiles/:name, but overlooked POST /reset-profile. Developers reused the same isPersistentBrowserProfileMutation classifier everywhere except here, creating a regression gap.

Exact Attack Surface

Affected component: OpenClaw release tag v2026.3.22, commit e7d11f6c33e223a0dd8a21cfe01076bd76cef87a. Packaged as openclaw-2026.3.22.tgz, built from 4dcc39c25c6cc63fedfd004f52d173716576fcf0 on 2026-03-23T10:56:05.946Z.

Vulnerable code paths:

Tests in src/gateway/server-methods/browser.profile-from-body.test.ts:104-140 cover the fixed paths but skip reset, exposing the coverage hole.

Broader Context and Fixes

OpenClaw gates browser automation through a Gateway with scoped methods, separating operator controls from profile management. This flaw erodes that model—operator.write shouldn’t touch profiles at all. In multi-tenant or shared environments, it risks sabotage: a low-priv user disrupts others’ sessions.

Why recurrent? The fix pattern relied on a single mutation checker without exhaustive route mapping. Fair to say maintainers addressed the obvious vectors but missed an edge case. Skeptical note: Release cadence (2026.3.22 to .24) suggests rapid iteration, but shipping untested regressions questions QA depth.

Mitigate now: Upgrade to v2026.3.24. Audit your scopes—revoke unnecessary operator.write if possible. Monitor logs for /reset-profile calls. If pinned to .22, proxy or firewall-block the endpoint as interim.

This matters because browser persistence underpins reliable automation. One reset cascades: failed tests, lost state, downtime. In crypto/trading bots or security scanners (common Playwright use), it amplifies to financial or recon loss. Patch fast, scope tight, test comprehensively—or pay later.

March 31, 2026 · 3 min · 11 views · Source: GitHub Security

Related