Skip to content
OpenAdvisories

Weakness (CWE)

CWE-647: Use of Non-Canonical URL Paths for Authorization Decisions

Variant Incomplete

The product defines policy namespaces and makes authorization decisions based on the assumption that a URL is canonical.

More detail

If an application defines policy namespaces and makes authorization decisions based on the URL, but it does not require or convert to a canonical URL before making the authorization decision, then it opens the application to attack. For example, if the application only wants to allow access to http://www.example.com/mypage, then the attacker might be able to bypass this restriction using equivalent URLs such as:

- http://WWW.EXAMPLE.COM/mypage

- http://www.example.com/%6Dypage (alternate encoding)

- http://192.168.1.1/mypage (IP address)

- http://www.example.com/mypage/ (trailing /)

- http://www.example.com:80/mypage

How to prevent it (1 mitigation)
  1. Architecture and Design

    Make access control policy based on path information in canonical form, with all alternate encodings rejected (which can be accomplished by a default deny rule). Consider very restrictive regular expressions to validate that the path is in the expected form. Reject all alternate path encodings that are not in the expected canonical form.

Source: MITRE CWE-647

17 results · Feed

  • High 8.8

    Use of Non-Canonical URL Paths for Authorization Decisions in Splunk SOAR

    As part of Cisco's ongoing commitment to proactive security and product quality, Cisco has conducted a comprehensive internal security review. This review resulted in a software hardening release that addresses multiple internally discovered vulnerabilities. …

  • Medium 6.3

    Apache APISIX: Servlet-style normalization creates a route/upstream authorization mismatch

    Use of Non-Canonical URL paths for authorization decisions vulnerability in Apache APISIX. In some configurations where a permissive route overlaps a protected one, a crafted encoded path can reach an upstream endpoint that the matched route's policies were n…

  • Low 3.7

    Dell Secure Connect Gateway (SCG) Policy Manager, versions prior to 5.34.00.16, contains an Use of Non-Canonical URL Pa…

  • Medium 5.3

    Envoy: Path normalization does not handle dot and dotdot segments with parameters

    Envoy is an open source edge and service proxy designed for cloud-native applications. Prior to 1.36.10, 1.37.6, 1.38.4, and 1.39.1, Envoy's URL normalization does not recognize dot and dotdot path segments when they carry semicolon parameters. A request such…

  • High 8.9

    In Eclipse Arrowhead versions from 5.0.0 to 5.2.1 the management-authorization gate that protects every /…/mgmt/… REST …

  • Medium 4.2

    L7 intention authorization bypass via custom public listener

    Consul Community Edition and Consul Enterprise 1.20.1 through 2.0.2 are vulnerable to an L7 intention authorization bypass when a service proxy is configured with a custom public listener. An authenticated mesh workload may reach HTTP paths that are blocked b…

  • Medium 6.5

    Kite Kubernetes proxy path traversal allows authenticated users to bypass RBAC and read cluster-wide resources

    ## Summary Kite versions 0.6.9 through 0.14.0 authorize Kubernetes proxy requests against the pod or service identified by the original route parameters. Encoded path traversal segments can cause the upstream URL to resolve to a different Kubernetes API endpo…

  • High 8.1

    File Browser: Colliding username normalization gives two users the same home directory

    File Browser is a file managing interface for uploading, deleting, previewing, renaming, and editing files within a specified directory. Prior to 2.63.17, File Browser builds new user scopes from usernames passed through cleanUsername() when Signup=true and C…

  • Medium 5.3

    Eclipse Jetty: Path parameter traversal

    In Eclipse Jetty, an HTTP URI of this form: /public;/../admin/secret.txt results in an unresolved path of: /public/../admin/secret.txt instead of the expected: /admin/secret.txt Jetty itself is not affected, as it will not serve the secret.txt file because it…

  • High 8.2

    Astro 6.4.7 Authorization Bypass via Decode Iteration Limit and Rewrite Path Canonicalization Mismatch

    Astro is a web framework for content-driven websites. Version 6.4.7 performs authorization decisions on a partially decoded pathname after reaching the iterative URL decoder limit, while later rewrite route matching performs an additional decodeURI() operatio…

  • Low 2.3

    Cargo can be coerced to share credentials between registries

    Cargo between 1.68 and 1.96 incorrectly normalized the URLs of third-party registries using the sparse index protocol. If a hosting provider allowed multiple registries to be hosted with arbitrary names within the same domain, an attacker able to publish crat…

  • Medium 6.7

    Aap-gateway: improper path validation in gateway allows credential exfiltration

    A flaw was found in the Red Hat Ansible Automation Platform Gateway route creation component. This vulnerability allows credential theft via the creation of misleading routes using a double-slash (//) prefix in the gateway_path. A malicious or socially engine…

  • Medium 6.5

    Astro has an Authentication Bypass via Double URL Encoding, a bypass for CVE-2025-64765

    Astro is a web framework. Versions 5.15.7 and below have a double URL encoding bypass which allows any unauthenticated attacker to bypass path-based authentication checks in Astro middleware, granting unauthorized access to protected routes. While the origina…

  • High 7.3

    Symfony's incorrect parsing of PATH_INFO can lead to limited authorization bypass

    Symfony is a PHP framework for web and console applications and a set of reusable PHP components. Symfony's HttpFoundation component defines an object-oriented layer for the HTTP specification. Starting in version 2.0.0 and prior to version 5.4.50, 6.4.29, an…

  • Medium 4.0

    Browser Use allows bypassing `allowed_domains` by putting a decoy domain in http auth username portion of a URL

    In browser-use (aka Browser Use) before 0.1.45, URL parsing of allowed_domains is mishandled because userinfo can be placed in the authority component.

  • Low 3.4

    Sonos api.sonos.com through 2025-04-21, when the /login/v3/oauth endpoint is used, accepts a redirect_uri containing us…

  • High 8.6
    CVE-2022-43939 Exploited Public exploit EPSS 92%

    Hitachi Vantara Pentaho Business Analytics Server - Use of Non-Canonical URL Paths for Authorization Decisions

    Hitachi Vantara Pentaho Business Analytics Server versions before 9.4.0.1 and 9.3.0.2, including 8.3.x contain security restrictions using non-canonical URLs which can be circumvented.

    KEV Mar 3, 2025