Skip to content
OpenAdvisories
Medium · 5.3 CVE-2021-32747 EUVD-2021-19519

Custom variable protection and blacklists can be circumvented

Published Jul 12, 2021 · Updated Aug 3, 2024 · Assigned by GitHub_M

Description

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.

Affected products

VendorProductAffectedFixed
Icinga icingaweb2 >= 2.0.0, <= 2.8.2 —

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 icingaweb2 2.8.4-1 —
Debian 13 icingaweb2 2.8.4-1 —
Debian 12 icingaweb2 2.8.4-1 —
ReleasePackageFixed inAdvisory
Ubuntu 26.10 icingaweb2 No fix yet —
Ubuntu 26.04 LTS icingaweb2 No fix yet —
Ubuntu 25.10 icingaweb2 No fix yet —
Ubuntu 24.04 LTS icingaweb2 No fix yet —
Ubuntu 22.04 LTS icingaweb2 No fix yet —
Show 3 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Ubuntu 20.04 LTS icingaweb2 No fix yet —
Ubuntu 18.04 LTS icingaweb2 No fix yet —
Ubuntu 16.04 LTS icingaweb2 No fix yet —
ReleasePackageFixed inAdvisory
Alpine v3.24 icingaweb2 2.9.0-r0 —
Alpine v3.23 icingaweb2 2.9.0-r0 —
Alpine v3.22 icingaweb2 2.9.0-r0 —
Alpine v3.21 icingaweb2 2.9.0-r0 —
Alpine v3.20 icingaweb2 2.9.0-r0 —
Show 5 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Alpine v3.19 icingaweb2 2.9.0-r0 —
Alpine v3.18 icingaweb2 2.9.0-r0 —
Alpine v3.17 icingaweb2 2.9.0-r0 —
Alpine v3.16 icingaweb2 2.9.0-r0 —
Alpine v3.15 icingaweb2 2.9.0-r0 —

References