Lanzamiento de PostgreSQL 18.2, 17.8, 16.12, 15.16, y 14.21
El Grupo Global de Desarrollo de PostgreSQL ha lanzado una actualización para todas las versiones soportadas de PostgreSQL, incluyendo la 18.2, 17.8, 16.12, 15.16, y 14.21. Esta actualización soluciona 5 vulnerabilidades de seguridad y más de 65 errores detectados en los últimos meses.
Para consultar la lista completa de los cambios realizados, revisen las notas de la versión.
Problemas de seguridad
CVE-2026-2003: Divulgación de memoria mediante oidvector en PostgreSQL
Puntuación base CVSS v3.1: 4.3
Versiones soportadas vulnerables: 14 – 18.
Una validación incorrecta del tipo oidvector de PostgreSQL permite que un usuario revele algunos bytes de memoria del servidor. Aunque no se ha descartado un posible uso malicioso para obtener información confidencial, el riesgo parece limitado. Están afectadas las versiones anteriores a PostgreSQL 18.2, 17.8, 16.12, 15.16, y 14.21.
El proyecto PostgreSQL agradece a Altan Birler por reportar este problema.
CVE-2026-2004: Falta de validación del tipo de entrada en el estimador de selectividad de PostgreSQL intarray permite ejecutar código arbitrario
Puntuación base CVSS v3.1: 8.8
Versiones soportadas vulnerables: 14 – 18.
La falta de validación del tipo de entrada en la función estimadora de selectividad de la extensión intarray permite al creador de un objeto ejecutar código arbitrario como el usuario del sistema operativo que ejecuta la base de datos. Están afectadas las versiones anteriores a PostgreSQL 18.2, 17.8, 16.12, 15.16, y 14.21.
El proyecto PostgreSQL agradece a Daniel Firer, de zeroday.cloud, por reportar este problema
CVE-2026-2005: Desbordamiento de búfer en el heap de pgcrypto en PostgreSQL permite ejecutar código arbitrario
Puntuación base CVSS v3.1: 8.8
Versiones soportadas vulnerables: 14 – 18.
Un desbordamiento de búfer en el heap del módulo pgcrypto de PostgreSQL permite que un proveedor de texto cifrado ejecute código arbitrario con los privilegios del usuario del sistema operativo que ejecuta la base de datos. Están afectadas las versiones anteriores a PostgreSQL 18.2, 17.8, 16.12, 15.16, y 14.21.
El proyecto PostgreSQL agradece a Team Xint Code, de zeroday.cloud, por reportar este problema
CVE-2026-2006: Falta de validación de la longitud de caracteres multibyte en PostgreSQL permite ejecutar código arbitrario
Puntuación base CVSS v3.1: 8.8
Versiones soportadas vulnerables: 14 – 18.
La falta de validación de la longitud de caracteres multibyte en las funciones de manipulación de texto de PostgreSQL permite que un usuario de la base de datos emita consultas especialmente diseñadas que provocan un desbordamiento de búfer. Esto es suficiente para ejecutar código arbitrario con los privilegios del usuario del sistema operativo que ejecuta la base de datos. Están afectadas las versiones anteriores a PostgreSQL 18.2, 17.8, 16.12, 15.16, y 14.21.
El proyecto PostgreSQL agradece a Paul Gerste y Moritz Sanft, de zeroday.cloud, por reportar este problema
CVE-2026-2007: Desbordamiento de búfer en el heap de pg_trgm de PostgreSQL escribe patrones en la memoria del servidor
Puntuación base CVSS v3.1: 8.2
Versiones soportadas vulnerables: 18.
Un desbordamiento de búfer en el heap de la extensión pg_trgm de PostgreSQL permite que un usuario de la base de datos cause impactos desconocidos mediante una cadena de entrada manipulada. Aunque el atacante tiene control limitado sobre los bytes escritos, no se ha descartado la posibilidad de ataques que resulten en escalada de privilegios. Están afectadas las versiones 18.1 y 18.0 de PostgreSQL.
El proyecto PostgreSQL agradece a Heikki Linnakangas por reportar este problema.
Corrección de errores y mejoras
Esta actualización corrige más de 65 errores reportados en los últimos meses. Aunque los problemas que se enumeran a continuación afectan a PostgreSQL 18, es posible que algunos de ellos afecten también a otras versiones soportadas de PostgreSQL.
- Se corrige la inconsistencia en la coincidencia de texto sin distinción entre mayúsculas y minúsculas en la extensión ltree. Si se utiliza un índice en una columna ltree, en algunos casos puede ser necesario ejecutar un reindex. Para más instrucciones, consulten la sección «Actualización».
- La ejecución de
ALTER TABLE ... ADD CONSTRAINTpara añadir una restricciónNOT NULLa una columna que ya estaba marcada comoNOT NULLahora requiere que el nombre de la restricción coincida con el nombre de la restricción existente. - Se corrige el comportamiento de los triggers al ejecutar
MERGEdentro de consultasWITHpara incluir los registros afectados porMERGE. - Múltiples correcciones en el planificador de consultas.
- Corrección en la búsqueda de subcadenas de texto para intercalaciones no determinísticas.
- Varias correcciones en el manejo y reporte de errores de
NOTIFY. - Se usa la función de ordenación correcta en las compilaciones paralelas de índices GIN.
- Corrección del manejo de respaldos incrementales con tablas mayores de 1 GB
- Fallar la recuperación si no existe todo el WAL hasta el punto redo indicado en el registro de checkpoint.
- Corrección en
ALTER PUBLICATIONpara garantizar que los triggers de eventos contengan todas las opciones configuradas. - Varias correcciones relacionadas con la inicialización de slots de replicación.
- Se evita el avance del slot de replicación tras un fallo de aplicación de un worker paralelo de replicación lógica, para prevenir pérdida de transacciones en el suscriptor.
- Corrección en el reporte de errores para incompatibilidades de tipo en rutas SQL/JSON.
- Corrección para la incrustación en línea de la función de compilación JIT al utilizar LLVM 17 o posterior.
- Se añade el nuevo parámetro de servidor
file_extend_methodpara controlar el uso deposix_fallocate(). - Correcciones en el autocompletado de
psqlpara opciones del comandoVACUUM. - Corrección de pg_dump para que gestione de forma adecuada las eliminaciones simultáneas de secuencias y falle si el usuario solicitante carece de privilegios explícitos de lectura de la secuencia.
- Varias correcciones en
amcheckpara inspección de índicesbtree. - Se evita una caída en
pg_stat_statementscuando una listaINcontiene tanto expresiones constantes como no constantes.
Esta versión también actualiza los archivos de datos de zonas horarias a la versión 2025c de tzdata, con un cambio histórico para marcas de tiempo anteriores anteriores a 1976 en Baja California.
Actualización
Todas las actualizaciones de PostgreSQL son acumulativas. Al igual que en otras actualizaciones menores, para instalar esta actualización no es necesario realizar un volcado y volver a cargar la base de datos o usar pg_upgrade. Es suficiente con detener PostgreSQL y actualizar sus binarios.
Si existen índices en columnas ltree y no se utiliza el proveedor de intercalación libc, tras actualizar a la versión más reciente es necesario reindexar las columnas ltree. Para minimizar el impacto en el sistema, se recomienda usar REINDEX INDEX CONCURRENTLY.
Si anteriormente omitieron una o más actualizaciones, podría ser necesario seguir algunos pasos posteriores a la actualización. Para más detalles consulten las notas de las versiones anteriores.
Para más detalles, véanse las notas de la versión.
Enlaces
Si desean hacer correcciones o sugerencias para este anuncio de lanzamiento, por favor envíelas a la lista de correo pública pgsql-www@lists.postgresql.org.

