Descripción general de la detección de amenazas de Cloud Run

Cloud Run Threat Detection es un servicio integrado de Security Command Center que supervisa de forma continua el estado de los recursos compatibles de Cloud Run para detectar los ataques más comunes en el entorno de ejecución. Si Cloud Run Threat Detection detecta un ataque, genera un resultado en Security Command Center casi en tiempo real.

Los detectores de tiempo de ejecución de la Detección de amenazas de Cloud Run supervisan los recursos de Cloud Run en busca de objetos binarios y bibliotecas sospechosos, y usan el procesamiento de lenguaje natural (PLN) para detectar código malicioso de Bash y Python.

Además, los detectores de plano de control están disponibles a través de Event Threat Detection. Estos detectores supervisan el flujo de Cloud Logging de tu organización o tus proyectos para detectar posibles ataques al plano de control de tus recursos de Cloud Run.

Recursos admitidos

La Detección de amenazas de Cloud Run supervisa los siguientes recursos:

Entornos de ejecución compatibles

Los entornos de ejecución compatibles difieren para los detectores de entorno de ejecución y los detectores de plano de control.

Entornos de ejecución compatibles para detectores de tiempo de ejecución

Los detectores de tiempo de ejecución de la Detección de amenazas de Cloud Run solo admiten recursos de Cloud Run que se ejecutan en el entorno de ejecución de segunda generación. Ten en cuenta lo siguiente antes de habilitar la detección de amenazas de Cloud Run:

  • Cuando habilitas la Detección de amenazas de Cloud Run, no puedes crear un servicio o una revisión de servicio de Cloud Run que se ejecute en el entorno de ejecución de primera generación. El servicio de Cloud Run debe usar el entorno de ejecución de segunda generación. Te recomendamos que pruebes tus cargas de trabajo en el entorno de ejecución de segunda generación antes de habilitar la Detección de amenazas de Cloud Run.

  • Para habilitar la detección de amenazas del entorno de ejecución de un servicio, implementa una revisión que establezca el entorno de ejecución del servicio en el de segunda generación o en el predeterminada.

Entornos de ejecución admitidos para detectores de plano de control

Los detectores de plano de control admiten entornos de ejecución de primera y segunda generación.

Cómo funciona la detección de amenazas del entorno de ejecución de Cloud Threat Detection

Cuando habilitas la Detección de amenazas de Cloud Run, se recopila telemetría de los recursos compatibles de Cloud Run para analizar procesos, secuencias de comandos y bibliotecas que podrían indicar un ataque al entorno de ejecución. La siguiente es la ruta de ejecución cuando se detectan eventos:

  1. La Detección de amenazas de Cloud Run usa un proceso de supervisión para recopilar información del contenedor y de los eventos durante toda la duración de una carga de trabajo de Cloud Run. El proceso de supervisión puede tardar hasta 20 segundos en iniciarse.
  2. La Detección de amenazas de Cloud Run analiza la información del evento recopilada para determinar si un evento indica que se produjo un incidente. Usa la NLP para analizar las secuencias de comandos de Bash y Python en busca de código malicioso.

    • Si la Detección de amenazas de Cloud Run identifica un incidente, lo informa como un resultado en Security Command Center.

    • Si Threat Detection de Cloud Run no identifica un incidente, no se almacena información.

    • Todos los datos recopilados son efímeros y no se almacenan de forma persistente.

Para obtener información sobre cómo revisar los resultados de la Detección de amenazas de Cloud Run en la consola de Google Cloud, consulta Revisa los resultados.

Problemas conocidos

  • Las instancias de tus servicios o trabajos de Cloud Run que duran más de siete días dejan de enviar información de telemetría.
  • Si el proceso de supervisión se detiene antes de tiempo en una instancia en ejecución de tu trabajo o servicio de Cloud Run, el proceso de supervisión no se reinicia. La instancia deja de enviar información de telemetría a la Detección de amenazas de Cloud Run. Los registros de Threat Detection de Cloud Run no aparecen en los registros de la instancia. No hay ningún indicador de que se detuvo un proceso de supervisión.

Detectores

En esta sección, se enumeran los detectores de entorno de ejecución y plano de control disponibles. Agregamos detectores nuevos con frecuencia a medida que surgen nuevas amenazas en la nube.

Detectores de tiempo de ejecución

La detección de amenazas de Cloud Run incluye los siguientes detectores de entorno de ejecución:

