GHSA-v865-p3gq-hw6m

Suggest an improvement
Source
https://github.com/advisories/GHSA-v865-p3gq-hw6m
Import Source
https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/03/GHSA-v865-p3gq-hw6m/GHSA-v865-p3gq-hw6m.json
JSON Data
https://api.osv.dev/v1/vulns/GHSA-v865-p3gq-hw6m
Aliases
Downstream
Published
2026-03-03T21:25:52Z
Modified
2026-03-30T13:33:57Z
Severity
  • 6.5 (Medium) CVSS_V3 - CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:H/A:N CVSS Calculator
  • 8.3 (High) CVSS_V4 - CVSS:4.0/AV:N/AC:H/AT:N/PR:N/UI:N/VC:L/VI:H/VA:N/SC:N/SI:N/SA:N CVSS Calculator
Summary
OpenClaw has encoded-path auth bypass in plugin `/api/channels` route classification
Details

Summary (Updated March 2, 2026)

Encoded alternate-path requests could bypass plugin route auth checks for /api/channels/* due to canonicalization depth mismatch in vulnerable builds.

Affected Packages / Versions

  • Package: openclaw (npm)
  • Latest published vulnerable version: 2026.3.1
  • Affected range: <= 2026.3.1
  • Patched release: 2026.3.2 (patched_versions: >= 2026.3.2)

Technical Details

In affected versions, plugin auth-path classification and route-path canonicalization could diverge for deeply encoded slash variants (for example multi-encoded %2f). That mismatch allowed alternate encoded paths to evade protected-prefix auth checks while still resolving to /api/channels/... in plugin route handling.

The fix set hardens this class of issue by:

  • canonicalizing route paths to a bounded fixpoint,
  • failing closed on malformed or unresolved canonicalization depth,
  • requiring explicit plugin-route auth contracts (no implicit auth default),
  • enforcing route ownership/conflict guards for duplicate route registrations, and
  • using shared webhook route lifecycle registration to avoid stale/conflicting route surfaces.

Affected Deployments

Deployments exposing plugin HTTP routes and relying on gateway auth for /api/channels/* protection.

Fix Commit(s)

  • 93b07240257919f770d1e263e1f22753937b80ea
  • 2fd8264ab03bd178e62a5f0c50d1c8556c17f12d
  • d74bc257d8432f17e50b23ae713d7e0623a1fe0f
  • 7a7eee920a176a0043398c6b37bf4cc6eb983eeb
Database specific
{
    "cwe_ids":  [
        "CWE-288"
    ],
    "github_reviewed":  true,
    "github_reviewed_at":  "2026-03-03T21:25:52Z",
    "nvd_published_at":  "2026-03-19T22:16:32Z",
    "severity":  "HIGH"
}
References

Affected packages

npm / openclaw

Package

Affected ranges

Type
SEMVER
Events
Introduced
0 Unknown introduced version / All previous versions are affected
Fixed
2026.3.2

Database specific

last_known_affected_version_range
"<= 2026.3.1"
source
"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/03/GHSA-v865-p3gq-hw6m/GHSA-v865-p3gq-hw6m.json"