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.
Problem types
CWE-35: Path Traversal: '.../...//'
CWE-436: Interpretation Conflict
Product status
References
github.com/...imdall/security/advisories/GHSA-3q34-rx83-r6mq
github.com/dadrus/heimdall/pull/3209
github.com/...ommit/b5dfa484b7a8c2ce6d8691c026f9da867719947a
github.com/dadrus/heimdall/releases/tag/v0.17.14