Nombre visible Nombre de la API Descripción
Ejecución: Se agregó el ejecutable binario malicioso CLOUD_RUN_ADDED_MALICIOUS_BINARY_EXECUTED

Se ejecutó un objeto binario que cumple con las siguientes condiciones:

  • Se identifica como malicioso según la inteligencia sobre amenazas
  • No forma parte de la imagen del contenedor original

Si se ejecuta un objeto binario malicioso agregado, es un indicador claro de que un atacante tiene el control de la carga de trabajo y está ejecutando software malicioso.

Ejecución: Se agregó la biblioteca maliciosa cargada CLOUD_RUN_ADDED_MALICIOUS_LIBRARY_LOADED

Se cargó una biblioteca que cumple con las siguientes condiciones:

  • Se identifica como malicioso según la inteligencia sobre amenazas
  • No forma parte de la imagen del contenedor original

Si se carga una biblioteca maliciosa agregada, es un indicador claro de que un atacante tiene el control de la carga de trabajo y está ejecutando software malicioso.

Ejecución: Se ejecutó un objeto binario malicioso integrado CLOUD_RUN_BUILT_IN_MALICIOUS_BINARY_EXECUTED

Se ejecutó un objeto binario que cumple con las siguientes condiciones:

  • Se identifica como malicioso según la inteligencia sobre amenazas
  • Se incluye en la imagen de contenedor original

Si se ejecuta un objeto binario malicioso integrado, es un indicio de que el atacante está implementando contenedores maliciosos. Es posible que hayan obtenido el control de un repositorio de imágenes legítimo o de una canalización de compilación de contenedores, y que hayan insertado un objeto binario malicioso en la imagen del contenedor.

Ejecución: Escape de contenedor CLOUD_RUN_CONTAINER_ESCAPE

Se ejecutó un proceso dentro del contenedor que intentó salir del aislamiento del contenedor con técnicas de escape o objetos binarios conocidos. Este tipo de ataque puede darle al atacante acceso al sistema host. Estos procesos se identifican como posibles amenazas según los datos de inteligencia.

Si se detecta un intento de escape de contenedor, es posible que un atacante esté explotando vulnerabilidades para salir del contenedor. Como resultado, el atacante podría obtener acceso no autorizado al sistema anfitrión o a la infraestructura más amplia, lo que pondría en riesgo todo el entorno.

Ejecución: Ejecución de la herramienta de ataque de Kubernetes CLOUD_RUN_KUBERNETES_ATTACK_TOOL_EXECUTION

Se ejecutó una herramienta de ataque específica de Kubernetes dentro del entorno, lo que puede indicar que un atacante está atacando componentes del clúster de Kubernetes. Estas herramientas de ataque se identifican como posibles amenazas según los datos de inteligencia.

Si se ejecuta una herramienta de ataque dentro del entorno de Kubernetes, puede sugerir que un atacante obtuvo acceso al clúster y está usando la herramienta para aprovechar vulnerabilidades o configuraciones específicas de Kubernetes.

Ejecución: Ejecución de la herramienta de reconocimiento local CLOUD_RUN_LOCAL_RECONNAISSANCE_TOOL_EXECUTION

Se ejecutó una herramienta de reconocimiento local que no suele asociarse con el contenedor o el entorno, lo que sugiere un intento de recopilar información del sistema interno. Estas herramientas de reconocimiento se identifican como posibles amenazas según los datos de inteligencia.

Si se ejecuta una herramienta de reconocimiento, significa que el atacante puede estar tratando de planificar sus próximos pasos para asignar la infraestructura, identificar vulnerabilidades o recopilar datos sobre la configuración del sistema.

Ejecución: Se ejecutó Python malicioso (versión preliminar) CLOUD_RUN_MALICIOUS_PYTHON_EXECUTED

Un modelo de aprendizaje automático identificó el código de Python especificado como malicioso. Los atacantes pueden usar Python para transferir herramientas o cualquier otro archivo desde un sistema externo a un entorno vulnerado y ejecutar comandos sin objetos binarios.

El detector usa técnicas de NLP para evaluar el contenido del código de Python ejecutado. Debido a que este enfoque no se basa en firmas, los detectores pueden identificar código de Python conocido y nuevo.

Ejecución: Se ejecutó un objeto binario malicioso modificado CLOUD_RUN_MODIFIED_MALICIOUS_BINARY_EXECUTED

