Vulnerabilidad en PostgreSQL que permite ejecutar código SQL con los derechos del usuario que ejecuta pg_dump

Se han generado actualizaciones correctivas para todas las ramas compatibles de PostgreSQL 16.4, 15.8, 14.13, 13.16, 12.20, que corrigen 56 errores identificados durante los últimos tres meses. Entre otras cosas, las nuevas versiones eliminan una vulnerabilidad (CVE-2024-7348), marcada como peligrosa (nivel de peligro 8.8 sobre 10). La vulnerabilidad es causada por una condición de carrera en la utilidad pg_dump, que permite a un atacante con la capacidad de crear y eliminar objetos persistentes en el DBMS ejecutar código SQL arbitrario con los derechos del usuario bajo el cual se ejecuta la utilidad pg_dump (generalmente pg_dump se ejecuta con derechos de superusuario para realizar copias de seguridad del DBMS).

Para que un ataque tenga éxito, es necesario realizar un seguimiento del momento en que se inicia la utilidad pg_dump, que se implementa fácilmente mediante la manipulación de una transacción abierta. El ataque se reduce a reemplazar una secuencia con una vista o tabla externa que define el código SQL que se ejecutará en el momento en que se ejecuta pg_dump, cuando ya se ha recibido información sobre la presencia de la secuencia, pero los datos aún no se han emitido. . Para bloquear la vulnerabilidad, se agregó la configuración "restrict_nonsystem_relation_kind", que prohíbe la divulgación de vistas que no sean del sistema y el acceso a tablas externas en pg_dump.

Fuente: opennet.ru

Añadir un comentario