En esta página, se proporciona una descripción general de alto nivel de los conceptos y las características de Container Threat Detection.
¿Qué es Container Threat Detection?
Container Threat Detection es un servicio integrado de Security Command Center que Supervisa de manera continua el estado de las imágenes de nodo de Container-Optimized OS. El servicio evalúa todos los cambios y los intentos de acceso remoto para detectar ataques durante el tiempo de ejecución casi en tiempo real.
Container Threat Detection detecta los ataques más comunes en el entorno de ejecución del contenedor y te alerta en el Security Command Center y, de forma opcional, en Cloud Logging. Detección de amenazas a contenedores incluye varias capacidades de detección, incluidos objetos binarios sospechosos y de código abierto y usa procesamiento de lenguaje natural (PLN) para detectar y el código de Python.
La detección de amenazas a contenedores solo está disponible con el nivel Premium o el nivel Enterprise de Security Command Center.
Cómo funciona la Detección de amenazas a contenedores
La instrumentación de Container Threat Detection recopila el comportamiento de bajo nivel en la kernel de invitado y secuencias de comandos ejecutadas. A continuación, se muestra la ruta de ejecución cuando detectar eventos:
Container Threat Detection pasa información de eventos e información que identifica a través de un DaemonSet en modo de usuario a un servicio de detección de análisis de datos en la nube. La recopilación de eventos se configura automáticamente cuando Container Threat Detection está habilitada.
El DaemonSet del controlador pasa información del contenedor de la mejor manera posible. La información del contenedor se puede descartar del hallazgo informado si el Kubernetes y el entorno de ejecución del contenedor no entregan el la información del contenedor a tiempo.
El servicio de detector analiza eventos para determinar si un evento indica que se produjo un incidente. Las bases de datos en Bash y Python se analizan con PLN para determinar si el código ejecutado es malicioso.
Si el servicio de detector identifica un incidente, el incidente se escribe como un resultado en Security Command Center y, de forma opcional, en Cloud Logging.
- Si el servicio de detector no identifica un incidente, no se almacena información de búsqueda.
- Todos los datos en el servicio de kernel y el detector son efímeros y no se almacenan de forma persistente.
Puedes ver los detalles de los resultados en la consola de Security Command Center y, luego, investigar la información de búsqueda. La capacidad para ver y editar resultados se determina según las funciones que se te otorgan. Para obtener más información sobre los roles de Security Command Center, consulta Control de acceso.
Detectores de detección de amenazas de contenedores
La detección de amenazas a contenedores incluye los siguientes detectores:
Detector | Descripción | Entradas para la detección |
---|---|---|
Se ejecutó el objeto binario añadido |
Se ejecutó un objeto binario que no era parte de la imagen del contenedor original. Si un atacante agrega un objeto binario agregado, es posible que tenga el control de la carga de trabajo y ejecute comandos arbitrarios. |
El detector busca un objeto binario en ejecución que no formaba parte de la imagen del contenedor original o se modificó a partir de la imagen del contenedor original. |
Se cargó la biblioteca agregada |
Se cargó una biblioteca que no formaba parte de la imagen del contenedor original. Si se carga una biblioteca agregada, es posible que un atacante tenga el control de la carga de trabajo y ejecute un código arbitrario. |
El detector busca una biblioteca que se carga y que no formaba parte de la imagen del contenedor original, o que se modificó a partir de la imagen del contenedor original. |
Ejecución: Se ejecutó el binario malicioso agregado |
Se ejecutó un objeto binario que cumple las siguientes condiciones:
Si se ejecuta un binario malicioso agregado, es una fuerte señal de que un atacante tiene control de la carga de trabajo y ejecuta software malicioso. |
El detector busca un objeto binario en ejecución que no formaba parte del del contenedor original y se identificó como maliciosa debido a las amenazas artificial. |
Ejecución: Se cargó la biblioteca maliciosa agregada. |
Se cargó una biblioteca que cumple con las siguientes condiciones:
Si se carga una biblioteca maliciosa agregada, es una fuerte señal de que un atacante tiene control de la carga de trabajo y ejecuta software malicioso. |
El detector busca una biblioteca cargada que no era parte del del contenedor original y se identificó como maliciosa debido a las amenazas artificial. |
Ejecución: Se ejecutó un objeto binario malicioso integrado |
Se ejecutó un objeto binario que cumple las siguientes condiciones:
Si se ejecuta un objeto binario malicioso integrado, es una señal de que el atacante está implementando contenedores maliciosos. Es posible que hayan conseguido el control de un en un repositorio de imágenes legítimas o una canalización de compilación de contenedores malicioso en la imagen del contenedor. |
El detector busca un objeto binario en ejecución que se incluyó en el del contenedor original y se identificó como maliciosa debido a las amenazas artificial. |
Ejecución: Se ejecutó Python maliciosoVersión preliminar | Un modelo de aprendizaje automático identificó el código de Python especificado como maliciosos. Los atacantes pueden utilizar Python para transferir herramientas u otras archivos de un sistema externo a un entorno comprometido y ejecutar comandos sin archivos 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 los detectores pueden identificar Python novedoso y conocido. |
Ejecución: Se ejecutó un objeto binario malicioso modificado |
Se ejecutó un objeto binario que cumple con las siguientes condiciones:
Si se ejecuta un binario malicioso modificado, es una fuerte señal de que un atacante tiene control de la carga de trabajo y ejecuta software malicioso. |
El detector busca un objeto binario en ejecución que se incluyó originalmente en la imagen del contenedor, pero se modificó durante el tiempo de ejecución y se identificó como malicioso basado en la inteligencia de amenazas. |
Ejecución: Se cargó la biblioteca maliciosa modificada |
Se cargó una biblioteca que cumple con las siguientes condiciones: Si se carga una biblioteca maliciosa modificada, es una fuerte señal de que un atacante tiene control de la carga de trabajo y ejecuta software malicioso. |
El detector busca una biblioteca cargada que se incluyó originalmente en la imagen del contenedor, pero se modificó durante el tiempo de ejecución y se identificó como malicioso basado en la inteligencia de amenazas. |
Secuencia de comandos maliciosa ejecutada | Un modelo de aprendizaje automático identificó el código Bash especificado como maliciosos. Los atacantes pueden utilizar Bash para transferir herramientas u otras archivos de un sistema externo a un entorno comprometido y ejecutar comandos sin archivos binarios. | El detector usa técnicas de PLN para evaluar la contenido del código Bash ejecutado. Debido a que este enfoque no se basa en los detectores pueden identificar ataques maliciosos conocidos y novedosos. |
Se observó la URL maliciosa | La Detección de amenazas a contenedores observó una URL maliciosa en la lista de argumentos de un proceso en ejecución. | El detector verifica las URL que se observan en la lista de argumentos de ejecutar procesos con las listas de recursos web no seguros que son mantenidos por Google Navegación segura servicio. Si una URL se clasifica de forma incorrecta como phishing o software malicioso, informarlo en Informes Datos incorrectos. |
Shells inversas |
Un proceso iniciado con redireccionamiento de transmisión a un socket remoto conectado 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. |
El detector busca stdin vinculada a un socket remoto. |
Shell secundario inesperado |
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. |
¿Qué sigue?
- Más información sobre Usar Container Threat Detection.
- Más información sobre Pruebas de Container Threat Detection.
- Aprende a hacer lo siguiente: investigar y desarrollar planes de respuesta para detectar amenazas.
- Más información sobre Análisis de artefactos y vulnerabilidades.