Quick answers
- Is CVE-2026-109357 exploited in the wild?
- No. Junglewise Threat Intelligence has no report of CVE-2026-109357 being exploited in the wild.
- How severe is CVE-2026-109357?
- High severity, with a CVSS score of 8.1, published 12 October 2026.
- Which products and versions are affected?
- Librenms before 26.9.0.
- Is there a fix for CVE-2026-109357?
- Yes: fixed in 26.9.0. Until then: Ensure the web server explicitly forwards the REMOTE_USER variable to PHP (e.g., via fastcgi_param REMOTE_USER $remote_user; in Nginx), which prevents the fallback to attacker-controlled PHP_AUTH_USER. Alternatively, disable ldap-authorization and ad-authorization modes until upgrading. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
- How is CVE-2026-109357 attacked?
- It is attacked over the network, in a web application.
- Am I affected by CVE-2026-109357?
- Check whether you run Librenms at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.
How to fix
- Fixed in: 26.9.0
Ensure the web server explicitly forwards the REMOTE_USER variable to PHP (e.g., via fastcgi_param REMOTE_USER $remote_user; in Nginx), which prevents the fallback to attacker-controlled PHP_AUTH_USER. Alternatively, disable ldap-authorization and ad-authorization modes until upgrading.
Technical details
The vulnerability is an LDAP filter injection (CWE-90) in the ldap-authorization and ad-authorization modes. Usernames from the HTTP Authorization header (PHP_AUTH_USER) are interpolated directly into LDAP search filters without escaping. Because these authorization modes perform only an existence check (no password bind), an attacker can inject wildcard characters (e.g., "*") to match all LDAP users and bypass authentication entirely, then match all group memberships to gain admin-level roles.
Affected products
- LibreNMS LibreNMS before 26.9.0
Timeline
- 2026-09-23: disclosed
- 2026-10-12: advisory