{"id":"CVE-2026-100554","summary":"OpenClaw before 2026.8.1 Canvas Capability Revocation Bypass","details":"OpenClaw (npm package 'openclaw') versions \u003e= 2026.5.12 and \u003c 2026.8.1 do not immediately invalidate Canvas HTTP authorization when a paired node is revoked. Node revocation invalidates the WebSocket client, but Canvas HTTP authorization continues to accept and renew the previously granted capability until WebSocket close cleanup completes. As a result, a revoked paired node can continue exercising its Canvas capability against the capability's configured routes during the close grace period. The issue is fixed in 2026.8.1; as a workaround, restart the Gateway after revoking a node that has Canvas access.","aliases":["GHSA-g697-vv6h-r8hv"],"modified":"2026-09-27T03:30:55.954564606Z","published":"2026-09-26T02:18:49.013Z","database_specific":{"cna_assigner":"VulnCheck","cwe_ids":["CWE-613"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/100xxx/CVE-2026-100554.json"},"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/100xxx/CVE-2026-100554.json"},{"type":"ADVISORY","url":"https://github.com/openclaw/openclaw/security/advisories/GHSA-g697-vv6h-r8hv"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-100554"},{"type":"ADVISORY","url":"https://www.vulncheck.com/advisories/openclaw-before-2026.8.1-canvas-capability-revocation-bypass"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/openclaw/openclaw","events":[{"introduced":"f066dd2f31c231f38fbcaacd6f6dfce0801143b3"},{"fixed":"ea806575e6450e4d1efdfc72c19f04be982a1b9b"}],"database_specific":{"source":"AFFECTED_FIELD","extracted_events":[{"introduced":"2026.5.12"},{"fixed":"2026.8.1"}]}}],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-100554.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V4","score":"CVSS:4.0/AV:N/AC:H/AT:P/PR:L/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N"}]}