CVE-2026-54573: Authorization Bypass in API Key/OAuth Scopes via Path Parsing Discrepancy
Outline is a service that allows for collaborative documentation. Prior to 1.8.0, the AuthenticationHelper.canAccess function uses ctx.originalUrl to verify if an API key or OAuth token has the required scopes for a request. It extracts the resource by splitting the URL by / and taking the last segment. However, it fails to strip the URL fragment (#). Because Koa's router uses ctx.path (which strips the fragment) for routing, an attacker can append a fragment containing a permitted path (e.g., #foo/api/documents.info) to a restricted endpoint (e.g., /api/documents.create). The router will route the request to the restricted endpoint, but canAccess will evaluate the permitted path in the fragment, bypassing the API key scope restrictions and allowing privilege escalation. This vulnerability is fixed in 1.8.0.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
Koa-based router / Outline AuthenticationHelper.canAccessto a version that resolves this vulnerability.Fixed in 1.8.0
Event History
Frequently Asked Questions
What is the severity of CVE-2026-54573?
CVE-2026-54573 has a severity rating of 71.
How do I fix CVE-2026-54573?
To fix CVE-2026-54573, upgrade to Outline version 1.8.0 or later.
What type of vulnerability is CVE-2026-54573?
CVE-2026-54573 is an authorization bypass vulnerability related to API key and OAuth scopes.
Who is affected by CVE-2026-54573?
CVE-2026-54573 affects users of Outline prior to version 1.8.0.
What functionality does CVE-2026-54573 impact?
CVE-2026-54573 impacts the AuthenticationHelper.canAccess function used for access verification.