Informe del modelo de amenazas de BigQuery

Última actualización: 16 de abril de 2026

En este documento, se identifican posibles vectores de ataque y estrategias de mitigación para la confidencialidad, la integridad y la disponibilidad de los datos en BigQuery. El alcance de este informe se limita a tu perspectiva y se enfoca en los riesgos que puedes administrar en tu entorno de BigQuery.

Estos modelos de amenazas son una evaluación probabilística basada en los vectores de ataque conocidos actualmente, las suposiciones arquitectónicas y el alcance especificado del sistema en el momento de la publicación. Estos modelos no son exhaustivos y tienen como objetivo servir de referencia para las evaluaciones de seguridad y riesgo de los clientes de Google Cloud, así como orientar las decisiones de reducción de riesgos.

Se identificaron las siguientes amenazas para este servicio:

Detalles de amenazas

En las siguientes secciones, se proporciona información sobre cada amenaza, sus manifestaciones y las mitigaciones recomendadas.

Destrucción de datos con alteración del esquema

Un atacante con permisos para modificar el esquema de una tabla puede provocar la pérdida de datos o hacer que la tabla sea inutilizable para las aplicaciones posteriores. Esta forma de manipulación se dirige a los metadatos y la estructura de los datos, lo que puede ser tan destructivo como modificar los datos en sí.

Categoría STRIDE

Manipulación

Táctica de MITRE ATT&CK

Impacto

Manifestaciones

Actualización maliciosa del esquema: Una principal con el permiso bigquery.tables.update puede llamar al método de la API tables.patch en una tabla de BigQuery para alterar su esquema. Cambiar los tipos de datos de las columnas puede dañar los datos o provocar la pérdida de información, lo que podría interrumpir las consultas de las aplicaciones cliente o las herramientas de inteligencia empresarial, y generar una pérdida de confianza en los informes posteriores.

Mitigaciones

Limita estrictamente el permiso bigquery.tables.update, que forma parte de roles como roles/bigquery.dataOwner. Solo otorga este permiso a una pequeña cantidad de administradores o cuentas de servicio automatizadas de CI/CD que sean responsables de las migraciones de esquemas administrados. Habilita las copias de seguridad de las tablas de BigQuery o usa instantáneas de tablas para recuperarte de cambios accidentales o maliciosos en el esquema. Supervisa los registros de auditoría de Cloud en busca de llamadas a la API de tables.patch y genera alertas sobre cualquier cambio que se realice fuera de un período de mantenimiento planificado.

Elevación de privilegios a través de la manipulación de políticas de permisos de IAM

Un atacante que vulnera una entidad principal con permisos para modificar las políticas de IAM de BigQuery puede aumentar sus privilegios para obtener el control total sobre los recursos de datos. Esta amenaza permite que el atacante otorgue acceso para leer, modificar o borrar datos sensibles, lo que elude los controles de acceso existentes.

Categoría STRIDE

Elevación de privilegios

Táctica de MITRE ATT&CK

Elevación de privilegios

Manifestaciones
  • Modificación de la política del conjunto de datos: Un principal con el permiso bigquery.datasets.update puede llamar al método de la API de datasets.patch en un conjunto de datos de BigQuery para agregar su propia identidad a un rol de propietario, lo que le otorga el control total sobre todos los recursos dentro de ese conjunto de datos.

  • Identidad temporal como cuenta de servicio: Una identidad con el permiso iam.serviceAccounts.actAs en una cuenta de servicio puede conectar la cuenta de servicio a otros recursos, como una instancia de Compute Engine, para ejecutar código con la identidad de la cuenta de servicio adjunta. Como alternativa, una identidad con el permiso iam.serviceAccounts.getAccessToken puede generar tokens de acceso para esa cuenta de servicio. Si la cuenta de servicio de destino tiene permisos elevados en los recursos de BigQuery, el atacante heredará esos privilegios de manera efectiva.

