O que é segurança de contêineres?

Segurança de contêineres é o processo de uso de ferramentas e políticas de segurança para proteger todos os aspectos dos aplicativos em contêineres contra riscos potenciais. A segurança de contêineres gerencia os riscos em todo o ambiente, incluindo todos os aspectos da cadeia de fornecimento de software ou do pipeline de integração e fornecimento contínuos (CI/CD, pela sigla em inglês), da infraestrutura e dos aplicativos de gerenciamento de ciclo de vida e runtime de contêineres em execução nos contêineres. Ao implementar soluções de segurança de rede de contêiner, verifique se elas estão integradas à orquestração de contêineres subjacente para reconhecimento de contexto do aplicativo.

Inovações para melhorar a proteção de aplicativos modernos

Por que a segurança de contêineres é importante?

Embora os contêineres ofereçam algumas vantagens de segurança inerentes, incluindo maior isolamento de aplicativos, os contêineres também expandem o cenário de ameaças de uma organização. Não reconhecer nem planejar medidas de segurança específicas relacionadas aos contêineres pode aumentar os riscos de segurança para as organizações.

O aumento significativo na adoção de contêineres em ambientes de produção torna os contêineres um alvo mais atrativo para agentes mal-intencionados. Além disso, um único contêiner vulnerável ou comprometido pode se tornar um ponto de entrada no ambiente mais amplo de uma organização. Junto com o aumento do tráfego leste-oeste que atravessa o data center e a nuvem, há poucos controles de segurança monitorando essa fonte predominante de tráfego de rede. Tudo isso reforça a importância da segurança de contêineres, pois as soluções tradicionais de segurança de rede não oferecem proteção contra ataques laterais.

Quais são os benefícios da segurança de contêineres?

A segurança de contêineres ganhou destaque em decorrência do aumento do uso geral de contêineres. Isso por si só é benéfico, pois várias partes interessadas estão reconhecendo a importância da segurança de contêineres de aplicativos e investindo nela em todas as suas plataformas, processos e treinamentos. A segurança de contêineres abrange todos os aspectos da proteção de um aplicativo em contêineres e sua infraestrutura, e este é um de seus maiores benefícios: ela pode se tornar um catalisador e um multiplicador de forças para melhorar a segurança de TI em geral. Ao exigir o monitoramento contínuo da segurança nos ambientes de desenvolvimento, teste e produção, também conhecido como DevSecOps, você pode melhorar sua segurança geral, por exemplo, introduzindo a verificação automatizada no início do pipeline de CI/CD.

Como proteger um contêiner?

Embora a segurança de contêineres seja considerada mais como um campo holístico, obviamente ela se concentra no próprio contêiner. O National Institute of Standards and Technology (NIST) publicou um Guia de segurança de contêineres de aplicativos, que resume várias abordagens fundamentais para fazer isso. Estas são três considerações importantes extraídas do relatório do NIST:

  1. Use sistemas operacionais host específicos para contêineres. O NIST recomenda o uso de sistemas operacionais de host específicos para contêineres, que são desenvolvidos com recursos reduzidos, para diminuir as superfícies de ataque.
  2. Segmente os contêineres por finalidade e perfil de risco. Embora as plataformas de contêineres geralmente façam um bom trabalho de isolamento dos contêineres (entre si e do sistema operacional subjacente), o NIST afirma que você pode obter uma "profundidade de defesa" maior agrupando os contêineres por "finalidade, sensibilidade e postura contra ameaças" e executando-os em sistemas operacionais host separados. Isso segue um princípio geral de segurança de TI de limitar o alcance de um incidente ou ataque, o que significa que as consequências de uma violação são limitadas à área mais estreita possível.
  3. Use ferramentas de segurança de runtime e gerenciamento de vulnerabilidades específicas de contêineres. As ferramentas tradicionais de verificação e gerenciamento de vulnerabilidades geralmente têm pontos cegos quando se trata de contêineres, o que pode levar a relatórios imprecisos de que tudo está bem em imagens de contêineres, configurações e similares. Da mesma forma, garantir a segurança em tempo de execução é um aspecto fundamental das implantações e operações de contêineres. As ferramentas tradicionais orientadas para o perímetro, como sistemas de prevenção contra intrusões, geralmente não são criadas pensando nos contêineres e não podem protegê-los adequadamente.

