PostGREShell: La vulnerabilidad de 12 años que permite el control total de tus servidores PostgreSQL
Análisis Técnico y Vector de Ataque
La vulnerabilidad identificada como CVE-2026-6471, apodada 'PostGREShell', representa un fallo de diseño en el manejo de la replicación lógica de PostgreSQL que ha permanecido latente durante 12 años. Afecta a todas las versiones desde la 9.4 hasta la 18.2.
El núcleo del problema reside en la falta de validación de los nombres de los plugins de salida utilizados en el protocolo de replicación lógica. Cuando un usuario con permisos de REPLICATION solicita la creación de un slot de replicación, debe especificar un plugin. PostgreSQL utiliza la función dlopen() para cargar este plugin dinámicamente. El fallo ocurre porque el sistema no sanitiza la ruta del plugin, permitiendo a un atacante inyectar rutas arbitrarias (incluyendo ../ traversal o rutas UNC en Windows).
Ilustración del Exploit
Al cargar una librería maliciosa mediante dlopen(), el código se ejecuta con los privilegios del proceso postgres (generalmente el usuario del sistema operativo que corre el servicio). Una vez dentro del espacio de memoria del proceso, el atacante puede:
bootstrap superuser.pg_authid para otorgar privilegios permanentes de superusuario a cualquier cuenta controlada.Impacto de Negocio y Cumplimiento
Para las organizaciones, este vector es devastador. Un atacante que comprometa una cuenta de servicio de replicación (comúnmente utilizada por herramientas de backup o monitoreo) puede saltar de un acceso limitado a la ejecución remota de código (RCE) y control total del servidor. Esto contraviene directamente los controles de seguridad de normativas como NIS2 y CRA, que exigen una gestión estricta de privilegios y resiliencia ante ataques de cadena de suministro.
La Perspectiva de InitIA-Sec
En InitIA-Sec, observamos que el problema no es solo el parche, sino la 'deuda de configuración'. Muchos entornos operan con usuarios de replicación sobre-privilegiados.
Recomendaciones inmediatas:
- Actualizar: Moverse a las versiones 18.6, 17.11, 16.15, 15.19 o 14.24.
- Auditar: Revisar todos los usuarios con el atributo
REPLICATIONy aplicar el principio de menor privilegio. - Monitorear: Implementar alertas sobre la carga de librerías inesperadas en el directorio de datos de PostgreSQL.
Si tu infraestructura depende de PostgreSQL, no esperes a un incidente. Nuestro equipo de red-teaming puede auditar tu stack para detectar configuraciones de replicación inseguras bajo nuestra modalidad 'No Win, No Fee'.
Noticia basada en fuente original: Hacking News & Advisories
¿Preocupado por vectores de ataque similares en tu aplicación?
En InitIA-Sec ejecutamos auditorías y pentesting con garantía de resultado: si en la fase inicial de screening no detectamos fallos de severidad Media o Crítica, el servicio es 100% gratuito.