Mitigaciones

Limita estrictamente los permisos que permiten la modificación de la política de permisos de IAM (por ejemplo, bigquery.datasets.update, que forma parte de roles como roles/bigquery.dataOwner). Asigna estos roles solo a una cantidad mínima de administradores de confianza. Del mismo modo, controla estrictamente los roles de IAM con permiso para actuar como cuentas de servicio o suplantarlas, y limita el alcance de estos roles a los principales específicos que lo requieran. Supervisa los registros de auditoría de Cloud para detectar llamadas a las APIs de SetIamPolicy y datasets.patch y detectar cambios no autorizados en las políticas.

Abuso de Confused Deputy con servicios descendentes activados por BigQuery

Un atacante con permisos limitados de BigQuery crea un trabajo o una consulta que activa un servicio posterior (por ejemplo, una Cloud Function, un trabajo de Dataflow o un DAG de Cloud Composer) que se ejecuta con privilegios más altos. El servicio descendente, si bien cree que está realizando una acción legítima en nombre de BigQuery, se engaña para que realice una acción en un recurso diferente o con datos diferentes a los previstos por los diseñadores del sistema.

Categoría STRIDE

Elevación de privilegios

Táctica de MITRE ATT&CK

Elevación de privilegios

Manifestaciones
  • Activador de función malicioso: Un cambio en BigQuery activa una Cloud Function que tiene permisos amplios, y el atacante manipula los datos de BigQuery para controlar las acciones de la función.

  • Aprovechamiento de canalizaciones de Dataflow: El resultado de una consulta de BigQuery se usa como entrada para un trabajo de Dataflow, y el atacante escribe los resultados de la consulta para que el trabajo de Dataflow transfiera datos contaminados.

Mitigaciones

Aplica el principio de privilegio mínimo a las cuentas de servicio que usan los servicios de nivel inferior que activa BigQuery. Asegúrate de que estos servicios validen y desinfecten cualquier entrada o parámetro que reciban de los trabajos de BigQuery. Usa los Controles del servicio de VPC para restringir las rutas de red y las interacciones de servicios. Diseña los servicios posteriores para que no confíen de forma inherente en las entradas de BigQuery sin verificación.

Robo de datos con salida de red sin restricciones

Si no hay controles de seguridad a nivel de la red, una entidad interna comprometida puede acceder a BigQuery y filtrar datos sensibles a una ubicación arbitraria en Internet. Incluso con controles de IAM sólidos, la ausencia de un perímetro de red permite que un atacante que obtuvo credenciales válidas eluda las defensas basadas en la ubicación y transfiera datos fuera del entorno de confianza.

Categoría STRIDE

Divulgación de información

Táctica de MITRE ATT&CK

Robo de datos

Manifestaciones
  • Acceso a la API desde redes no confiables: Un atacante usa credenciales comprometidas para conectarse a la API pública de BigQuery o a la API de BigQuery Storage Read desde una máquina externa, lo que omite los controles de red configurados para los hosts locales o los dispositivos del usuario.

  • Exportación a un servicio externo de Google Cloud: Una cuenta de servicio vulnerada con permisos de bigquery.jobs.create y Cloud Storage ejecuta una consulta que exporta los resultados a un bucket de Cloud Storage público fuera del control de la organización.

Mitigaciones

Implementa controles de salida de red para mitigar el robo de datos a servicios externos arbitrarios. Implementa un perímetro de Controles del servicio de VPC alrededor del proyecto que contiene los recursos de BigQuery. Este perímetro ayuda a restringir el robo de datos a los servicios de Google Cloud fuera del perímetro. Configura los niveles de acceso para el perímetro de modo que solo se permitan las solicitudes a la API que provengan de rangos de IP de confianza o redes de VPC específicas, lo que impedirá de manera eficaz que se acceda a los datos o que se muevan fuera del límite de seguridad definido.

Desviación de la integridad de los datos con tablas de referencia o de búsqueda contaminadas

