CVE-2024-24771

Open Forms allows users create and publish smart forms. Versions prior to 2.2.9, 2.3.7, 2.4.5, and 2.5.2 contain a non-exploitable multi-factor authentication weakness. Superusers who have their credentials (username + password) compromised could potentially have the second-factor authentication bypassed if an attacker somehow managed to authenticate to Open Forms. The maintainers of Open Forms do not believe it is or has been possible to perform this login. However, if this were possible, the victim's account may be abused to view (potentially sensitive) submission data or have been used to impersonate other staff accounts to view and/or modify data. Three mitigating factors to help prevent exploitation include: the usual login page (at `/admin/login/`) does not fully log in the user until the second factor was succesfully provided; the additional non-MFA protected login page at `/api/v2/api-authlogin/` was misconfigured and could not be used to log in; and there are no additional ways to log in. This also requires credentials of a superuser to be compromised to be exploitable. Versions 2.2.9, 2.3.7, 2.4.5, and 2.5.2 contain the following patches to address these weaknesses: Move and only enable the API auth endpoints (`/api/v2/api-auth/login/`) with `settings.DEBUG = True`. `settings.DEBUG = True` is insecure and should never be applied in production settings. Additionally, apply a custom permission check to the hijack flow to only allow second-factor-verified superusers to perform user hijacking.
Configurations

Configuration 1 (hide)

OR cpe:2.3:a:maykinmedia:open_forms:*:*:*:*:*:*:*:*
cpe:2.3:a:maykinmedia:open_forms:*:*:*:*:*:*:*:*
cpe:2.3:a:maykinmedia:open_forms:*:*:*:*:*:*:*:*
cpe:2.3:a:maykinmedia:open_forms:*:*:*:*:*:*:*:*

History

15 Feb 2024, 05:01

Type Values Removed Values Added
References () https://github.com/open-formulieren/open-forms/releases/tag/2.2.9 - () https://github.com/open-formulieren/open-forms/releases/tag/2.2.9 - Release Notes
References () https://github.com/open-formulieren/open-forms/releases/tag/2.3.7 - () https://github.com/open-formulieren/open-forms/releases/tag/2.3.7 - Release Notes
References () https://github.com/open-formulieren/open-forms/releases/tag/2.4.5 - () https://github.com/open-formulieren/open-forms/releases/tag/2.4.5 - Release Notes
References () https://github.com/open-formulieren/open-forms/releases/tag/2.5.2 - () https://github.com/open-formulieren/open-forms/releases/tag/2.5.2 - Release Notes
References () https://github.com/open-formulieren/open-forms/security/advisories/GHSA-64r3-x3gf-vp63 - () https://github.com/open-formulieren/open-forms/security/advisories/GHSA-64r3-x3gf-vp63 - Mitigation, Vendor Advisory
CVSS v2 : unknown
v3 : 7.7
v2 : unknown
v3 : 5.9
First Time Maykinmedia
Maykinmedia open Forms
Summary
  • (es) Open Forms permite a los usuarios crear y publicar formularios inteligentes. Las versiones anteriores a 2.2.9, 2.3.7, 2.4.5 y 2.5.2 contienen una debilidad de autenticación multifactor no explotable. Los superusuarios que tienen sus credenciales (nombre de usuario + contraseña) comprometidas podrían pasar por alto la autenticación de segundo factor si un atacante de alguna manera logra autenticarse en Open Forms. Los mantenedores de Open Forms no creen que sea ni haya sido posible realizar este inicio de sesión. Sin embargo, si esto fuera posible, se podría abusar de la cuenta de la víctima para ver datos de envío (potencialmente confidenciales) o haber sido utilizada para hacerse pasar por otras cuentas del personal para ver y/o modificar datos. Tres factores atenuantes para ayudar a prevenir la explotación incluyen: la página de inicio de sesión habitual (en `/admin/login/`) no inicia la sesión completa del usuario hasta que el segundo factor se proporciona con éxito; la página de inicio de sesión adicional no protegida por MFA en `/api/v2/api-authlogin/` estaba mal configurada y no se podía usar para iniciar sesión; y no hay formas adicionales de iniciar sesión. Esto también requiere que las credenciales de un superusuario estén comprometidas para que sean explotables. Las versiones 2.2.9, 2.3.7, 2.4.5 y 2.5.2 contienen los siguientes parches para abordar estas debilidades: Mover y habilitar solo los endpoints de autenticación API (`/api/v2/api-auth/login/`) con `settings.DEBUG = True`. `settings.DEBUG = True` es inseguro y nunca debe aplicarse en entornos de producción. Además, aplique una verificación de permiso personalizada al flujo de secuestro para permitir que solo los superusuarios verificados por un segundo factor realicen el secuestro de usuarios.
CPE cpe:2.3:a:maykinmedia:open_forms:*:*:*:*:*:*:*:*

07 Feb 2024, 15:15

Type Values Removed Values Added
New CVE

Information

Published : 2024-02-07 15:15

Updated : 2024-02-15 05:01


NVD link : CVE-2024-24771

Mitre link : CVE-2024-24771

CVE.ORG link : CVE-2024-24771


JSON object : View

Products Affected

maykinmedia

  • open_forms
CWE
CWE-284

Improper Access Control

CWE-287

Improper Authentication

CWE-654

Reliance on a Single Factor in a Security Decision