Nesta página, você encontra uma visão geral dos conceitos e recursos do Container Threat Detection.
O que é o Container Threat Detection?
O Container Threat Detection é um serviço integrado do Security Command Center que monitora continuamente o estado das imagens de nó do Container-Optimized OS. O serviço avalia todas as mudanças e tentativas de acesso remoto para detectar ataques de ambiente de execução quase em tempo real.
O Container Threat Detection detecta os ataques mais comuns no ambiente de execução do contêiner e envia alertas no Security Command Center e, opcionalmente, no Cloud Logging. O Container Threat Detection inclui vários recursos de detecção, incluindo binários e bibliotecas suspeitos, e usa processamento de linguagem natural (PLN) para detectar códigos Bash e Python maliciosos.
O Container Threat Detection está disponível apenas com o nível Premium ou Enterprise do Security Command Center.
Como funciona o
A instrumentação de detecção do Container Threat Detection coleta o comportamento de baixo nível no kernel convidado e executa scripts. Veja a seguir o caminho de execução quando os eventos são detectados:
O Container Threat Detection transmite informações de evento e informações que identificam o contêiner usando um DaemonSet de modo de usuário para um serviço de detector para análise. A coleção de eventos é configurada automaticamente quando o Container Threat Detection está ativado.
O DaemonSet do inspetor transmite informações do contêiner da melhor maneira possível. As informações do contêiner poderão ser removidas da descoberta informada se o Kubernetes e o ambiente de execução dele não enviarem as informações correspondentes a tempo.
O serviço de detector analisa eventos para determinar se um evento indica um incidente. O Bash e o Python são analisados com PLN para determinar se o código executado é malicioso.
Se o serviço identificar um incidente, ele será gravado como uma descoberta no Security Command Center ou, opcionalmente, no Cloud Logging.
- Se o serviço de detector não identificar um incidente, a descoberta de informações não será armazenada.
- Todos os dados no serviço de kernel e detector são temporários e não são armazenados de forma permanente.
É possível conferir os detalhes da descoberta no console do Security Command Center e investigar as informações de descoberta. A capacidade de visualizar e editar as descobertas é determinada pelos papéis concedidos a você. Para mais informações sobre os papéis do Security Command Center, consulte Controle de acesso.
Detectores do Container Threat Detection
O Container Threat Detection inclui os seguintes detectores:
Detector | Descrição | Entradas para detecção |
---|---|---|
Adição de binário executado |
Um binário que não fazia parte da imagem do contêiner original foi executado. Se um binário adicionado for executado por um invasor, é possível que um invasor tenha controle da carga de trabalho e esteja executando comandos arbitrários. Esse detector fica desativado por padrão. Para instruções sobre como ativar, consulte Como testar o Container Threat Detection. |
O detector procura um binário em execução que não fazia parte da imagem do contêiner original ou foi modificado a partir da imagem do contêiner original. |
Adição de biblioteca carregada |
Uma biblioteca que não fazia parte da imagem do contêiner original foi carregada. Se uma biblioteca adicionada for carregada, é possível que um invasor tenha controle da carga de trabalho e esteja executando um código arbitrário. Esse detector fica desativado por padrão. Para instruções sobre como ativar, consulte Como testar o Container Threat Detection. |
O detector procura uma biblioteca carregada que não fazia parte da imagem do contêiner original ou foi modificada a partir da imagem do contêiner original. |
Execução: adição de binário malicioso executado |
Um binário que atende às seguintes condições foi executado:
Se um binário malicioso adicionado for executado, é um forte sinal de que um invasor tem controle da carga de trabalho e está executando um software malicioso. |
O detector procura um binário em execução que não fazia parte da imagem do contêiner original e foi identificado como malicioso com base na inteligência de ameaças. |
Execução: adição de biblioteca maliciosa carregada |
Uma biblioteca que atende às seguintes condições foi carregada:
Se uma biblioteca maliciosa adicionada for carregada, é um forte sinal de que um invasor tem controle da carga de trabalho e está executando um software malicioso. |
O detector procura uma biblioteca carregada que não fazia parte da imagem do contêiner original e foi identificada como maliciosa com base na inteligência de ameaças. |
Execução: binário malicioso integrado executado |
Um binário que atende às seguintes condições foi executado:
Se um binário malicioso integrado for executado, será um sinal de que o invasor está implantando contêineres maliciosos. Eles podem ter conseguido o controle de um repositório de imagem legítimo ou de um pipeline de build de contêineres e injetado um binário malicioso na imagem do contêiner. |
O detector procura um binário em execução que foi incluído na imagem do contêiner original e foi identificado como malicioso com base na inteligência de ameaças. |
Execução: escape de contêiner |
Um processo foi executado no contêiner que tentou sair do isolamento do contêiner, possivelmente ao invasor acesso ao sistema host. Se uma tentativa de escape de contêiner for detectada, isso poderá indicar que um invasor está explorando vulnerabilidades para sair do contêiner. Como resultado, o invasor pode ter acesso não autorizado ao sistema do host ou à infraestrutura mais ampla, comprometendo todo o ambiente. |
O detector monitora processos que tentam explorar os limites do contêiner que usam técnicas de escape ou binários conhecidos. Esses processos são sinalizados pela inteligência de ameaças como possíveis ataques que têm como alvo o sistema host. |
Execução: execução da ferramenta de ataque do Kubernetes |
Uma ferramenta de ataque específica do Kubernetes foi executada no ambiente, o que pode indicar que um invasor está segmentando componentes do cluster do Kubernetes. Se uma ferramenta de ataque for executada no ambiente do Kubernetes, isso pode sugerir que um invasor teve acesso ao cluster e está usando a ferramenta para explorar vulnerabilidades ou configurações específicas do Kubernetes. |
O detector procura ferramentas de ataque do Kubernetes que estão sendo executadas e são identificadas como possíveis ameaças com base em dados de inteligência. O detector aciona alertas para mitigar possíveis comprometimentos no cluster. |
Execução: execução da ferramenta de reconhecimento local |
Uma ferramenta de reconhecimento local que normalmente não está associada ao contêiner ou ao ambiente foi executada, sugerindo uma tentativa de coletar informações internas do sistema. Se uma ferramenta de reconhecimento for executada, isso sugere que o invasor pode estar tentando mapear a infraestrutura, identificar vulnerabilidades ou coletar dados sobre as configurações do sistema para planejar as próximas etapas. |
O detector monitora ferramentas de reconhecimento conhecidas sendo executadas no ambiente, identificadas pela inteligência de ameaças, o que pode indicar a preparação para atividades mais maliciosas. |
Execução: Python malicioso executado (pré-lançamento) |
Um modelo de aprendizado de máquina identificou o código Python especificado como malicioso. Os invasores podem usar o Python para transferir ferramentas ou outros arquivos de um sistema externo para um ambiente comprometido e executar comandos sem binários. |
O detector usa técnicas de PLN para avaliar o conteúdo do código Python executado. Como essa abordagem não é baseada em assinaturas, os detectores podem identificar Pythons conhecidos e novos. |
Execução: binário malicioso modificado executado |
Um binário que atende às seguintes condições foi executado:
Se um binário malicioso modificado for executado, isso indica que um invasor tem controle da carga de trabalho e está executando um software malicioso. |
O detector procura um binário em execução que foi originalmente incluído na imagem do contêiner, mas foi modificado durante a execução e foi identificado como malicioso com base na inteligência de ameaças. |
Execução: biblioteca maliciosa modificada carregada |
Uma biblioteca que atende às seguintes condições foi carregada:
Se uma biblioteca maliciosa modificada for carregada, é um forte sinal de que um invasor tem controle da carga de trabalho e está executando um software malicioso. |
O detector procura uma biblioteca carregada que foi originalmente incluída na imagem do contêiner, mas modificada durante a execução e foi identificada como maliciosa com base na inteligência de ameaças. |
Script malicioso executado |
Um modelo de aprendizado de máquina identificou o código Bash especificado como malicioso. Os invasores podem usar o Bash para transferir ferramentas ou outros arquivos de um sistema externo para um ambiente comprometido e executar comandos sem binários. |
O detector usa técnicas de PLN para avaliar o conteúdo do código Bash executado. Como essa abordagem não é baseada em assinaturas, os detectores podem identificar bash maliciosos conhecidos e novos. |
URL malicioso observado | O Container Threat Detection observou um URL malicioso na lista de argumentos de um processo em execução. | O detector verifica os URLs observados na lista de argumentos de processos em execução em relação às listas de recursos da Web não seguros que são mantidos pelo serviço Navegação segura do Google. Se um URL for classificado incorretamente como phishing ou malware, informe isso em Como relatar dados incorretos. |
Shell reverso |
Um processo começou com o redirecionamento de stream para um soquete conectado remotamente. Com um shell reverso, um invasor pode se comunicar de uma carga de trabalho comprometida para uma máquina controlada pelo invasor. O invasor pode comandar e controlar a carga de trabalho, por exemplo, como parte de um botnet. |
O detector procura stdin vinculado a um soquete remoto.
|
Shell filho inesperado | Um processo que normalmente não invoca shells gerou um processo de shell. | O detector monitora todas as execuções do processo. Quando um shell é invocado, o detector gera uma descoberta se o processo pai normalmente não invoca shells. |
A seguir
- Saiba como usar o Container Threat Detection.
- Saiba como testar o Container Threat Detection.
- Saiba como investigar e desenvolver planos de resposta para ameaças.
- Saiba mais sobre o Artifact Analysis e a verificação de vulnerabilidades.