Un atacante con acceso de escritura a tablas de referencia o de búsqueda (por ejemplo, tablas de dimensiones) modifica sutilmente su contenido. Las consultas que se unen con estas tablas contaminadas producen resultados incorrectos y engañosos, lo que compromete la integridad de los análisis y las decisiones comerciales posteriores, posiblemente sin errores evidentes.

Categoría STRIDE

Manipulación

Táctica de MITRE ATT&CK

Impacto

Manifestaciones
  • Manipulación de la tabla de dimensiones: Cambiar los valores clave o los atributos en una tabla de dimensiones del producto

  • Corrupción de la tabla de consulta: Se alteran los datos de asignación en una tabla de consulta.

Mitigaciones

Limita estrictamente el acceso de escritura (bigquery.tables.updateData) a las tablas de referencia o de búsqueda solo a los procesos de transferencia de datos de confianza. Implementar verificaciones de calidad de los datos y canalizaciones de validación Usa instantáneas o control de versiones de tablas para hacer un seguimiento de los cambios y habilitar reversiones. Supervisa los registros de auditoría para detectar cambios en estas tablas críticas.

Manipulación de datos con trabajos de carga maliciosos

Un atacante con permisos suficientes puede dañar o reemplazar intencionalmente datos críticos en una tabla de BigQuery ejecutando un trabajo de carga malicioso. Esta amenaza compromete la integridad de los datos, lo que puede generar análisis comerciales incorrectos, fallas en las aplicaciones y pérdida de la confianza de los clientes.

Categoría STRIDE

Manipulación

Táctica de MITRE ATT&CK

Impacto

Manifestaciones
  • Reemplazo de tabla: Un principal con bigquery.jobs.create y bigquery.tables.updateData inicia un trabajo de carga con la disposición de escritura establecida en WRITE_TRUNCATE, lo que borra todos los datos existentes y los reemplaza por datos maliciosos de una fuente externa.

  • Adición de datos maliciosos: Un atacante usa un trabajo de carga con WRITE_APPEND para insertar datos basura o maliciosos en una tabla existente, lo que daña las estadísticas sin borrar los registros originales.

Mitigaciones

Aplica el principio de privilegio mínimo. Controla estrictamente los permisos como bigquery.jobs.create y bigquery.tables.updateData (que se encuentran en roles como roles/bigquery.dataEditor). Otorga estos permisos solo a entidades de confianza y limítalos a conjuntos de datos o tablas específicos. Supervisa los registros de auditoría de Cloud para detectar la finalización de trabajos de carga, en especial aquellos con una disposición WRITE_TRUNCATE, y crea alertas para los trabajos que provienen de usuarios inesperados o que cargan datos de fuentes no confiables.

Permisos de IAM excesivos que provocan la divulgación de información

Los roles de IAM demasiado permisivos pueden permitir un acceso excesivo a los datos sensibles almacenados en las tablas de BigQuery. Un atacante que vulnera una entidad principal con permisos de acceso a datos amplios puede exfiltrar grandes volúmenes de datos, lo que genera una violación de la seguridad de los datos significativa. Esta amenaza se concreta cuando se otorgan permisos como bigquery.tables.getData o bigquery.jobs.create con un alcance amplio (por ejemplo, a nivel del proyecto) en lugar de restringirse a conjuntos de datos o tablas específicos que se requieren para una función comercial.

Categoría STRIDE

Divulgación de información

Táctica de MITRE ATT&CK

Robo de datos

Manifestaciones
  • Lectura directa de datos: Una principal con el permiso bigquery.tables.getData puede leer datos directamente de las tablas con el método de la API de tabledata.list o la API de BigQuery Storage Read de alto rendimiento.

  • Exfiltración basada en consultas: Una principal con el permiso bigquery.jobs.create puede ejecutar un trabajo de consulta con jobs.insert o jobs.query para leer datos de cualquier tabla a la que tenga acceso y, luego, recuperar los resultados con jobs.getQueryResults.

  • Accesibilidad pública: Se puede configurar una política de IAM de permiso en un conjunto de datos o una tabla de BigQuery para permitir el acceso público otorgando roles a principales especiales, como allUsers o allAuthenticatedUsers, lo que expone los datos a Internet.

