CVE-2021-32747
Custom variable protection and blacklists can be circumvented
Severity Score
Exploit Likelihood
Affected Versions
Public Exploits
1Exploited in Wild
-Decision
Descriptions
Icinga Web 2 is an open source monitoring web interface, framework, and command-line interface. A vulnerability in which custom variables are exposed to unauthorized users exists between versions 2.0.0 and 2.8.2. Custom variables are user-defined keys and values on configuration objects in Icinga 2. These are commonly used to reference secrets in other configurations such as check commands to be able to authenticate with a service being checked. Icinga Web 2 displays these custom variables to logged in users with access to said hosts or services. In order to protect the secrets from being visible to anyone, it's possible to setup protection rules and blacklists in a user's role. Protection rules result in `***` being shown instead of the original value, the key will remain. Backlists will hide a custom variable entirely from the user. Besides using the UI, custom variables can also be accessed differently by using an undocumented URL parameter. By adding a parameter to the affected routes, Icinga Web 2 will show these columns additionally in the respective list. This parameter is also respected when exporting to JSON or CSV. Protection rules and blacklists however have no effect in this case. Custom variables are shown as-is in the result. The issue has been fixed in the 2.9.0, 2.8.3, and 2.7.5 releases. As a workaround, one may set up a restriction to hide hosts and services with the custom variable in question.
Icinga Web 2 es una interfaz web de monitoreo de código abierto, un marco de trabajo y una interfaz de línea de comandos. Una vulnerabilidad entre las versiones 2.0.0 y 2.8.2, se presenta en la que las variables personalizadas son expuestas a usuarios no autorizados. Las variables personalizadas son claves y valores definidos por el usuario en los objetos de configuración de Icinga 2. Estas son comúnmente usadas para referenciar secretos en otras configuraciones tales como comandos de comprobación para poder autenticarse con un servicio que está siendo comprobado. Icinga Web 2 muestra estas variables personalizadas a los usuarios registrados con acceso a dichos hosts o servicios. Para proteger que los secretos sean visibles para cualquiera, es posible configurar reglas de protección y listas negras en el rol de un usuario. Las reglas de protección resultan en que se muestre "***" en lugar del valor original, la clave permanecerá. Unas listas negras ocultarán una variable personalizada por completo al usuario. Además de utilizar la interfaz de usuario, también se puede acceder a las variables personalizadas de forma diferente usando un parámetro de URL no documentado. Al añadir un parámetro a las rutas afectadas, Icinga Web 2 mostrará estas columnas adicionalmente en la lista respectiva. Este parámetro es también respetado al exportar a JSON o CSV. Sin embargo, las reglas de protección y las listas negras no tienen efecto en este caso. Las variables personalizadas se muestran tal cual en el resultado. Este problema ha sido corregido en las versiones 2.9.0, 2.8.3 y 2.7.5. Como solución alternativa, se puede ajustar una restricción para ocultar hosts y servicios con la variable personalizada en cuestión
CVSS Scores
SSVC
- Decision:-
Timeline
- 2021-05-12 CVE Reserved
- 2021-07-12 CVE Published
- 2023-10-04 EPSS Updated
- 2024-08-03 CVE Updated
- 2024-08-03 First Exploit
- ---------- Exploited in Wild
- ---------- KEV Due Date
CWE
- CWE-200: Exposure of Sensitive Information to an Unauthorized Actor
CAPEC
References (4)
URL | Tag | Source |
---|---|---|
https://github.com/Icinga/icingaweb2/releases/tag/v2.7.5 | Release Notes | |
https://github.com/Icinga/icingaweb2/releases/tag/v2.8.3 | Release Notes | |
https://github.com/Icinga/icingaweb2/releases/tag/v2.9.0 | Release Notes |
URL | Date | SRC |
---|---|---|
https://github.com/Icinga/icingaweb2/security/advisories/GHSA-2xv9-886q-p7xx | 2024-08-03 |
URL | Date | SRC |
---|
URL | Date | SRC |
---|
Affected Vendors, Products, and Versions
Vendor | Product | Version | Other | Status | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Vendor | Product | Version | Other | Status | <-- --> | Vendor | Product | Version | Other | Status |
Icinga Search vendor "Icinga" | Icinga Search vendor "Icinga" for product "Icinga" | >= 2.0.0 < 2.7.5 Search vendor "Icinga" for product "Icinga" and version " >= 2.0.0 < 2.7.5" | - |
Affected
| ||||||
Icinga Search vendor "Icinga" | Icinga Search vendor "Icinga" for product "Icinga" | >= 2.8.0 < 2.8.3 Search vendor "Icinga" for product "Icinga" and version " >= 2.8.0 < 2.8.3" | - |
Affected
|