PT-2026-25485 · Npm · Openclaw
Published
2026-03-03
·
Updated
2026-03-03
CVSS v4.0
5.3
Medium
| Vector | AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X |
Summary
A client authenticated with a shared gateway token could connect as
role=node without device identity/pairing, then call node.event to trigger agent.request and voice.transcript flows.Affected Packages / Versions
- Package: npm
openclaw - Affected versions:
<= 2026.2.21-2 - Patched version:
2026.2.22(planned next release)
Details
The WebSocket connect path allowed device-less bypass whenever shared auth succeeded. That bypass did not restrict role, so a client could claim
role=node with no device identity and still pass handshake auth. Because node.event is node-role allowed, this enabled unauthorized node event injection into agent-trigger flows.Impact
Unauthorized
node.event injection can trigger agent execution and voice transcript flows for clients that only hold the shared gateway token, without node device pairing.Remediation
Upgrade to
2026.2.22 (or newer) once published. The fix requires device identity for role=node connects, even when shared-token auth succeeds.Fix Commit(s)
- ddcb2d79b17bf2a42c5037d8aeff1537a12b931e
Release Process Note
patched versions is pre-set to the planned next release so once npm release 2026.2.22 is out, advisory publish is a single step.OpenClaw thanks @tdjackey for reporting.
Fix
Incorrect Authorization
Found an issue in the description? Have something to add? Feel free to write us 👾
Weakness Enumeration
Related Identifiers
Affected Products
Openclaw