O NIST também recomenda o uso de raiz de confiança baseada em hardware, como o Trusted Platform Module (TPM), para outra camada de confiança de segurança, bem como a criação de cultura e processos (como o DevOps ou DevSecOps) adequados para contêineres e desenvolvimento nativo da nuvem.

Quais são os conceitos básicos da segurança de contêineres?

Existem vários pilares importantes de segurança de contêineres:

  • Configuração: muitas plataformas de contêiner, orquestração e nuvem oferecem recursos e controles de segurança robustos. No entanto, eles precisam ser configurados corretamente e, em seguida, reajustados ao longo do tempo. Eles raramente são otimizados a ponto de estarem prontos para uso. Essa configuração inclui configurações importantes e proteção em áreas como acesso/privilégio, isolamento e rede.
  • Automação: devido à natureza altamente dinâmica e distribuída da maioria dos aplicativos em contêineres e de sua infraestrutura subjacente, as necessidades de segurança, como verificação de vulnerabilidades e detecção de anomalias, podem se tornar uma tarefa praticamente impossível quando feitas manualmente. É por isso que a automação é um recurso fundamental de muitos recursos e ferramentas de segurança de contêineres, da mesma forma que a orquestração de contêineres ajuda a automatizar muitas das despesas gerais operacionais envolvidas na execução de contêineres em escala.
  • Soluções para segurança de contêineres: algumas equipes adicionam novas ferramentas de segurança e suporte à combinação que são criadas especificamente para ambientes em contêineres. Essas ferramentas, às vezes, estão focadas em diferentes aspectos do ecossistema nativo da nuvem, como ferramentas de infraestrutura convergente, segurança de runtime de contêineres e Kubernetes.

Quais são os erros comuns de segurança de contêineres a serem evitados?

Existem vários erros comuns quando se trata de proteger contêineres e ambientes, incluindo:

  • Esquecer a higiene básica de segurança. Os contêineres são uma tecnologia relativamente nova que requer algumas abordagens de segurança mais recentes. Porém, isso não significa abandonar certos fundamentos de segurança. Por exemplo, manter seus sistemas corrigidos e atualizados, tanto os sistemas operacionais quanto os runtimes de contêineres ou outras ferramentas, continua sendo uma tática importante.
  • Falta de configuração e fortalecimento das ferramentas e dos ambientes. Boas ferramentas de contêiner e orquestração, assim como muitas plataformas de nuvem, vêm com recursos de segurança significativos. No entanto, para aproveitar os benefícios, você precisa configurá-las para seus ambientes específicos, em vez de executá-las nas configurações padrão. Os exemplos incluem conceder a um contêiner apenas os recursos ou os privilégios de que ele realmente precisa para ser executado, para minimizar riscos, como um ataque de encaminhamento de privilégios.
  • Ignorar o monitoramento, o registro em log e os testes. Quando as equipes começam a executar contêineres na produção, elas podem perder a visibilidade da integridade dos aplicativos e dos ambientes se não tomam cuidado. Esse é um grande risco que algumas equipes não reconhecem e é particularmente relevante para sistemas altamente distribuídos que podem ser executados em vários ambientes de nuvem junto com a infraestrutura local. Garantir que você tenha monitoramento, registro em log e testes adequados é fundamental para minimizar vulnerabilidades desconhecidas e outros pontos cegos.
  • Não proteger todas as fases do pipeline de CI/CD. Outra possível deficiência da estratégia de segurança de contêineres é ignorar outros elementos do pipeline de entrega de software. Equipes eficientes evitam isso com uma filosofia "shift left", o que significa que você prioriza a segurança o mais cedo possível na cadeia de fornecimento de software e, em seguida, aplica ferramentas e políticas consistentemente.

Soluções e produtos relacionados

VMware Carbon Black Container

Proporcione visibilidade contínua, segurança de contêineres e conformidade.

VMware Tanzu

Portfólio de produtos e serviços para modernização de aplicativos