{"id":"CVE-2026-42274","state":"PUBLISHED","title":"Heimdall: Authorization bypass via path normalization mismatch","description":"Heimdall is a cloud native Identity Aware Proxy and Access Control Decision service. Prior to version 0.17.14, Heimdall performs rule matching on the raw (non-normalized) request path, while downstream components may normalize dot-segments according to RFC 3986, Section 6.2.2.3. This discrepancy can result in heimdall authorizing a request for one path (e.g., /user/../admin, or URL-encoded variants such as /user/%2e%2e/admin or /user/%2e%2e%2fadmin. The latter would require the allow_encoded_slashes option to be set to on or no_decode.) while the downstream ultimately processes a different, normalized path (/admin). This issue has been patched in version 0.17.14.","publishedAt":"2026-05-08T03:43:41.597Z","updatedAt":"2026-05-11T18:20:15.059Z","severity":{"score":7.8,"label":"High","version":"4.0","vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:N/SC:H/SI:H/SA:N","source":"GitHub_M"},"assigner":"GitHub_M","products":["dadrus heimdall"],"affected":[{"vendor":"dadrus","product":"heimdall","versions":[{"version":"< 0.17.14","status":"affected"}]}],"references":["https://github.com/dadrus/heimdall/security/advisories/GHSA-3q34-rx83-r6mq","https://github.com/dadrus/heimdall/pull/3209","https://github.com/dadrus/heimdall/commit/b5dfa484b7a8c2ce6d8691c026f9da867719947a","https://github.com/dadrus/heimdall/releases/tag/v0.17.14"],"weaknesses":["CWE-35","CWE-436"],"ingestedAt":"2026-10-29T20:11:57.932Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/42xxx/CVE-2026-42274.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-42274","state":"PUBLISHED","datePublished":"2026-05-08T03:43:41.597Z","dateUpdated":"2026-05-11T18:20:15.059Z","assignerShortName":"GitHub_M","assignerOrgId":"a0819718-46f1-4df5-94e2-005712e83aaa","dateReserved":"2026-04-26T11:53:27.707Z"},"containers":{"cna":{"title":"Heimdall: Authorization bypass via path normalization mismatch","descriptions":[{"lang":"en","value":"Heimdall is a cloud native Identity Aware Proxy and Access Control Decision service. Prior to version 0.17.14, Heimdall performs rule matching on the raw (non-normalized) request path, while downstream components may normalize dot-segments according to RFC 3986, Section 6.2.2.3. This discrepancy can result in heimdall authorizing a request for one path (e.g., /user/../admin, or URL-encoded variants such as /user/%2e%2e/admin or /user/%2e%2e%2fadmin. The latter would require the allow_encoded_slashes option to be set to on or no_decode.) while the downstream ultimately processes a different, normalized path (/admin). This issue has been patched in version 0.17.14."}],"affected":[{"vendor":"dadrus","product":"heimdall","versions":[{"version":"< 0.17.14","status":"affected"}]}],"references":[{"url":"https://github.com/dadrus/heimdall/security/advisories/GHSA-3q34-rx83-r6mq","name":"https://github.com/dadrus/heimdall/security/advisories/GHSA-3q34-rx83-r6mq","tags":["x_refsource_CONFIRM"]},{"url":"https://github.com/dadrus/heimdall/pull/3209","name":"https://github.com/dadrus/heimdall/pull/3209","tags":["x_refsource_MISC"]},{"url":"https://github.com/dadrus/heimdall/commit/b5dfa484b7a8c2ce6d8691c026f9da867719947a","name":"https://github.com/dadrus/heimdall/commit/b5dfa484b7a8c2ce6d8691c026f9da867719947a","tags":["x_refsource_MISC"]},{"url":"https://github.com/dadrus/heimdall/releases/tag/v0.17.14","name":"https://github.com/dadrus/heimdall/releases/tag/v0.17.14","tags":["x_refsource_MISC"]}],"metrics":[{"cvssV4_0":{"attackVector":"NETWORK","attackComplexity":"LOW","attackRequirements":"NONE","privilegesRequired":"NONE","userInteraction":"NONE","vulnConfidentialityImpact":"NONE","vulnIntegrityImpact":"NONE","vulnAvailabilityImpact":"NONE","subConfidentialityImpact":"HIGH","subIntegrityImpact":"HIGH","subAvailabilityImpact":"NONE","baseScore":7.8,"baseSeverity":"HIGH","vectorString":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:N/SC:H/SI:H/SA:N","version":"4.0"}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-35","lang":"en","description":"CWE-35: Path Traversal: '.../...//'","type":"CWE"}]},{"descriptions":[{"cweId":"CWE-436","lang":"en","description":"CWE-436: Interpretation Conflict","type":"CWE"}]}],"providerMetadata":{"shortName":"GitHub_M","orgId":"a0819718-46f1-4df5-94e2-005712e83aaa","dateUpdated":"2026-05-08T03:43:41.597Z"},"source":{"advisory":"GHSA-3q34-rx83-r6mq","discovery":"UNKNOWN"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"timestamp":"2026-05-11T18:19:37.764124Z","id":"CVE-2026-42274","options":[{"Exploitation":"none"},{"Automatable":"yes"},{"Technical Impact":"partial"}],"role":"CISA Coordinator","version":"2.0.3"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-05-11T18:20:15.059Z"}}]}}}