Container Security: Os Sete Maiores Erros

À medida que as empresas aumentam a adoção de contêineres, elas também correm o risco de aumentar o número de erros que cometem com a tecnologia devido a falta de conhecimento e maturidade de conhecimento pelas equipes envolvidas.

Segundo Mike Bursell, Chief Security Architect na Red Hat, aqui estão os sete maiores erros de segurança de contêiner que as empresas estão fazendo, e como podemos melhorar a proteção implementada.

1. Proteção dos Contêiner sem garantir a plataforma na qual eles são implantados

Qualquer conversa em torno da segurança dos contêineres deve começar com uma discussão em torno da proteção da plataforma do sistema operacional (OS) na qual eles são implantados.

Sem uma camada fundamental de segurança de plataforma, uma organização corre o risco de tornar as cargas de trabalho implantadas dentro dela – incluindo contêineres – vulneráveis. Apesar de ser muitas vezes negligenciado, a seleção de uma base sólida e segura no início definirá o resto da infra-estrutura de contêineres.

2. Concentrar na segurança do que está dentro dos contêineres e não dos próprios contêineres

Garantir o que está dentro de um contêiner é de suma importância, pois o conteúdo pode comprometer a segurança do contêiner. No entanto, quando o foco está fortemente em proteger o conteúdo do contêiner, as vezes isso vem ao custo de proteger o próprio contêiner. Uma vez que um contêiner é essencialmente um processo em execução em um host Linux onde está “contido” – um contêiner partilha inerentemente o espaço do kernel com o host.

Isso significa que, embora os recipientes ofereçam muitas vantagens em relação aos ambientes de implantação virtualizados tradicionais, eles têm um tipo diferente de vetor de ataque que as organizações precisam entender. Por isso, é importante garantir que a tecnologia de contêiner que sua organização implementa fornece cobertura de segurança e proteção contra conhecidos e imprevistos e vetores de ataque.

3. Não proteger as APIs

A segurança de aplicativos inclui o gerenciamento de aplicativos, autenticação e autorização de API. Ao trabalhar com aplicativos compostos de microservices, as APIs são fundamentais. No entanto, quando os aplicativos possuem vários serviços de API independentes, o número de pontos de serviço aumenta e as medidas de segurança adicionais são necessárias.

Uma ferramenta de gerenciamento de API pode mitigar os problemas de segurança e pode fornecer recursos de controle além da segurança e autenticação básica, incluindo ações como restringir o acesso a nós específicos, aplicar políticas de acesso para grupos de usuários ou definir limites por período para chamadas de API recebidas para proteger infra-estrutura e Mantenha o tráfego fluindo suavemente.

4. Não rastrer vulnerabilidades conhecidas

A lista de vulnerabilidades conhecidas está em constante evolução, de modo que as organizações devem certificar-se de que verificam o conteúdo das imagens de contêiner quando são baixadas e continuam rastreando o status da vulnerabilidade ao longo do tempo para todas as imagens aprovadas e implantadas. As ferramentas de escaneamento de contêineres que utilizam bancos de dados de vulnerabilidade atualizados continuamente podem oferecer informações atualizadas sobre vulnerabilidades conhecidas ao usar imagens de contêiner de outras fontes.

A implantação de um registro de contêiner privado também é recomendada. Isso permite que as organizações gerenciem o acesso e a promoção de imagens de contêiner baixadas e quaisquer imagens internamente criadas.

5. Permitir que os contêineres sejam executados como privilegiados

A implantação ou criação de qualquer aplicativo ou processo com o menor privilégio possível é importante e ainda é a melhor prática para os contêineres.Uma vez que – como observado anteriormente – os contatos compartilham o espaço do kernel com o sistema operacional host, permitir que um contêiner seja executado no modo totalmente privilegiado permitiria o que quer que seja executado no contêiner de acesso irrestrito ao sistema host. Como resultado, isso pode causa uma preocupação de segurança muito clara.

Infelizmente, enquanto a maioria dos casos de uso de contêiner não precisa ser executado como root, muitas imagens ainda o fazem. Por isso, recomenda-se que os administradores aproveitem security context constraints (SCCs), para definir – em níveis específicos – as capacidades de um contêiner em execução no sistema operacional do host, incluindo o que ele pode ver e o que pode fazer.

6. Falha na integração de contêineres em um ciclo de segurança contínuo

Uma vez que os recipientes estão funcionando, é importante manter uma segurança contínua através do desenvolvimento e gerenciamento dos contêineres. Fazer isso é uma chave para garantir toda a pilha de software. Ao aderir a uma filosofia “construir uma vez, implantar em todos os lugares“, os desenvolvedores garantem que o produto do processo de compilação alinhe diretamente com o que é implementado na produção. E o processo de integração contínua deve incluir políticas que sinalizem problemas de segurança imediatamente, interrompendo o processo de implantação antes que as vulnerabilidades possam ser expostas.

Ao avançar mais nas considerações de segurança durante a implantação de contêineres, é importante observar:

Cadeia de fornecimento de software e procedência da imagem: com um registro de fonte confiável, as organizações podem garantir imagens protegidas, corrigidas e atualizadas. A abordagem de segurança para as cargas de trabalho implantadas deve ser baseada em onde as imagens de contêiner se originaram, o que elas estão executando e como elas estão sendo executadas.

Implementações de patch: a detecção automática de patches permite que o patch seja mais eficiente e menos demorado, garantindo que a segurança contínua se torne parte do modelo CI / CD.

Monitoramento de segurança e monitoramento baseado em políticas: monitoramento em tempo real e verificação de segurança de imagens garante uma camada adicional de segurança.

7. Desconsider alinhar as necessidades de segurança da empresa com a agilidade dos contêineres

Os recipientes são projetados para ir e vir rapidamente, desafiando algumas práticas de segurança tradicionais e relativamente estáticas. É importante adotar soluções de segurança projetadas para trabalhar com a velocidade e agilidade dos contêineres. Considere a defesa da rede: as organizações querem uma plataforma de contêiner que usa software defined networking (SDN). Isso fornece uma rede de cluster unificada que permite a comunicação entre recipientes em todo o cluster e permite que as organizações segmentem o tráfego da rede para isolar diferentes usuários, equipes, aplicativos e ambientes dentro do cluster.

Além da segurança, qualquer plataforma de contêiner deve fornecer uma experiência que funcione para qualquer desenvolvedor e equipe de operações. A segurança pode trabalhar de mãos dadas com uma plataforma de aplicativos baseada em contêiner de qualidade empresarial sem comprometer as funções e, ao mesmo tempo, melhorar a eficiência operacional e a utilização da infraestrutura.

 

fonte: HelpNetSecurity by Mike Bursell

por; MindSec  31/07/2017
About mindsecblog 211 Articles
Blog patrocinado por MindSec Segurança e Tecnologia da Informação Ltda.