CVE-2026-40683: OpenStack Keystone incorrect LDAP user status handling

CVE-2026-40683 · Severity: high · CVSS 7.7 · Published 2026-04-14

OpenStack Keystone, the identity service for OpenStack cloud environments, contains a flaw in how it handles disabled user accounts when using LDAP for authentication. Due to a coding error, Keystone may incorrectly treat accounts marked as 'disabled' in the corporate directory as 'enabled' because it fails to properly interpret the status data. This could allow unauthorized or former employees to continue accessing cloud resources and performing actions even after their accounts have been deactivated in the central directory.

Technologies: keystone (PyPI). Vendors: PyPI.

Quick answers

Is CVE-2026-40683 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-40683 being exploited in the wild.
How severe is CVE-2026-40683?
High severity, with a CVSS score of 7.7, published 14 April 2026.
Which products and versions are affected?
keystone (PyPI) < 28.0.1, ECOSYSTEM:introduced=0,fixed=28.0.1.
Is there a fix for CVE-2026-40683?
Yes. keystone (PyPI): upgrade to 28.0.1 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-40683 attacked?
It is attacked over the network, in a hosted service.
Am I affected by CVE-2026-40683?
Check whether you run keystone (PyPI) 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

  • keystone (PyPI): upgrade to 28.0.1 or later
    pip install "keystone>=28.0.1"

Technical details

A vulnerability exists in the OpenStack Keystone LDAP identity backend where the '_ldap_res_to_model' method in the 'UserApi' class fails to convert the 'enabled' attribute from a string to a boolean when 'user_enabled_invert' is set to False (the default). In Python, non-empty strings like "FALSE" evaluate to True in a boolean context. Consequently, Keystone interprets any non-empty status string from LDAP as an enabled state. Attackers with disabled LDAP credentials can bypass intended access controls to authenticate and perform actions. The issue is resolved in version 28.0.1 and backported to stable branches.

Affected products

  • OpenStack Keystone 8.0.0 to 25.0.0, 26.0.0 to 26.1.0, 27.0.0, 28.0.0

Identifiers

  • CVE-2026-40683
  • GHSA-pfx2-9x9m-7ghx
  • PYSEC-2026-2550

Timeline

  • 2025-08-21: disclosed: Initial bug report on Launchpad
  • 2026-03-16: patched: Fix included in 29.0.0.0rc1 release candidate
  • 2026-04-14: advisory: NVD publication date

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.