Cloud Run Threat Detection es un servicio integrado de Security Command Center que supervisa de forma continua el estado de los recursos de Cloud Run compatibles para detectar los ataques en el entorno de ejecución más comunes. Si Cloud Run Threat Detection detecta un ataque, genera un hallazgo en Security Command Center casi en tiempo real.
Los detectores de tiempo de ejecución de Cloud Run Threat Detection 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 del 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 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 del tiempo de ejecución y los detectores del plano de control.
Entornos de ejecución compatibles con los 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 del 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 en el tiempo de ejecución de un servicio, implementa una revisión que establezca el entorno de ejecución del servicio en el entorno de ejecución de segunda generación o en el predeterminado.
Entornos de ejecución admitidos para los detectores del plano de control
Los detectores del plano de control admiten entornos de ejecución de primera y segunda generación.
Cómo funciona la detección de amenazas en el tiempo de ejecución de la Detección de amenazas de Cloud Run
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 en el tiempo de ejecución. A continuación, se muestra la ruta de ejecución cuando se detectan eventos:
- La Detección de amenazas de Cloud Run usa un proceso de supervisión para recopilar información de contenedores y 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.
Cloud Run Threat Detection analiza la información del evento recopilada para determinar si un evento indica que se produjo un incidente. Utiliza el PNL para analizar 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 hallazgo en Security Command Center.
Si Cloud Run Threat Detection 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 Cloud Run Threat Detection en la consola deGoogle 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 de forma prematura en una instancia en ejecución de tu servicio o trabajo de Cloud Run, 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 Cloud Run Threat Detection no están presentes en los registros de la instancia. No hay ningún indicador de que se haya detenido un proceso de observación.
Detectores
En esta sección, se enumeran los detectores del entorno de ejecución y del plano de control que están disponibles. Agregamos detectores nuevos con regularidad 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 tiempo de ejecución:
Nombre visible | Nombre de la API | Descripción |
---|---|---|
Ejecución: Se ejecutó el objeto binario malicioso agregado | CLOUD_RUN_ADDED_MALICIOUS_BINARY_EXECUTED |
Se ejecutó un objeto binario que cumple con las siguientes condiciones:
Si se ejecuta un objeto binario malicioso agregado, es un indicio claro de que un atacante tiene el control de la carga de trabajo y está ejecutando software malicioso. |
Ejecución: Se cargó la biblioteca maliciosa agregada | CLOUD_RUN_ADDED_MALICIOUS_LIBRARY_LOADED |
Se cargó una biblioteca que cumple con las siguientes condiciones:
Si se carga una biblioteca maliciosa agregada, es un indicio claro de que un atacante tiene el control de la carga de trabajo y está ejecutando software malicioso. |
Ejecución: Se ejecutó el objeto binario malicioso integrado | CLOUD_RUN_BUILT_IN_MALICIOUS_BINARY_EXECUTED |
Se ejecutó un objeto binario que cumple con las siguientes condiciones:
Si se ejecuta un objeto binario malicioso integrado, es señal de que el atacante está implementando contenedores maliciosos. Es posible que hayan obtenido el control de un repositorio de imágenes o una canalización de compilación de contenedores legítimos y hayan inyectado un archivo binario malicioso en la imagen del contenedor. |
Ejecución: Escape del contenedor | CLOUD_RUN_CONTAINER_ESCAPE |
Se ejecutó un proceso dentro del contenedor que intentó salir del aislamiento del contenedor con técnicas o archivos binarios de escape 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 del contenedor, podría indicar que un atacante está aprovechando vulnerabilidades para salir del contenedor. Como resultado, el atacante podría obtener acceso no autorizado al sistema host o a una infraestructura más amplia, lo que comprometería 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 en el entorno, lo que puede indicar que un atacante está apuntando a los componentes del clúster de Kubernetes. Estas herramientas de ataque se identifican como amenazas potenciales según los datos de inteligencia. Si se ejecuta una herramienta de ataque en el entorno de Kubernetes, se 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 interna del sistema. Estas herramientas de reconocimiento se identifican como amenazas potenciales según los datos de inteligencia. Si se ejecuta una herramienta de reconocimiento, se sugiere que el atacante puede estar intentando mapear la infraestructura, identificar vulnerabilidades o recopilar datos sobre las configuraciones del sistema para planificar sus próximos pasos. |
Ejecución: Se ejecutó un código malicioso de Python (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 PNL para evaluar el contenido del código de Python ejecutado. Dado 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:
Si se ejecuta un objeto binario malicioso modificado, es una señal clara de que un atacante tiene el control de la carga de trabajo y está ejecutando software malicioso. |
Ejecución: Se cargó la biblioteca maliciosa modificada | CLOUD_RUN_MODIFIED_MALICIOUS_LIBRARY_LOADED |
Se cargó una biblioteca que cumple con las siguientes condiciones:
Si se carga una biblioteca maliciosa modificada, es un indicio 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 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 PNL para evaluar el contenido del código de Bash ejecutado. Dado que 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 detectó 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órmalo en Reporting Incorrect Data. |
Shells inversas | CLOUD_RUN_REVERSE_SHELL |
Es un proceso iniciado con redireccionamiento de transmisión a un socket remoto conectado. El detector busca 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 una botnet. |
Shell secundaria inesperada | 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 principal no suele invocar shells. |
Detectores del plano de control
Los siguientes detectores del plano de control están disponibles a través de Event Threat Detection. Estos detectores están habilitados de forma predeterminada. Estos detectores se administran de la misma manera que los demás detectores de Event Threat Detection. Para obtener más información, consulta Usa Event Threat Detection.
Nombre visible | Nombre de la API | Tipos de fuente del archivo de registro | Descripción |
---|---|---|---|
Impacto: Comandos de criptominería | 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. De forma predeterminada, los resultados se clasifican como gravedad Alta. |
Ejecución: Imagen de Docker para criptominería | 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 dañinas a un trabajo o servicio de Cloud Run nuevo o existente. De forma predeterminada, los resultados se clasifican como gravedad Alta. |
Escalación de privilegios: Default Compute Engine Service Account SetIAMPolicy | 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. De forma predeterminada, los resultados se clasifican como de gravedad Baja. |
¿Qué sigue?
- Obtén más información para usar la detección de amenazas de Cloud Run.
- Obtén más información para usar Event Threat Detection.