Segurança do contêiner

Proteja seu ambiente de contêineres no GCP, no GKE ou no Anthos.

Visão geral

A contentorização permite que as equipes de desenvolvimento sejam mais ágeis, implantem software de maneira eficiente e operem em uma escala sem precedentes. À medida que as empresas desenvolvem cada vez mais cargas de trabalho em contêineres, é preciso que a segurança seja integrada em cada etapa do ciclo de vida de compilação e implantação. Aprenda a proteger qualquer ambiente de contêiner executado no GCP, seja no Google           Kubernetes Engine ou Anthos, em três áreas importantes.

Segurança de infraestrutura

Ter segurança de infraestrutura significa que sua plataforma de gerenciamento de contêineres fornece os recursos de segurança adequados. O Kubernetes inclui recursos de segurança para proteger suas identidades, secrets e rede. O Google Kubernetes Engine usa as funcionalidades nativas do GCP, como o Cloud IAM, o Cloud Audit Logging e as nuvens privadas virtuais, e recursos específicos do GKE, como criptografia de secrets da camada de aplicativo e identidade da carga de trabalho, para oferecer o melhor da segurança do Google às suas cargas de trabalho.

Cadeia de suprimentos de software

Proteger a cadeia de suprimentos de software significa ter imagens de contêineres seguras para serem implantadas. É assim que você garante que as imagens de contêineres não fiquem vulneráveis e que as imagens criadas não sejam modificadas antes da implantação.

Segurança do ambiente de execução

A segurança do ambiente de execução permite que você identifique um contêiner que está agindo de maneira mal-intencionada na produção e tome medidas para proteger sua carga de trabalho.

A execução de contêineres permite que você adote um modelo de segurança completamente diferente

Gerenciamento de patches e imutabilidade simplificados

Gerenciamento de patches e imutabilidade simplificados

Os contêineres são imutáveis. Portanto, é preciso implantar uma nova imagem para fazer alterações. É possível simplificar o gerenciamento de patches recriando suas imagens regularmente para que o patch seja incluído na próxima vez que um contêiner for implantado. Tenha a visão completa do seu ambiente com revisões de segurança de imagens regulares.

Menor superfície de ataque

Menor superfície de ataque

Os contêineres foram feitos para serem executados em um sistema operacional host muito menor que em uma VM, já que há mais recursos reunidos diretamente no aplicativo. Esse sistema operacional mínimo reduz a possível superfície de ataque da sua carga de trabalho.

Isolamento de recursos e cargas de trabalho

Isolamento de recursos e cargas de trabalho

Os contêineres oferecem uma maneira fácil de isolar recursos, como volumes de armazenamento, para determinados processos usando cgroups e namespaces. Com tecnologias como o GKE Sandbox, é possível isolar logicamente as cargas de trabalho em um sandbox dentro da VM e separado de outros aplicativos.

Segurança de infraestrutura

Ter segurança de infraestrutura do contêiner é garantir que seus desenvolvedores tenham as ferramentas necessárias para criar serviços em contêineres com segurança. Esses recursos geralmente são integrados a um orquestrador de contêineres, como o Kubernetes. Se você usa o Google Kubernetes Engine, essa funcionalidade aparece de forma nativa, além de outros recursos do Google Cloud.

Identidade e autorização

No Google Kubernetes Engine, use o Cloud IAM para gerenciar o acesso aos projetos e o controle de acesso com base em papéis (RBAC, na sigla em inglês) para gerenciar o acesso aos seus clusters e namespaces.

Geração de registros de auditoria

No Kubernetes, os registros de auditoria da API são capturados automaticamente. No Google Kubernetes Engine, o Cloud Audit Logging registra os logs de auditoria da API automaticamente para você.

Rede

No Google Kubernetes Engine, crie uma política de rede para gerenciar comunicações entre pods no cluster. Use clusters privados para IPs privados e inclua recursos do Google Kubernetes Engine em uma VPC compartilhada.

Conformidade

O Google Kubernetes Engine apresenta muitas certificações de conformidade, incluindo ISO 27001, ISO 27017, ISO 27108, HIPAA e PCI-DSS.

Sistema operacional host mínimo

O Google Kubernetes Engine usa o SO otimizado para contêineres (COS, na sigla em inglês) por padrão, um sistema operacional criado e otimizado para a execução de contêineres. O COS é mantido pelo Google em código aberto.

Componentes atualizados automaticamente

No GKE, os mestres são automaticamente corrigidos para a versão mais recente do Kubernetes, e é possível usar a atualização automática do nó para manter sua segurança atualizada, aplicando automaticamente os patches mais recentes         nos nós.

Chaves de criptografia gerenciadas pelo cliente

