Múltiples proveedores de nube afectados por las vulnerabilidades de PostgreSQL que expuso las bases de datos empresariales

Vulnerabilidades descubiertos en varias ofertas de PostgreSQL-as-a-Service, incluidas las de Microsoft y Google

Wiz Research ha encontrado vulnerabilidades en ofertas populares de ‘PostgreSQL-as-a-Service’ de varios proveedores de nube, introducidas por los propios proveedores de nube.

A principios de este año, el equipo de seguridad descubrió una cadena de vulnerabilidades críticas en Microsoft Azure Database for PostgreSQL Flexible Server.

El exploit, denominado #ExtraReplica, permitía el acceso de lectura no autorizado a las bases de datos PostgreSQL de otros clientes , sin pasar por el aislamiento de inquilinos.

“El aislamiento no era perfecto y teníamos acceso a la red desde nuestra instancia administrada a las instancias de otros clientes, lo que abrió una superficie de ataque para otras vulnerabilidades potenciales”, dice Shir Tamari, jefe de investigación de Wiz.

“Probamos que era posible explotar esta superficie de ataque y obtuvimos acceso de lectura completa a las bases de datos de otros clientes”.

Vulnerabilidad de décadas

Wiz ahora ha revelado que una vulnerabilidad similar afecta a Google Cloud Platform (GCP), aunque con efectos potenciales menos graves.

PostgreSQL, que data de hace 25 años, carece de un modelo de permisos adecuado para un servicio administrado, lo que lleva a los proveedores a agregar su propio código.

“Al convertir a Postgres en un servicio administrado, los proveedores de servicios en la nube querían brindar a los usuarios privilegios de superusuario sin arriesgar su servicio al permitir algunas capacidades consideradas peligrosas”, dice Tamari.

“El modelo de permisos de PostgreSQL no puede proporcionar a un usuario solo un conjunto de privilegios de superusuario. Por lo tanto, los proveedores de la nube tuvieron que introducir modificaciones para permitir a los usuarios regulares un conjunto de capacidades de superusuario. “

Estas modificaciones permiten que el equipo ejecute comandos arbitrarios en instancias informáticas administradas por proveedores de múltiples ofertas de PostgreSQL como servicio; en casos extremos, obtienen acceso no autorizado a datos de usuarios cruzados para otros clientes que utilizan el servicio afectado.

Docenas de arreglos

En el caso de Cloud SQL, aunque el equipo no pudo obtener el estado de superusuario, sí pudo acceder a algunos de sus privilegios. Una era la capacidad de cambiar arbitrariamente la propiedad de una tabla a cualquier usuario o rol en la base de datos.

Esto significaba que el equipo podía crear una tabla con contenido ficticio, crear una función de índice malicioso, con su carga útil de ejecución de código, en la tabla y, luego, cambiar el propietario de la tabla a cloudsqladmin , la función de superusuario de GCP, utilizada solo por Cloud SQL para mantener y administrar la base de datos.

Luego, el análisis de la tabla obligó al motor PostgreSQL a cambiar el contexto de usuario al propietario de la tabla, cloudsqladmin , y llamar a la función de índice malicioso con los permisos de cloudsqladmin , lo que resultó en la ejecución del comando shell.

“Durante la investigación, trabajamos con más de una docena de proveedores de PostgreSQL para verificar y solucionar las vulnerabilidades que descubrimos. Resulta que muchos proveedores de la nube introdujeron las mismas modificaciones para ajustar PostgreSQL como un servicio administrado y, por lo tanto, eran potencialmente vulnerables”, dice Tamari.

“Como parte de un amplio proceso de divulgación responsable, compartimos nuestros hallazgos con los principales proveedores de la nube y otros para ayudarlos a determinar si estuvieron expuestos a las vulnerabilidades que identificamos”.

Fuente: https://portswigger.net/daily-swig/multiple-cloud-vendors-impacted-by-postgresql-vulnerability-that-exposed-enterprise-databases