Логотип exploitDog
Консоль
Логотип exploitDog

exploitDog

redhat логотип

CVE-2026-40683

Опубликовано: 14 апр. 2026
Источник: redhat
CVSS3: 7.7

Описание

In OpenStack Keystone before 28.0.1, the LDAP identity backend does not convert the user enabled attribute to a boolean when the user_enabled_invert configuration option is False (the default). The _ldap_res_to_model method in the UserApi class only performed string-to-boolean conversion when user_enabled_invert was True. When False, the raw string value from LDAP (e.g., "FALSE") was used directly. Since non-empty strings are truthy in Python, users marked as disabled in LDAP were treated as enabled by Keystone, allowing them to authenticate and perform actions. All deployments using the LDAP identity backend without user_enabled_invert=True or user_enabled_emulation are affected.

A flaw was found in OpenStack Keystone. When using the LDAP identity backend, the system incorrectly processes the user enabled attribute if the user_enabled_invert configuration option is set to False. This error causes users marked as disabled in LDAP to be treated as enabled within Keystone, allowing them to authenticate and perform actions despite their disabled status. This can lead to unauthorized access to resources.

Отчет

There's a flaw in OpenStack Keystone's LDAP identity backend allows unauthorized access. When the user_enabled_invert configuration option is set to its default of False, users marked as disabled in LDAP are incorrectly treated as enabled within Keystone. This enables them to authenticate and perform actions, affecting Red Hat OpenStack Platform deployments utilizing the LDAP identity backend without user_enabled_invert=True or user_enabled_emulation configured. This flaw happens due to the fact that any non-empty string in the Python programing language are handled as True, openstack-keystone lacks the proper conversion from string to boolean type when reading the user enabled LDAP attribute when the user_enabled_invert configuration is set to false, this will lead to any previously existing user which is disabled in the LDAP side will be handled as enabled by the OpenStack Keystone. Red Hat Product Security has rated this flaw as having the severity of Moderate as for exploiting this flaw the attacker needs to have a previous access to the targeted system, additionally the impact will be limited to the same level of access the attacker had previously it had its user disabled in the LDAP side.

Меры по смягчению последствий

To mitigate this issue, configure OpenStack Keystone to correctly interpret the LDAP user enabled attribute. Set the user_enabled_invert option to True in the keystone.conf file. Example:

[ldap] user_enabled_invert = True

After modifying the configuration, restart the Keystone service for the changes to take effect. This may temporarily disrupt authentication services. Additionally the user should start using an LDAP attribute with inverted semantics (such as nsAccountLock) to match the same semantics of the keystone side.

Затронутые пакеты

ПлатформаПакетСостояниеРекомендацияРелиз
Red Hat OpenStack Platform 13 (Queens)rhosp13/openstack-keystoneAffected
Red Hat OpenStack Platform 16.2openstack-keystoneNot affected
Red Hat OpenStack Platform 16.2rhosp-rhel8/openstack-keystoneNot affected
Red Hat OpenStack Platform 17.1openstack-keystoneNot affected
Red Hat OpenStack Platform 17.1rhosp-rhel9/openstack-keystoneNot affected
Red Hat OpenStack Platform 18.0rhoso/openstack-keystone-rhel9Not affected
Red Hat OpenStack Services on OpenShift 18.0openstack-keystoneFixedRHSA-2026:3980815.07.2026

Показывать по

Дополнительная информация

Статус:

Moderate
Дефект:
CWE-843
https://bugzilla.redhat.com/show_bug.cgi?id=2458472OpenStack Keystone: OpenStack Keystone: Unauthorized access due to incorrect LDAP user status handling

7.7 High

CVSS3

Связанные уязвимости

CVSS3: 7.7
ubuntu
4 месяца назад

In OpenStack Keystone before 28.0.1, the LDAP identity backend does not convert the user enabled attribute to a boolean when the user_enabled_invert configuration option is False (the default). The _ldap_res_to_model method in the UserApi class only performed string-to-boolean conversion when user_enabled_invert was True. When False, the raw string value from LDAP (e.g., "FALSE") was used directly. Since non-empty strings are truthy in Python, users marked as disabled in LDAP were treated as enabled by Keystone, allowing them to authenticate and perform actions. All deployments using the LDAP identity backend without user_enabled_invert=True or user_enabled_emulation are affected.

CVSS3: 7.7
nvd
4 месяца назад

In OpenStack Keystone before 28.0.1, the LDAP identity backend does not convert the user enabled attribute to a boolean when the user_enabled_invert configuration option is False (the default). The _ldap_res_to_model method in the UserApi class only performed string-to-boolean conversion when user_enabled_invert was True. When False, the raw string value from LDAP (e.g., "FALSE") was used directly. Since non-empty strings are truthy in Python, users marked as disabled in LDAP were treated as enabled by Keystone, allowing them to authenticate and perform actions. All deployments using the LDAP identity backend without user_enabled_invert=True or user_enabled_emulation are affected.

CVSS3: 7.7
debian
4 месяца назад

In OpenStack Keystone before 28.0.1, the LDAP identity backend does no ...

CVSS3: 7.7
github
4 месяца назад

OpenStack Keystone: LDAP identity backend does not convert enabled attribute to boolean

7.7 High

CVSS3