Usuários de setores regulamentados podem precisar controlar as chaves usadas para criptografar dados         armazenados no GKE. Com chaves de criptografia gerenciadas pelo cliente, é possível escolher uma chave no Cloud KMS         para proteger seu disco permanente do GKE.

Criptografia de chaves secretas da camada de aplicativos

Por padrão, os secrets do Kubernetes são armazenados em texto sem formatação. O GKE criptografa esses secrets no disco         e monitora esses dados para acesso interno. Mas isso, por si só, pode não ser suficiente para proteger         esses secrets de um aplicativo mal-intencionado em seu ambiente. A criptografia de secrets da camada de aplicativos protege seus secrets com criptografia de envelope, com uma chave gerenciada no Cloud KMS.

Identidade da carga de trabalho

Seu aplicativo em contêiner provavelmente precisará se conectar a outros serviços, como um banco de dados,         para cumprir seus deveres. Para fazer isso, seu aplicativo, primeiro, precisa se autenticar para eles. A Identidade de carga de trabalho usa uma conta de serviço gerenciada pelo Google para compartilhar credenciais para autenticação, seguindo os princípios de menor privilégio para autenticação de aplicativos.

Certificados SSL gerenciados

No GKE, os balanceadores de carga HTTPS precisam estar associados a um certificado SSL. Você mesmo pode conseguir,         gerenciar e renovar esses certificados ou é possível, para não correr o risco de esquecer, solicitar ao Google que consiga, gerencie e renove esses certificados automaticamente para você.

Cadeia de suprimentos de software

A cadeia de suprimentos de software exige que você saiba exatamente o que está sendo implantado no seu ambiente. Você precisa ser capaz de controlar os aplicativos, desde o código até a imagem e a implantação. Esses recursos, geralmente, são incorporados ao pipeline de CI/CD, ao registro do contêiner, como o Google Container Registry, e como uma verificação de admissão antes da implantação dos contêineres na produção.

Imagens de base seguras e gerenciadas

O Google Container Registry oferece uma imagem de base do Debian e uma do Ubuntu, mantidas pelo Google com patches e testes regulares. Essas imagens gerenciadas pelo Google foram corrigidas com os patches disponíveis mais recentemente do upstream para manter suas imagens atualizadas facilmente sem precisar receber de um repositório desconhecido ou manter você mesmo as imagens.

Verificação de vulnerabilidades

O Google Container Registry oferece uma verificação de vulnerabilidades para verificar se há vulnerabilidades conhecidas do banco de dados de CVE.(em inglês) nas suas imagens e pacotes.

Políticas de implantação

No Google Kubernetes Engine, use a autorização binária para limitar o que é possível implantar no seu ambiente com base nos atestados de uma imagem. É possível exigir que as imagens atendam aos requisitos definidos por você na forma de atestados ou assinaturas antes de serem implantados. Os requisitos podem incluir a verificação da imagem em busca de vulnerabilidades ou verificação pela equipe de controle de qualidade.

Versões regulares

Os contêineres podem ser recriados e reimplantados regularmente para que seja possível se beneficiar dos patches mais recentes que são gradualmente implementados no ambiente.

Segurança do ambiente de execução

Ter segurança no ambiente de execução do contêiner é garantir que sua equipe de resposta de segurança possa detectar e responder a ameaças de segurança aos contêineres em execução no ambiente. Esses recursos geralmente são integrados às suas ferramentas de operações de segurança.

Monitoramento

O Google Kubernetes Engine está integrado ao Stackdriver para fácil análise de registro. Também é possível gravar eventos de segurança no Cloud Security Command Center (Cloud SCC).

Detecção de atividade anômala

Use os serviços dos nossos parceiros para monitorar ataques e ver os resultados no Cloud SCC, incluindo: Aqua Security, Capsule8, StackRox, Sysdig Secure e Twistlock.

Aplicar políticas de segurança

O PodSecurityPolicy é um recurso do Kubernetes de código aberto que ajuda a criar medidas para          seus contêineres, definindo restrições sobre como seus pods podem ser executados. Por exemplo, impondo          restrições como AppArmor e seccomp.

Isolamento

Evite que um contêiner mal-intencionado afete outro. O GKE Sandbox usa um espaço de usuário          para interceptar e manipular syscalls, adicionando defesa em profundidade aos contêineres sem          mudar a maneira como os desenvolvedores interagem com os aplicativos. O GKE Sandbox é baseado no gVisor, um projeto de código aberto criado no Google.

Recursos

Explore mais informações específicas sobre a segurança de contêineres.

Google Cloud

Primeiros passos

Aprenda e crie

Ainda não conhece o GCP? Comece a usar qualquer produto do GCP gratuitamente com US$ 300 de crédito.

Precisa de mais ajuda?

Nossos especialistas ajudarão você a criar a solução certa ou encontrar o parceiro ideal para suas necessidades.