Apr 26, 2026·5 min read·9 visits
OpenClaw versions prior to 2026.4.20 fail to properly scope pairing RPC methods, allowing any device token with the `operator.pairing` scope to globally list, approve, or reject pairing requests for unrelated devices.
The OpenClaw Agent Platform before version 2026.4.20 contains an incorrect authorization vulnerability (CWE-863) in its gateway pairing management module. A failure to distinguish between administrative operator sessions and device-level sessions allows compromised or malicious devices to view and manipulate pairing requests belonging to other devices within the same gateway scope.
The OpenClaw Agent Platform exposes a gateway module responsible for managing device lifecycles and pairing requests. CVE-2026-41909 identifies a critical authorization flaw (CWE-863) within this module, specifically affecting how the gateway processes remote procedure calls (RPC) associated with device pairing.
In affected versions, the gateway fails to isolate device-level sessions from administrative sessions when evaluating authorization scopes. Specifically, the system grants broad access to the operator.pairing scope without verifying the context of the caller.
This architectural oversight allows an attacker with low-privileged network access and a single valid device token to impact the integrity and confidentiality of the entire gateway's pairing process. The vulnerability manifests across three specific RPC methods: device.pair.list, device.pair.approve, and device.pair.reject.
The gateway architecture assigns functional scopes to active sessions, relying heavily on the operator.pairing scope to gate access to pairing workflows. This scope explicitly permits the execution of three global RPC methods designed for managing pending device connections.
Both administrative operator sessions (authenticated via shared secrets) and device-level sessions (authenticated via device-specific tokens) can legitimately hold this scope. The backend authorization logic evaluates the presence of the scope string but ignores the underlying session context type.
Furthermore, the vulnerable RPC method handlers do not validate that the deviceId or requestId supplied in the payload corresponds to the caller's identity. The handlers execute the requested state mutation globally against the gateway's internal device registry.
This creates a horizontal authorization bypass. Any entity holding the operator.pairing scope inherits global administrative control over all pairing actions, entirely circumventing the intended resource isolation model.
The vulnerable implementation checked only for the presence of the operator.pairing scope without asserting ownership over the target requestId. This allowed any authenticated session with the scope to traverse the entire pending request list.
Commit 5a12f30441d5b0b151f550daa2c5c9e8db61e2e6 remediates this by introducing an isDeviceTokenAuth flag into the session context. This boolean explicitly differentiates limited device tokens from administrative shared secrets during request processing.
The device.pair.list handler was updated to evaluate this new flag. If the session utilizes a device token and lacks the overarching operator.admin scope, the gateway now filters the result set to include only entries where request.deviceId === authz.callerDeviceId.
For the state-mutating methods (approve and reject), the patch introduces a strict pre-flight lookup using getPendingDevicePairing(requestId). The updated handler logic asserts that the deviceId associated with the pending request strictly matches the session's callerDeviceId, securely enforcing resource ownership before executing the mutation.
Exploitation requires the attacker to possess a valid device token with the operator.pairing scope. In standard deployments, this implies the attacker has either compromised an existing paired device or extracted a valid token from network traffic.
The attacker initiates the exploit chain by sending an RPC request to the device.pair.list endpoint. Because the vulnerable gateway does not filter the response based on the caller's identity, the server returns an array of all pending pairing requests currently tracked by the system.
The response leaks sensitive metadata for unrelated devices attempting to join the network, including their specific requestId, deviceId, and cryptographic publicKey.
Armed with a valid requestId, the attacker can issue a device.pair.reject call to perform a targeted denial of service, permanently blocking the joining device. Alternatively, the attacker can submit their own rogue pairing request and use their existing compromised token to call device.pair.approve, bypassing the manual administrative approval workflow.
The primary impact of CVE-2026-41909 is a severe authorization bypass that compromises the integrity and confidentiality of the device pairing lifecycle. It effectively neutralizes the trust model required for onboarding new hardware.
Confidentiality is directly impacted because attackers can passively enumerate the metadata and public keys of all devices attempting to join the network. This intelligence can facilitate secondary attacks, such as device spoofing or targeted cryptographic analysis.
Integrity is compromised because attackers hold arbitrary control over the approval queue. The ability to approve rogue devices allows attackers to permanently embed persistent backdoor hardware into the trusted network tier.
While the CVSS v3.1 score is evaluated at 5.4 (Medium) due to the strict prerequisite of obtaining a valid device token, the practical risk is significant for IoT and edge computing environments where strict device segmentation forms the primary security boundary.
The definitive remediation is to upgrade the OpenClaw npm package to version 2026.4.20 or later. This version enforces strict identity verification and resource ownership checks for all pairing-related remote procedure calls.
Organizations must audit their existing device deployments immediately. Administrators should review all recently paired devices to identify any unrecognized hardware that may have bypassed the administrative approval workflow during the window of vulnerability.
As a defense-in-depth measure, administrators should audit the assignment of the operator.pairing scope across all active device profiles. This scope must be restricted exclusively to nodes that legitimately require the capability to manage network onboarding, removing it from standard edge devices.
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N| Product | Affected Versions | Fixed Version |
|---|---|---|
OpenClaw OpenClaw | < 2026.4.20 | 2026.4.20 |
| Attribute | Detail |
|---|---|
| CVE ID | CVE-2026-41909 |
| CWE ID | CWE-863 |
| CVSS v3.1 Score | 5.4 (Medium) |
| Attack Vector | Network |
| Privileges Required | Low |
| EPSS Score | 0.00025 |
| Exploit Maturity | Proof of Concept |
The software performs an authorization check when an actor attempts to access a resource or perform an action, but it does not correctly perform the check.