CVE-2026-32811

Heimdall is a cloud native Identity Aware Proxy and Access Control Decision service. When using Heimdall in envoy gRPC decision API mode with versions 0.7.0-alpha through 0.17.10, wrong encoding of the query URL string allows rules with non-wildcard path expressions to be bypassed. Envoy splits the requested URL into parts, and sends the parts individually to Heimdall. Although query and path are present in the API, the query field is documented to be always empty and the URL query is included in the path field. The implementation uses go's url library to reconstruct the url which automatically encodes special characters in the path. As a consequence, a parameter like /mypath?foo=bar to Path is escaped into /mypath%3Ffoo=bar. Subsequently, a rule matching /mypath no longer matches and is bypassed. The issue can only lead to unintended access if Heimdall is configured with an "allow all" default rule. Since v0.16.0, Heimdall enforces secure defaults and refuses to start with such a configuration unless this enforcement is explicitly disabled, e.g. via --insecure-skip-secure-default-rule-enforcement or the broader --insecure flag. This issue has been fixed in version 0.17.11.
Configurations

Configuration 1 (hide)

cpe:2.3:a:dadrus:heimdall:*:*:*:*:*:*:*:*

History

30 Mar 2026, 15:01

Type Values Removed Values Added
References () https://github.com/dadrus/heimdall/commit/50321b3007db1ccafdc6b1cfd6bdc3689c19a502 - () https://github.com/dadrus/heimdall/commit/50321b3007db1ccafdc6b1cfd6bdc3689c19a502 - Patch
References () https://github.com/dadrus/heimdall/pull/3106 - () https://github.com/dadrus/heimdall/pull/3106 - Issue Tracking, Patch
References () https://github.com/dadrus/heimdall/security/advisories/GHSA-r8x2-fhmf-6mxp - () https://github.com/dadrus/heimdall/security/advisories/GHSA-r8x2-fhmf-6mxp - Exploit, Vendor Advisory
References () https://github.com/envoyproxy/envoy/blob/105b4acd422d67fcff908ec38d91c7676d079939/api/envoy/service/auth/v3/attribute_context.proto#L146-L147 - () https://github.com/envoyproxy/envoy/blob/105b4acd422d67fcff908ec38d91c7676d079939/api/envoy/service/auth/v3/attribute_context.proto#L146-L147 - Patch
First Time Dadrus heimdall
Dadrus
CPE cpe:2.3:a:dadrus:heimdall:*:*:*:*:*:*:*:*
Summary
  • (es) Heimdall es un Proxy Consciente de la Identidad y un servicio de decisión de control de acceso nativo de la nube. Al usar Heimdall en modo API de decisión gRPC de Envoy con las versiones 0.7.0-alpha hasta 0.17.10, una codificación incorrecta de la cadena de URL de consulta permite que se eludan reglas con expresiones de ruta sin comodines. Envoy divide la URL solicitada en partes y envía las partes individualmente a Heimdall. Aunque la consulta y la ruta están presentes en la API, el campo de consulta está documentado para estar siempre vacío y la consulta de la URL se incluye en el campo de ruta. La implementación utiliza la biblioteca url de Go para reconstruir la URL, lo que codifica automáticamente los caracteres especiales en la ruta. Como consecuencia, un parámetro como /mypath?foo=bar a Path se escapa a /mypath%3Ffoo=bar. Posteriormente, una regla que coincide con /mypath ya no coincide y es eludida. El problema solo puede conducir a un acceso no intencionado si Heimdall está configurado con una regla predeterminada de 'permitir todo'. Desde la v0.16.0, Heimdall aplica valores predeterminados seguros y se niega a iniciar con dicha configuración a menos que esta aplicación se deshabilite explícitamente, p. ej., a través de --insecure-skip-secure-default-rule-enforcement o la bandera más amplia --insecure. Este problema ha sido solucionado en la versión 0.17.11.

20 Mar 2026, 02:16

Type Values Removed Values Added
New CVE

Information

Published : 2026-03-20 02:16

Updated : 2026-03-30 15:01


NVD link : CVE-2026-32811

Mitre link : CVE-2026-32811

CVE.ORG link : CVE-2026-32811


JSON object : View

Products Affected

dadrus

  • heimdall
CWE
CWE-116

Improper Encoding or Escaping of Output

CWE-863

Incorrect Authorization