CWEweakness
CWE-551 Incorrect Behavior Order: Authorization Before Parsing and Canonicalization
- Abstraction
- Base
- Structure
- Simple
- Status
- Incomplete
- Languages
- Not Language-Specific
- CWE version
- 5.0
Description
If a web server does not fully parse requested URLs before it examines them for authorization, it may be possible for an attacker to bypass authorization protection.
Extended description
For instance, the character strings /./ and / both mean current directory. If /SomeDirectory is a protected directory and an attacker requests /./SomeDirectory, the attacker may be able to gain access to the resource if /./ is not converted to / before the authorization check is performed.
Common consequences
• Access Control: Bypass Protection Mechanism
Potential mitigations
• [Architecture and Design] URL Inputs should be decoded and canonicalized to the application's current internal representation before being validated and processed for authorization. Make sure that your application does not decode the same input twice. Such errors could be used to bypass allowlist schemes by introducing dangerous inputs after they have been checked.
Related
Child of · CWE (2)
Peer of · CWE (1)
- CWE-41 Improper Resolution of Path Equivalence weakness
Referenced by CVE · weakness (28)
- CVE-2026-106579 ImageMagick is free and open-source software used for editing and manipulating digital images. vulnerability
- CVE-2026-87743 A flaw was found in Quarkus HTTP security. vulnerability
- CVE-2026-89060 A cross-namespace authorization flaw in multicluster-observability-addon allows a user with permission to modify a managed cluster’s… vulnerability
- CVE-2026-15573 A flaw was found in Keycloak's Authorization Services. vulnerability
- CVE-2026-16102 A flaw was found in the Dynamic Client Registration (DCR) component of Keycloak, an identity and access management solution. vulnerability
- CVE-2026-13676 fast-uri versions 2.3.1 through 3.1.2 and 4.0.0 fail to canonicalize Unicode (IDN) hostnames for HTTP-family URLs. vulnerability
- CVE-2026-57920 Peplink InControl 2 through 2.14.2 before 2026-06-03 allows use of a semicolon to bypass access-control rules for certain /rest/o/{orgId}… vulnerability
- CVE-2026-50559 Quarkus is a Java framework for building cloud-native applications. vulnerability
- CVE-2026-45832 All V1 collection-level endpoints in ChromaDB's Python project pass None for the tenant and database to the authorization layer, allowing… vulnerability
- CVE-2026-44573 Next.js is a React framework for building full-stack web applications. vulnerability
- CVE-2026-44574 Next.js is a React framework for building full-stack web applications. vulnerability
- CVE-2026-44575 Next.js is a React framework for building full-stack web applications. vulnerability
- CVE-2026-39852 Quarkus is a Java framework for building cloud-native applications. vulnerability
- CVE-2026-40022 When authentication is enabled on the Apache Camel embedded HTTP server or embedded management server (camel-platform-http-main) and a… vulnerability
- CVE-2026-22754 Vulnerability in Spring Spring Security. vulnerability
- CVE-2026-28808 Incorrect Authorization vulnerability in Erlang OTP (inets modules) allows unauthenticated access to CGI scripts protected by directory… vulnerability
- CVE-2026-4636 A flaw was found in Keycloak. vulnerability
- CVE-2026-33186 gRPC-Go is the Go language implementation of gRPC. vulnerability
- CVE-2016-20030 ZKTeco ZKBioSecurity 3.0 contains a user enumeration vulnerability that allows unauthenticated attackers to discover valid usernames by… vulnerability
- CVE-2026-2293 A NestJS application using @nestjs/platform-fastify can allow bypass of authentication/authorization middleware when Fastify… vulnerability
- CVE-2026-0707 A flaw was found in Keycloak. vulnerability
- CVE-2023-23924 Dompdf is an HTML to PDF converter. vulnerability
- CVE-2021-31384 Due to a Missing Authorization weakness and Insufficient Granularity of Access Control in a specific device configuration, a vulnerability… vulnerability
- CVE-2021-32777 Envoy is an open source L7 proxy and communication bus designed for large modern service oriented architectures. vulnerability
- CVE-2021-32779 Envoy is an open source L7 proxy and communication bus designed for large modern service oriented architectures. vulnerability
- CVE-2021-34429 For Eclipse Jetty versions 9.4.37-9.4.42, 10.0.1-10.0.5 & 11.0.1-11.0.5, URIs can be crafted using some encoded characters to access the… vulnerability
- CVE-2021-28164 In Eclipse Jetty 9.4.37.v20210219 to 9.4.38.v20210224, the default compliance mode allows requests with URIs that contain %2e or %2e%2e… vulnerability
- CVE-2021-28165 In Eclipse Jetty 7.2.2 to 9.4.38, 10.0.0.alpha0 to 10.0.1, and 11.0.0.alpha0 to 11.0.1, CPU usage can reach 100% upon receiving a large… vulnerability