Se ejecutó un objeto binario que cumple con las siguientes condiciones:

  • Se identifica como malicioso según la inteligencia sobre amenazas
  • Se incluye en la imagen de contenedor original
  • Se modifica a partir de la imagen de contenedor original durante el tiempo de ejecución.

Si se ejecuta un objeto binario malicioso modificado, es un indicador claro de que un atacante tiene el control de la carga de trabajo y está ejecutando software malicioso.

Ejecución: Se cargó una biblioteca maliciosa modificada CLOUD_RUN_MODIFIED_MALICIOUS_LIBRARY_LOADED

Se cargó una biblioteca que cumple con las siguientes condiciones:

  • Se identifica como malicioso según la inteligencia sobre amenazas
  • Se incluye en la imagen de contenedor original
  • Se modifica a partir de la imagen de contenedor original durante el tiempo de ejecución.

Si se carga una biblioteca maliciosa modificada, es un indicador claro de que un atacante tiene el control de la carga de trabajo y está ejecutando software malicioso.

Secuencia de comandos maliciosa ejecutada CLOUD_RUN_MALICIOUS_SCRIPT_EXECUTED

Un modelo de aprendizaje automático identificó el código de Bash especificado como malicioso. Los atacantes pueden usar Bash para transferir herramientas o cualquier otro archivo desde un sistema externo a un entorno vulnerado y ejecutar comandos sin objetos binarios.

El detector usa técnicas de PLN para evaluar el contenido del código de Bash ejecutado. Como este enfoque no se basa en firmas, los detectores pueden identificar código Bash malicioso conocido y nuevo.

Se detectó una URL maliciosa CLOUD_RUN_MALICIOUS_URL_OBSERVED

La Detección de amenazas de Cloud Run observó una URL maliciosa en la lista de argumentos de un proceso en ejecución.

El detector verifica las URLs que se observan en la lista de argumentos de los procesos en ejecución con las listas de recursos web no seguros que mantiene el servicio de Navegación segura de Google. Si una URL se clasifica incorrectamente como sitio de phishing o software malicioso, infórmala en Denuncia datos incorrectos.

Shells inversas CLOUD_RUN_REVERSE_SHELL

Es un proceso iniciado con redireccionamiento de transmisión a un socket remoto conectado. El detector busca stdin vinculada a un socket remoto.

Con una shell inversa, un atacante puede comunicarse desde una carga de trabajo comprometida a una máquina controlada por atacantes. Luego, el atacante puede dirigir y controlar la carga de trabajo, por ejemplo, como parte de un botnet.

Shell secundario inesperado CLOUD_RUN_UNEXPECTED_CHILD_SHELL

Un proceso que normalmente no invoca shells generó un proceso de shell.

El detector supervisa todas las ejecuciones de procesos. Cuando se invoca una shell, el detector genera un hallazgo si se sabe que el proceso superior no suele invocar shells.

Detectores del plano de control

Los siguientes detectores de plano de control están disponibles a través de Event Threat Detection. Estos detectores están habilitados de forma predeterminada. Administras estos detectores de la misma manera que lo haces con otros detectores de Event Threat Detection. Para obtener más información, consulta Cómo usar Event Threat Detection.

Nombre visible Nombre de la API Tipos de fuente del archivo de registro Descripción
Impacto: Comandos de criptominería (versión preliminar) CLOUD_RUN_JOBS_CRYPTOMINING_COMMANDS Registros de auditoría de Cloud:
Registros de auditoría de eventos del sistema de IAM
Se adjuntaron comandos específicos de criptominería a un trabajo de Cloud Run durante la ejecución.
Ejecución: Imagen de Docker para criptominería (versión preliminar) CLOUD_RUN_CRYPTOMINING_DOCKER_IMAGES Registros de auditoría de Cloud:
Registros de auditoría de eventos del sistema de IAM
Se adjuntaron imágenes de Docker específicas conocidas como no válidas a un servicio o trabajo de Cloud Run nuevo o existente.
Derivación de privilegios: SetIAMPolicy de la cuenta de servicio predeterminada de Compute Engine (Versión preliminar) CLOUD_RUN_SERVICES_SET_IAM_POLICY Registros de auditoría de Cloud:
Registros de actividad del administrador
Se usó la cuenta de servicio predeterminada de Compute Engine para establecer la política de IAM de un servicio de Cloud Run. Esta es una posible acción posterior al exploit cuando se vulnera un token de Compute Engine desde un servicio sin servidores.
Para conocer las reglas obsoletas y cerradas, consulta Bajas.

¿Qué sigue?