Mitigaciones

Implementa el principio de privilegio mínimo para todas las políticas de permisos de IAM. Otorga permisos en el nivel más detallado que sea necesario (por ejemplo, tablas o conjuntos de datos específicos de BigQuery) en lugar de hacerlo a nivel del proyecto. Usa roles de IAM con privilegio mínimo que contengan solo los permisos necesarios (por ejemplo, bigquery.tables.getData, bigquery.jobs.create) para tareas específicas. Audita periódicamente las políticas de permisos de IAM para detectar roles demasiado permisivos, como roles/bigquery.dataViewer o roles/bigquery.user, aplicados en un nivel alto de la jerarquía de recursos.

Exfiltración con una transferencia a un proyecto o una cuenta de Cloud controlados por el atacante

Un atacante usa las capacidades de movimiento de datos de BigQuery (por ejemplo, trabajos de exportación a Cloud Storage, consultas entre proyectos, Servicio de transferencia de datos de BigQuery) para mover datos sensibles del proyecto protegido a un proyecto de Google Cloud o a otra cuenta de nube bajo su control.

Categoría STRIDE

Divulgación de información

Táctica de MITRE ATT&CK

Robo de datos

Manifestaciones
  • Exportación a un bucket externo: Se usa un trabajo de exportación para guardar datos de la tabla en un bucket de Cloud Storage en el proyecto de un atacante.

  • Destino de consulta entre proyectos: Ejecutar una consulta y configurar la tabla de destino en un conjunto de datos de un proyecto controlado por el atacante

Mitigaciones

Implementa los Controles del servicio de VPC para crear un perímetro alrededor del proyecto y evitar la salida de datos a proyectos fuera del perímetro. Controla estrictamente los permisos, como bigquery.tables.export y bigquery.jobs.create. Usa restricciones de políticas de la organización para restringir el uso compartido y la creación de proyectos. Supervisa los registros de auditoría de Cloud para detectar trabajos o consultas de exportación con destinos fuera de los límites esperados del proyecto.

Divulgación de información con vistas autorizadas o lógica de seguridad a nivel de la fila mal configuradas

Los errores en la lógica de SQL de las vistas autorizadas o las políticas de seguridad a nivel de la fila generan un acceso a los datos más amplio de lo previsto. Los usuarios que consulten la vista o la tabla podrían acceder de forma inadvertida a filas o columnas que no deberían poder ver, lo que eludiría la segregación prevista.

Categoría STRIDE

Divulgación de información

Táctica de MITRE ATT&CK

Colección

Manifestaciones
  • Lógica de vista defectuosa: La consulta de una vista autorizada omite las cláusulas WHERE necesarias que están presentes en las políticas de seguridad a nivel de la fila de la tabla base.

  • Omisión de la seguridad a nivel de la fila: Una política de seguridad a nivel de la fila compleja contiene un error lógico que permite un acceso más amplio de lo previsto.

Mitigaciones

Implementa un proceso estricto de revisión de código para la lógica de SQL que se usa en las vistas autorizadas y las políticas de seguridad a nivel de la fila. Prueba la lógica de seguridad de forma exhaustiva. Limita los permisos (como bigquery.tables.create, bigquery.tables.update o bigquery.rowAccessPolicies.create) para crear o actualizar vistas y políticas de seguridad a nivel de la fila. Audita periódicamente las vistas existentes y las configuraciones de seguridad a nivel de las filas. Sigue las prácticas recomendadas para la seguridad a nivel de las filas.

Divulgación de información a través de la exposición de conjuntos de datos públicos o entre proyectos

