A trusted-proxy Control UI pairing bypass accepted client.id=control-ui without device identity checks. The bypass did not require operator role, so an authenticated node role session could connect unpaired and reach node event methods.
With trusted-proxy authentication enabled, a node role websocket client could skip pairing by using client.id=control-ui. That created an authorization boundary bypass from a node-scoped connection into node event execution flows.
openclaw (npm)<= 2026.2.242026.2.242026.2.25 (pre-set below so this advisory is ready to publish after npm release)The trusted-proxy Control UI bypass now additionally requires role === "operator".
ec45c317f5d0631a3d333b236da58c4749ede2a3patched_versions is intentionally pre-set to the release (2026.2.25). Advisory published with npm release 2026.2.25.2.25` is published, the remaining GHSA action is to publish this advisory.
OpenClaw thanks @tdjackey for reporting.
{
"github_reviewed_at": "2026-03-03T21:52:16Z",
"github_reviewed": true,
"cwe_ids": [
"CWE-807"
],
"nvd_published_at": null,
"severity": "LOW"
}