OpenClaw Matrix DM allowlist matching could be bypassed in certain configurations.
Matrix support ships as an optional plugin (not bundled with the core install), so this only affects deployments that have installed and enabled the Matrix plugin.
openclaw (npm)>= 2026.1.14-1, < 2026.2.2>= 2026.2.2In affected versions, DM allowlist decisions could be made by exact-matching channels.matrix.dm.allowFrom entries against multiple sender-derived candidates, including:
@alice:evil.example and @alice:trusted.example both match aliceIf an operator configured channels.matrix.dm.allowFrom with display names or bare localparts (for example, "Alice" or "alice"), a remote Matrix user may be able to impersonate an allowed identity for allowlist purposes and reach the routing/agent pipeline.
Matrix DM allowlist identity confusion. The practical impact depends on your Matrix channel policies and what capabilities are enabled downstream.
openclaw >= 2026.2.2.@user:server (or *). Do not use display names or bare localparts.8f3bfbd1c4fb967a2ddb5b4b9a05784920814bcfThe patched version is already published to npm; the advisory can be published once you're ready.
Thanks @MegaManSec (https://joshua.hu) of AISLE Research Team for reporting.
{
"github_reviewed": true,
"github_reviewed_at": "2026-02-17T21:34:17Z",
"cwe_ids": [
"CWE-287",
"CWE-290"
],
"severity": "MODERATE",
"nvd_published_at": "2026-03-05T22:16:20Z"
}