{"id":"GHSA-pfv7-rr5m-qmv6","aliases":[],"url":"https://o3.security/vulnerability/GHSA-pfv7-rr5m-qmv6","summary":"OpenClaw has auth inconsistency on local Browser Extension Relay /extension endpoint","details":"### Summary\n\nWhen the optional Chrome extension relay is enabled, `/extension` accepted unauthenticated WebSocket upgrades while `/json/*` and `/cdp` required auth.\n\n### Affected Packages / Versions\n\n- Package: `openclaw` (npm)\n- Affected: `<= 2026.2.17`\n- Latest published npm version at triage time: `2026.2.17`\n\n### Impact\n\nThis is a local-only issue on loopback (`127.0.0.1`) and only applies when the extension relay feature is in use. A local process on the same machine could connect to `/extension` without the token and interfere with extension-relay behavior.\n\nNo remote network exploit path is involved.\n\n### Fix\n\n- Require gateway-token auth on both `/extension` and `/cdp` relay WebSocket endpoints.\n- Keep loopback/origin checks as defense-in-depth, not as authentication.\n- Use one token path in setup: `gateway.auth.token` / `OPENCLAW_GATEWAY_TOKEN`.\n\n### Fix Commit(s)\n\n- `7e54b6c96feb1a5c30884f2b32037b8dadd0e532`\n\nOpenClaw thanks @tdjackey for reporting.","published":"2026-03-03T21:42:27Z","modified":"2026-03-04T15:16:36.295412Z","cvss":null,"epss":null,"cisaKev":null,"exploitsKnown":0,"affectedPackages":[{"ecosystem":"npm","name":"openclaw","fixedVersion":"2026.2.19"}],"fix":{"url":"https://github.com/openclaw/openclaw/commit/7e54b6c96feb1a5c30884f2b32037b8dadd0e532","label":"openclaw/openclaw@7e54b6c"},"references":[{"type":"WEB","url":"https://github.com/openclaw/openclaw/security/advisories/GHSA-pfv7-rr5m-qmv6"},{"type":"WEB","url":"https://github.com/openclaw/openclaw/commit/7e54b6c96feb1a5c30884f2b32037b8dadd0e532"},{"type":"PACKAGE","url":"https://github.com/openclaw/openclaw"}],"provenance":{"sources":["OSV.dev","FIRST.org (EPSS)"],"lastVerified":"2026-03-04T15:16:36.295412Z"}}