Instituto Nacional de ciberseguridad. Sección Incibe
Instituto Nacional de Ciberseguridad. Sección INCIBE-CERT

Vulnerabilidad en PostgreSQL (CVE-2024-10978)

Gravedad CVSS v3.1:
MEDIA
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
14/11/2024
Última modificación:
20/02/2025

Descripción

La asignación incorrecta de privilegios en PostgreSQL permite que un usuario de la aplicación con menos privilegios vea o cambie filas distintas a las previstas. Un ataque requiere que la aplicación utilice SET ROLE, SET SESSION AUTHORIZATION o una función equivalente. El problema surge cuando una consulta de la aplicación utiliza parámetros del atacante o transmite los resultados de la consulta al atacante. Si esa consulta reacciona a current_setting('role') o al ID de usuario actual, puede modificar o devolver datos como si la sesión no hubiera utilizado SET ROLE o SET SESSION AUTHORIZATION. El atacante no controla qué ID de usuario incorrecto se aplica. El texto de la consulta de fuentes con menos privilegios no es un problema aquí, porque SET ROLE y SET SESSION AUTHORIZATION no son entornos aislados para consultas no verificadas. Las versiones anteriores a PostgreSQL 17.1, 16.5, 15.9, 14.14, 13.17 y 12.21 se ven afectadas.

Productos y versiones vulnerables

CPE Desde Hasta
cpe:2.3:a:postgresql:postgresql:*:*:*:*:*:*:*:* 12.0 (incluyendo) 12.21 (excluyendo)
cpe:2.3:a:postgresql:postgresql:*:*:*:*:*:*:*:* 13.0 (incluyendo) 13.17 (excluyendo)
cpe:2.3:a:postgresql:postgresql:*:*:*:*:*:*:*:* 14.0 (incluyendo) 14.14 (excluyendo)
cpe:2.3:a:postgresql:postgresql:*:*:*:*:*:*:*:* 15.0 (incluyendo) 15.9 (excluyendo)
cpe:2.3:a:postgresql:postgresql:*:*:*:*:*:*:*:* 16.0 (incluyendo) 16.5 (excluyendo)
cpe:2.3:a:postgresql:postgresql:17.0:-:*:*:*:*:*:*
cpe:2.3:a:postgresql:postgresql:17.0:beta1:*:*:*:*:*:*
cpe:2.3:a:postgresql:postgresql:17.0:beta2:*:*:*:*:*:*
cpe:2.3:a:postgresql:postgresql:17.0:beta3:*:*:*:*:*:*
cpe:2.3:a:postgresql:postgresql:17.0:rc1:*:*:*:*:*:*
cpe:2.3:o:debian:debian_linux:11.0:*:*:*:*:*:*:*