Los datos sensibles se exponen porque los conjuntos de datos de BigQuery se hacen públicos de forma inadvertida o maliciosa (por ejemplo, con allUsers o allAuthenticatedUsers) o se comparten de forma demasiado amplia con otros proyectos de Google Cloud fuera del límite de confianza previsto. Un atacante puede acceder a los datos o copiarlos directamente sin autenticación o con cualquier Cuenta de Google autenticada.

Categoría STRIDE

Divulgación de información

Táctica de MITRE ATT&CK

Robo de datos

Manifestaciones
  • Conjunto de datos público: Una política de permisos de IAM en un conjunto de datos otorga permisos de visualizador a allUsers.

  • Uso compartido excesivo entre proyectos: Un conjunto de datos se comparte con una organización externa o una cuenta de servicio en un proyecto no confiable.

Mitigaciones

Implementa el principio de privilegio mínimo para las políticas de permisos de IAM del conjunto de datos. Usa políticas de la organización, como constraints/iam.allowedPolicyMemberDomains, para restringir el uso compartido a dominios específicos. Audita periódicamente las políticas de permisos de IAM de los conjuntos de datos con Security Command Center para detectar permisos públicos o demasiado amplios. Usa los Controles del servicio de VPC para crear perímetros alrededor de los proyectos que contienen datos sensibles y evitar la salida no autorizada.

Uso inadecuado interno del acceso autorizado a BigQuery (consultas legítimas que se usan para la recopilación maliciosa)

Un empleado interno malicioso con acceso legítimo a BigQuery usa sus permisos autorizados para ejecutar consultas y recopilar datos sensibles con fines no autorizados (por ejemplo, beneficio personal o espionaje). Si bien el acceso está autorizado, la intención y el uso de los datos son maliciosos.

Categoría STRIDE

Divulgación de información

Táctica de MITRE ATT&CK

Colección

Manifestaciones
  • Acumulación de datos: Consultar y descargar datos de clientes de forma periódica más allá de los requisitos del trabajo

  • Análisis sensible: Realizar análisis para extraer secretos comerciales o PII para su exfiltración

Mitigaciones

Habilita y supervisa los registros de auditoría de acceso a los datos para hacer un seguimiento de los patrones de acceso a los datos. Usa herramientas como Sensitive Data Protection para analizar los resultados de las búsquedas en busca de información sensible. Implementa el análisis de comportamiento del usuario (UBA) para detectar patrones de consulta anómalos o volúmenes de acceso a los datos. Aplica políticas claras de manejo de datos y brinda capacitación sobre seguridad. Usa la seguridad a nivel de las filas y la seguridad a nivel de las columnas para limitar la exposición de los datos, incluso para los usuarios autorizados.

Persistencia con vinculaciones sigilosas de IAM de BigQuery en conjuntos de datos, vistas autorizadas o consultas programadas

Un atacante, tras obtener acceso inicial, establece una presencia a largo plazo creando mecanismos de acceso difíciles de detectar en BigQuery. Esta amenaza incluye agregar vinculaciones de IAM a conjuntos de datos, crear vistas autorizadas que consulten datos sensibles o configurar consultas programadas que se ejecuten con una cuenta de servicio privilegiada para exfiltrar datos o mantener el acceso.

Categoría STRIDE

Elevación de privilegios

Táctica de MITRE ATT&CK

Persistencia

Manifestaciones
  • IAM de conjunto de datos oculto: Se otorgan derechos de visualizador de cuenta personal en un conjunto de datos específico y menos supervisado.

  • Puerta trasera de vista autorizada: Crear una vista autorizada para acceder a una tabla restringida y otorgar acceso a la vista

  • Consulta programada maliciosa: Configurar una consulta programada para copiar datos a una ubicación externa de forma periódica

Mitigaciones

