Escalada de privilegios: el superusuario de la base de datos de AlloyDB escribe en tablas de usuario

En este documento se describe un tipo de hallazgo de amenazas en Security Command Center. Los hallazgos de amenazas los generan los detectores de amenazas cuando detectan una amenaza potencial en tus recursos de la nube. Para ver una lista completa de las detecciones de amenazas disponibles, consulta el índice de detecciones de amenazas.

Información general

La cuenta de superusuario de la base de datos AlloyDB para PostgreSQL (postgres) escribió en las tablas de usuario. Por lo general, no se debe usar el superusuario (un rol con un acceso muy amplio) para escribir en tablas de usuarios. Para las actividades diarias normales, se debe usar una cuenta de usuario con un acceso más limitado. Cuando un superusuario escribe en una tabla de usuarios, podría indicar que un atacante ha aumentado los privilegios o ha vulnerado la seguridad del usuario de la base de datos predeterminado y está modificando los datos. También podría indicar prácticas normales, pero no seguras.

Cómo responder

Para responder a esta observación, sigue estos pasos:

Paso 1: Revisa los detalles de la detección

  1. Abre un Privilege Escalation: AlloyDB Database Superuser Writes to User Tables tal como se indica en Revisar resultados.
  2. En la pestaña Resumen del panel de detalles de la detección, consulta la información de las siguientes secciones:

    • Qué se detectó, especialmente los siguientes campos:
      • Nombre visible de la base de datos: el nombre de la base de datos de la instancia de AlloyDB para PostgreSQL que se ha visto afectada.
      • Nombre de usuario de la base de datos: el superusuario.
      • Consulta de base de datos: la consulta de SQL que se ejecuta al escribir en tablas de usuarios.
    • Recurso afectado, especialmente los siguientes campos:
      • Nombre completo del recurso: el nombre del recurso de la instancia de AlloyDB para PostgreSQL que se ha visto afectada.
      • Nombre completo del elemento superior: el nombre del recurso de la instancia de AlloyDB para PostgreSQL.
      • Nombre completo del proyecto: el Google Cloud proyecto que contiene la instancia de AlloyDB para PostgreSQL.
    • Enlaces relacionados, especialmente los siguientes campos:
      • URI de Cloud Logging: enlace a las entradas de registro.
      • Método MITRE ATT&CK: enlace a la documentación de MITRE ATT&CK.
  3. Para ver el JSON completo de la detección, haga clic en la pestaña JSON.

Paso 2: Consulta los registros

  1. En la Google Cloud consola, ve al Explorador de registros haciendo clic en el enlace de cloudLoggingQueryURI (en Paso 1). La página Explorador de registros incluye todos los registros relacionados con la instancia de AlloyDB para PostgreSQL correspondiente.
  2. Consulta los registros de pgaudit de PostgreSQL, que contienen las consultas ejecutadas por el superusuario, mediante los siguientes filtros:
    • protoPayload.request.user="postgres"

Paso 3: Investiga los métodos de ataque y respuesta

  1. Consulta la entrada del framework ATT&CK de MITRE para este tipo de resultado: Exfiltración a través de un servicio web.
  2. Para determinar si son necesarias medidas correctoras adicionales, combina los resultados de tu investigación con la investigación de MITRE.

Paso 4: Implementa tu respuesta

El siguiente plan de respuesta puede ser adecuado para este resultado, pero también puede afectar a las operaciones. Evalúa detenidamente la información que recojas en tu investigación para determinar la mejor forma de resolver los resultados.

Siguientes pasos