Vulnerabilidad en pgAdmin 4 (CVE-2024-2044)
Gravedad CVSS v3.1:
CRÍTICA
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
07/03/2024
Última modificación:
19/09/2025
Descripción
pgAdmin 4 utiliza un enfoque de gestión de sesiones basado en archivos. Los archivos de sesión se guardan en el disco como objetos pickle. Cuando un usuario realiza una solicitud, el valor de la cookie de sesión 'pga4_session' se utiliza para recuperar el archivo, luego se deserializa su contenido y finalmente se verifica su firma. El valor de la cookie se divide en 2 partes en el primer '!' personaje. La primera parte es el ID de la sesión (sid), mientras que la segunda es el resumen de la sesión. La vulnerabilidad radica en las versiones de pgAdmin anteriores a la 8.4, donde un método carga archivos de sesión concatenando la carpeta de sesiones, ubicada dentro de pgAdmin 4 DATA_DIR, con el ID de sesión. Precisamente, los dos valores se concatenan usando la función ['os.path.join']. No establece una ruta base confiable de la que no se debe escapar
Impacto
Puntuación base 3.x
9.90
Gravedad 3.x
CRÍTICA
Productos y versiones vulnerables
CPE | Desde | Hasta |
---|---|---|
cpe:2.3:a:pgadmin:pgadmin_4:*:*:*:*:*:postgresql:*:* | 8.4 (excluyendo) | |
cpe:2.3:o:fedoraproject:fedora:40:*:*:*:*:*:*:* |
Para consultar la lista completa de nombres de CPE con productos y versiones, ver esta página
Referencias a soluciones, herramientas e información
- https://github.com/pgadmin-org/pgadmin4/issues/7258
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/LUYN2JXKKHFSVTASH344TBRGWDH64XQV/
- https://www.shielder.com/advisories/pgadmin-path-traversal_leads_to_unsafe_deserialization_and_rce/
- https://github.com/pgadmin-org/pgadmin4/issues/7258
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/LUYN2JXKKHFSVTASH344TBRGWDH64XQV/
- https://www.shielder.com/advisories/pgadmin-path-traversal_leads_to_unsafe_deserialization_and_rce/