Executive brief
OpenClaw is a Node.js library used to build distributed control systems. When trusted-proxy authentication is enabled, an attacker with a valid node role can bypass device pairing by spoofing a Control UI identity, gaining unauthorized access to node event methods without proper operator permissions. This breaks the authorization boundary between unpaired nodes and protected control flows.
Technical details
The vulnerability exists in the trusted-proxy authentication mechanism, which fails to validate device identity when client.id is set to "control-ui". The root cause is missing role and device identity checks in the pairing enforcement logic (CWE-807). An authenticated node role WebSocket client can exploit this by setting client.id=control-ui to skip pairing requirements and access node event execution flows. The attack requires only network access and a valid authenticated session; no operator role is needed. The fix, committed in version 2026.2.25, adds a role === "operator" check to prevent this bypass.
Affected products
- OpenClaw openclaw <= 2026.2.24
Timeline
- 2026-03-03: disclosed
- 2026-02-25: patched: Version 2026.2.25