Audita periódicamente todas las políticas de IAM de permiso, incluidos los permisos a nivel del conjunto de datos, con herramientas como Security Command Center. Controla estrictamente los permisos para crear o actualizar conjuntos de datos (bigquery.datasets.update), rutinas (bigquery.routines.create/update) y transferencias de datos (bigquery.transfers.update).

Suplantación de identidad con credenciales de cuentas de servicio vulneradas o tokens de OAuth que se usan para acceder a BigQuery

Un atacante obtiene credenciales de la cuenta de servicio (por ejemplo, claves JSON exportadas) y las usa para autenticarse en BigQuery como la cuenta de servicio vulnerada, heredando todos sus permisos. Esta amenaza permite que el atacante realice cualquier acción que la cuenta de servicio esté autorizada a hacer, como leer datos, ejecutar trabajos o modificar recursos.

Categoría STRIDE

Falsificación de identidad

Táctica de MITRE ATT&CK

Acceso inicial

Manifestaciones
  • Fuga de clave de cuenta de servicio: Se expone un archivo de claves JSON en repositorios de código, almacenamiento público o metadatos de instancias.

  • Aplicación vulnerada: Se vulnera una aplicación que usa una cuenta de servicio, lo que permite que el atacante extraiga y use sus credenciales.

  • Token de OAuth robado: Un atacante intercepta o filtra un token de OAuth de una aplicación cliente o una sesión del navegador.

  • Token con permisos excesivos: Una aplicación solicita y almacena tokens con permisos excesivos (por ejemplo, acceso completo a BigQuery cuando solo se necesita acceso de lectura).

Mitigaciones

Evita exportar claves de cuentas de servicio. En su lugar, usa cuentas de servicio adjuntas o la federación de identidades para cargas de trabajo siempre que sea posible. Si las claves son necesarias, rótalas con regularidad y otorga a la cuenta de servicio solo los permisos mínimos necesarios. Supervisa los registros de auditoría de Cloud y Security Command Center para detectar actividad anómala de la cuenta de servicio o exposición de claves. Usa la restricción de política de la organización constraints/iam.disableServiceAccountKeyCreation para inhabilitar la creación de claves de cuentas de servicio. Almacena y transmite de forma segura los tokens de OAuth. Sigue las prácticas recomendadas de OAuth 2.0. Solicita solo los alcances necesarios. Usa tokens de corta duración y tokens de actualización de forma segura. Implementa mecanismos para detectar y revocar tokens vulnerados. Supervisa los patrones de uso anómalos de los tokens. Completa las medidas de protección estándar de la clave de la cuenta de servicio. Configura la duración de la sesión para los servicios de Google Cloud y aplica tokens de corta duración para mitigar el riesgo de que se filtre un token.

Denegación de servicio basada en el costo con consultas costosas

Un principal autenticado ejecuta consultas diseñadas para consumir una cantidad excesiva de recursos de BigQuery (como ranuras y bytes analizados). Esta amenaza puede generar enormes sobrecostos en los proyectos a pedido o falta de ranuras para otros usuarios en los proyectos basados en reservas, lo que dificulta las operaciones comerciales.

Categoría STRIDE

Rechazo del servicio

Táctica de MITRE ATT&CK

Impacto

Manifestaciones
  • Consultas sin optimizar: Ejecutar consultas con uniones cruzadas en tablas grandes sin filtros

  • Ejecución repetitiva: Secuencias de comandos para la ejecución frecuente de consultas costosas

Mitigaciones

Usa las cuotas personalizadas de BigQuery para establecer límites a nivel del usuario y a nivel de proyecto en el uso de consultas (por ejemplo, bytes analizados por día). Usa el parámetro maximumBytesBilled en los trabajos de consulta. Emplea reservas de BigQuery para aislar las cargas de trabajo y garantizar la capacidad. Configura alertas de facturación en Facturación de Cloud y supervisa la utilización de ranuras en Cloud Monitoring para detectar anomalías y reaccionar ante ellas.