Nota perev. : Se você está se perguntando sobre segurança em uma infraestrutura baseada no Kubernetes, esta ótima revisão do Sysdig será um excelente ponto de partida para uma rápida visão das soluções atualizadas de hoje. Inclui sistemas integrados de players de mercado conhecidos e utilitários muito mais modestos que encerram esse ou aquele problema. E nos comentários, como sempre, teremos o maior prazer em aprender sobre sua experiência no uso dessas ferramentas e ver links para outros projetos.Produtos de software de segurança Kubernetes ... existem muitos, e cada um tem seus próprios objetivos, escopo e licenças.
Por isso, decidimos criar essa lista e incluí-la em projetos abertos e plataformas comerciais de diferentes fornecedores. Esperamos que ele ajude você a escolher os que são de maior interesse e sejam enviados na direção certa, dependendo das necessidades específicas de segurança do Kubernetes.
Categorias
Para simplificar a navegação na lista, as ferramentas são divididas em principais funções e áreas de aplicação. As seguintes seções foram exibidas:
- Digitalização de imagem Kubernetes e análise estática;
- Tempo de execução de segurança;
- Segurança de rede Kubernetes;
- Difusão de imagens e gestão de segredos;
- Auditoria de Segurança Kubernetes;
- Produtos comerciais abrangentes.
Vamos ao que interessa:
Digitalização de imagem Kubernetes
Anchore
- Site: anchore.com
- Licença: oferta gratuita (Apache) e comercial

O pacote Anchore analisa imagens de contêiner e permite realizar verificações de segurança com base em políticas definidas pelo usuário.
Além da varredura usual de imagens de contêiner de vulnerabilidades conhecidas do banco de dados do CVE, o Anchore realiza muitas verificações adicionais como parte da política de varredura: verifica Dockerfile, vazamento de credenciais, pacotes de linguagens de programação usadas (npm, maven, etc.), licenças de software e muito mais .
Clair

Clair foi um dos primeiros projetos de código aberto a digitalizar imagens. É amplamente conhecido como o scanner de segurança subjacente ao registro de imagens do Quay
(também do CoreOS - aprox. Transl. ) . A Clair pode coletar informações do CVE de uma ampla variedade de fontes, incluindo listas de vulnerabilidades específicas do Linux, mantidas pelas equipes de segurança Debian, Red Hat ou Ubuntu.
Ao contrário de Anchore, Clair lida principalmente com a pesquisa de vulnerabilidades e o mapeamento de dados para o CVE. No entanto, o produto oferece aos usuários algumas opções para expandir funções usando drivers de plug-in.
Dagda

A Dagda realiza uma análise estática de imagens de contêiner para vulnerabilidades, cavalos de Troia, vírus, malware e outras ameaças conhecidas.
De outras ferramentas semelhantes, o pacote Dagda se destaca por dois recursos notáveis:
- Ele se integra perfeitamente ao ClamAV , atuando não apenas como uma ferramenta para digitalizar imagens de contêineres, mas também como um antivírus.
- Ele também fornece proteção de tempo de execução, recebendo eventos em tempo real do daemon do Docker e integrando-se ao Falco (veja abaixo) para coletar eventos de segurança enquanto o contêiner estiver em execução.
Kubexray

O KubeXray "escuta" os eventos do servidor da API do Kubernetes e usa os metadados do JFrog Xray para garantir que apenas os pods correspondentes à política atual sejam lançados.
O KubeXray não apenas audita contêineres novos ou atualizados na implantação (semelhante ao controlador de admissão no Kubernetes), mas também verifica dinamicamente os contêineres de trabalho quanto à conformidade com as novas políticas de segurança, removendo recursos que fazem referência a imagens vulneráveis.
Snyk
- Site: snyk.io
- Licença: versões gratuita (Apache) e comercial

O Snyk é um scanner incomum de vulnerabilidades, no sentido de que ele visa especificamente o processo de desenvolvimento e é promovido como uma "solução indispensável" para os desenvolvedores.
Snyk se conecta diretamente aos repositórios de código, analisa o manifesto do projeto e analisa o código importado junto com dependências diretas e indiretas. O Snyk suporta muitas linguagens de programação populares e pode detectar riscos ocultos de licenciamento.
Trivy

O Trivy é um scanner de vulnerabilidade de contêiner simples, porém poderoso, que pode ser facilmente integrado a um pipeline de CI / CD. Sua característica marcante é a facilidade de instalação e operação: o aplicativo consiste em um único binário e não requer a instalação de um banco de dados ou de bibliotecas adicionais.
A desvantagem da simplicidade de Trivy é que você precisa descobrir como analisar e enviar os resultados no formato JSON para que outras ferramentas de segurança do Kubernetes possam usá-los.
Segurança de tempo de execução Kubernetes
Falco

O Falco é um conjunto de ferramentas de tempo de execução para segurança na nuvem. Faz parte da
família de projetos do
CNCF .
Usando as ferramentas Sysdig para trabalhar no nível do kernel Linux e fazer chamadas de sistema de criação de perfil, o Falco permite que você mergulhe profundamente no comportamento do sistema. Seu mecanismo de regras de tempo de execução é capaz de detectar atividades suspeitas em aplicativos, contêineres, host base e orquestra do Kubernetes.
O Falco fornece total transparência no trabalho do tempo de execução e detecção de ameaças instalando agentes especiais nos sites do Kubernetes para esses fins. Como resultado, não há necessidade de modificar contêineres incorporando código de terceiros neles ou pendurando contêineres laterais.
Estruturas de segurança Linux para tempo de execução

Essas estruturas nativas de kernel Linux não são “ferramentas de segurança Kubernetes” no sentido usual, mas são dignas de menção porque são um elemento importante no contexto de segurança em tempo de execução, incluído na Política de Segurança de Pods Kubernetes (PSP).
O AppArmor conecta o perfil de segurança aos processos em execução no contêiner, definindo privilégios do sistema de arquivos, regras de acesso à rede, bibliotecas de conexão etc. Este é um sistema baseado em Mandatory Access Control (MAC). Em outras palavras, impede a execução de ações proibidas.
O Security-Enhanced Linux (
SELinux ) é um módulo de segurança avançado no kernel do Linux, em alguns aspectos semelhantes ao AppArmor e frequentemente comparado a ele. O SELinux é superior ao AppArmor nas configurações de energia, flexibilidade e sutileza. Suas desvantagens são o desenvolvimento longo e o aumento da complexidade.
O Seccomp e o seccomp-bpf permitem filtrar chamadas do sistema, bloquear a execução daquelas que são potencialmente perigosas para o SO subjacente e não são necessárias para a operação normal dos aplicativos do usuário. O Seccomp em alguns pontos é semelhante ao Falco, embora não conheça as especificidades dos contêineres.
Código aberto Sysdig

O Sysdig é uma ferramenta completa para analisar, diagnosticar e depurar sistemas Linux (também funciona no Windows e macOS, mas com recursos limitados). Ele pode ser usado para coletar informações detalhadas, checar e
forenses criminais
do sistema base e quaisquer contêineres em execução nele.
O Sysdig também suporta nativamente os tempos de execução do contêiner e os metadados do Kubernetes, adicionando dimensões e rótulos extras a todas as informações coletadas sobre o comportamento do sistema. Existem várias maneiras de analisar o cluster Kubernetes usando o Sysdig: você pode capturar em um momento específico através da
captura do kubectl ou executar uma interface interativa baseada em ncurses usando o
plug- in
kubectl dig .
Segurança de rede Kubernetes
Aporeto

Aporeto oferece "segurança separada da rede e infraestrutura". Isso significa que os serviços Kubernetes não apenas recebem um ID local (ou seja, ServiceAccount no Kubernetes), mas também um identificador / impressão digital universal que pode ser usado para verificar com segurança e mutuamente a interação com qualquer outro serviço, por exemplo, em um cluster OpenShift.
O Aporeto é capaz de gerar um identificador exclusivo, não apenas para Kubernetes / containers, mas também para hosts, funções na nuvem e usuários. Dependendo desses identificadores e do conjunto de regras de segurança de rede definidas pelo administrador, as comunicações serão permitidas ou bloqueadas.
Calico

O Calico normalmente é implantado durante a instalação do orquestrador de contêiner, o que permite criar uma rede virtual conectando contêineres. Além dessa funcionalidade básica de rede, o projeto Calico trabalha com as diretivas de rede Kubernetes e seu próprio conjunto de perfis de segurança de rede, suporta ACLs de terminais (listas de controle de acesso) e regras de segurança de rede baseadas em anotações para o tráfego de entrada e saída.
Cilium

O Cilium atua como um firewall de contêiner e fornece recursos de segurança de rede originalmente adaptados às cargas de trabalho do Kubernetes e microsserviços. O Cilium usa uma nova tecnologia de kernel Linux chamada BPF (Berkeley Packet Filter) para filtrar, monitorar, redirecionar e ajustar dados.
O Cilium pode implantar políticas de acesso à rede baseadas em contêiner usando tags e metadados do Docker ou Kubernetes. O Cilium também entende e filtra vários protocolos da camada 7, como HTTP ou gRPC, permitindo definir um conjunto de chamadas REST que, por exemplo, serão permitidas entre duas implantações do Kubernetes.
Isstio

O Istio é amplamente conhecido como a implementação do paradigma de malha de serviço, implantando um plano de controle independente de plataforma e redirecionando todo o tráfego de serviços gerenciados por meio de proxies Envoy configurados dinamicamente. O Istio tira proveito dessa visão avançada de todos os microsserviços e contêineres para implementar várias estratégias de segurança de rede.
Os recursos de segurança de rede do Istio incluem criptografia TLS transparente para atualizar automaticamente o protocolo de comunicação entre microsserviços para HTTPS e seu próprio sistema RBAC para identificação e autorização para ativar / desativar a troca de dados entre diferentes cargas de trabalho no cluster.
Nota perev. : Leia mais sobre os recursos orientados à segurança do Istio neste artigo .Tigera

Essa solução, chamada Kubernetes Firewall, concentra-se em uma abordagem de segurança de rede de confiança zero.
Semelhante a outras soluções de rede nativas do Kubernetes, o Tigera conta com metadados para identificar vários serviços e objetos no cluster e fornece detecção de problemas em tempo de execução, conformidade contínua da rede e monitoramento de transparência para infraestruturas monolíticas em contêineres híbridas ou em múltiplas nuvens.
Trireme

O Trireme-Kubernetes é uma implementação simples e direta da especificação de Políticas de Rede Kubernetes. A característica mais notável é que - diferentemente dos produtos similares de segurança de rede Kubernetes - ele não requer um plano de controle central para coordenar a malha. Isso torna a solução trivialmente escalável. No Trireme, isso é conseguido instalando um agente em cada nó que se conecta diretamente à pilha TCP / IP do host.
Disseminação de Imagem e Gerenciamento de Segredos
Grafeas

Grafeas é uma API de código aberto para auditoria e gerenciamento da cadeia de suprimentos. Em um nível básico, o Grafeas é uma ferramenta para coletar metadados e resultados de auditoria. Pode ser usado para rastrear a conformidade com as melhores práticas de segurança da organização.
Essa fonte centralizada da verdade ajuda a responder perguntas como:
- Quem montou e assinou o contêiner específico?
- Ele passou em todos os scanners de segurança e verificações de política de segurança? Quando? Quais foram os resultados?
- Quem o implantou na produção? Quais parâmetros foram usados durante a implantação?
In-toto

O In-toto é uma estrutura projetada para garantir a integridade, autenticação e auditoria de toda a cadeia de suprimentos de software. Ao implantar o In-toto na infraestrutura, primeiro é definido um plano que descreve as várias etapas do pipeline (repositório, ferramentas de CI / CD, ferramentas de controle de qualidade, coletores de artefatos etc.) e usuários (pessoas responsáveis) que têm permissão para iniciá-las.
A In-toto monitora a implementação do plano, verificando se cada tarefa da cadeia é executada adequadamente exclusivamente exclusivamente por pessoal autorizado e que nenhuma manipulação não autorizada foi realizada com o produto.
Portieris

Portieris é um controlador de admissão para o Kubernetes; É usado para verificações forçadas da confiança no conteúdo. A Portieris usa o servidor Notary
(escrevemos sobre isso no final deste artigo - aprox. Transl. ) Como fonte de verdade para confirmar artefatos assinados e confiáveis (ou seja, imagens de contêineres aprovadas).
Ao criar ou modificar uma carga de trabalho no Kubernetes, o Portieris baixa as informações de assinatura e a política de confiança de conteúdo das imagens de contêiner solicitadas e, se necessário, faz alterações no objeto JSON da API em tempo real para iniciar versões assinadas dessas imagens.
Vault

O Vault é uma solução segura para armazenar informações confidenciais: senhas, tokens OAuth, certificados PKI, contas de acesso, segredos do Kubernetes, etc. O Vault suporta muitos recursos avançados, como alugar tokens de segurança efêmeros ou organizar a rotação de chaves.
Usando o Helm Chart, o Vault pode ser implantado como uma nova implantação em um cluster Kubernetes com o Consul como repositório de back-end. Ele suporta recursos nativos do Kubernetes como tokens ServiceAccount e pode até atuar como o armazenamento secreto padrão do Kubernetes.
Nota perev. : A propósito, ontem, a empresa HashiCorp que desenvolve o Vault anunciou algumas melhorias no uso do Vault no Kubernetes e, em particular, elas se relacionam ao gráfico Helm. Leia o blog do desenvolvedor para obter detalhes.Auditoria de Segurança Kubernetes
Banco Kube

O Kube-bench é um aplicativo Go que verifica se o Kubernetes está implantado com segurança, executando testes na lista
CIS Kubernetes Benchmark .
O Kube-bench procura parâmetros de configuração inseguros entre os componentes do cluster (etcd, API, gerenciador de controladores etc.), permissões de arquivo duvidosas, contas inseguras ou portas abertas, cotas de recursos, configurações para restringir o número de chamadas de API para proteção contra Ataques DoS, etc.
Caçador de Kube

O Kube-hunter “procura” possíveis vulnerabilidades (como execução remota de código ou divulgação de dados) nos clusters do Kubernetes. O Kube-hunter pode ser executado como um scanner remoto - nesse caso, ele avaliará o cluster do ponto de vista de um invasor de terceiros - ou como um pod dentro do cluster.
Uma característica distintiva do Kube-hunter é o modo "caça ativa", durante o qual ele não apenas relata problemas, mas também tenta tirar proveito das vulnerabilidades descobertas no cluster de destino que podem prejudicar seu trabalho. Portanto, use com cuidado!
Kubeaudit

O Kubeaudit é uma ferramenta de console desenvolvida originalmente pelo Shopify para auditar as configurações do Kubernetes para vários problemas de segurança. Por exemplo, ajuda a identificar contêineres que funcionam sem restrições, com privilégios de superusuário, abusam de privilégios ou usam ServiceAccount por padrão.
Kubeaudit tem outras características interessantes. Por exemplo, ele pode analisar arquivos YAML locais, identificar falhas de configuração que podem levar a problemas de segurança e corrigi-los automaticamente.
Kubesec

O Kubesec é uma ferramenta especial, no sentido de que verifica diretamente os arquivos YAML que descrevem os recursos do Kubernetes em busca de parâmetros fracos que podem afetar a segurança.
Por exemplo, ele pode detectar privilégios e permissões excessivos concedidos ao pod, iniciar um contêiner com root como usuário padrão, conectar-se ao espaço para nome da rede host ou montagens perigosas, como
/proc
host ou soquete do Docker. Outro recurso interessante do Kubesec é o serviço de demonstração online, onde você pode baixar o YAML e analisá-lo imediatamente.
Agente de política aberto

O conceito de OPA (Open Policy Agent) é separar políticas de segurança e práticas recomendadas no campo da segurança de uma plataforma de tempo de execução específica: Docker, Kubernetes, Mesosphere, OpenShift ou qualquer combinação deles.
Por exemplo, você pode implantar o OPA como back-end para o controlador de admissão Kubernetes, delegando soluções de segurança a ele. Dessa maneira, o agente OPA poderá verificar, rejeitar e até modificar solicitações em tempo real, garantindo a conformidade com as configurações de segurança especificadas. As políticas de segurança da OPA são escritas em sua própria linguagem DSL, Rego.
Nota perev. : Escrevemos mais sobre a OPA (e SPIFFE) neste artigo .Ferramentas abrangentes de análise de segurança Kubernetes
Decidimos criar uma categoria separada para plataformas comerciais, pois elas geralmente cobrem várias áreas de segurança ao mesmo tempo. Uma ideia geral de seus recursos pode ser obtida na tabela:
* Exame avançado e análise post mortem com captura total de chamadas do sistema .Aqua security

Essa ferramenta comercial foi projetada para contêineres e cargas de trabalho na nuvem. Fornece:
- Digitalização de imagem integrada ao registro de contêiner ou pipeline de CI / CD;
- Proteção de tempo de execução com a busca de alterações em contêineres e outras atividades suspeitas;
- Firewall de contêiner nativo;
- Segurança para sem servidor em serviços em nuvem;
- Conformidade e auditoria combinadas ao log de eventos.
Nota perev. : Também é importante notar que também há um componente gratuito do produto chamado MicroScanner , que permite verificar imagens de contêiner em busca de vulnerabilidades. Uma comparação de seus recursos com versões pagas é apresentada nesta tabela .Capsule8

O Capsule8 se integra à infraestrutura instalando o detector em um cluster Kubernetes local ou na nuvem. Esse detector coleta a telemetria do host e da rede, correlacionando-o com vários tipos de ataques.
A equipe do Capsule8 vê isso como sua detecção e prevenção antecipadas de ataques que usam vulnerabilidades novas
(0 dias) . O Capsule8 pode baixar regras de segurança atualizadas diretamente para os detectores, em resposta a ameaças e vulnerabilidades de software descobertas recentemente.
Cavirin

A Cavirin atua como contraparte do lado da empresa em vários departamentos envolvidos em padrões de segurança. Ele não pode apenas digitalizar imagens, mas também integrar-se a um pipeline de CI / CD, bloqueando imagens que não atendem aos padrões antes de entrarem em repositórios fechados.
O Cavirin Security Suite usa o aprendizado de máquina para avaliar a segurança cibernética e oferece dicas sobre o aprimoramento da segurança e a conformidade com os padrões de segurança.
Centro de Comando do Google Cloud Security

O Cloud Security Command Center ajuda as equipes de segurança a coletar dados, identificar ameaças e eliminá-los antes que eles prejudiquem a empresa.
Como o nome indica, o Google Cloud SCC é um painel de controle unificado no qual você pode integrar vários relatórios de segurança, mecanismos de contabilidade de ativos e sistemas de segurança de terceiros e gerenciá-los a partir de uma única fonte centralizada.
A API interoperável oferecida pelo Google Cloud SCC facilita a integração de eventos de segurança de várias fontes, como Sysdig Secure (segurança de contêiner para aplicativos nativos da nuvem) ou Falco (segurança de código aberto em tempo de execução).
Informações em camadas (Qualys)

O Layered Insight (agora parte da Qualys Inc) baseia-se no conceito de "segurança incorporada". Depois de verificar a imagem original em busca de vulnerabilidades usando métodos de análise estatística e executar verificações de CVE, o Layered Insight a substitui por uma imagem instrumentada que inclui um agente na forma de um binário.
Este agente contém testes de segurança de tempo de execução para analisar o tráfego de rede do contêiner, os fluxos de E / S e a atividade do aplicativo. Além disso, ele pode executar verificações de segurança adicionais definidas pelo administrador da infraestrutura ou pelas equipes de DevOps.
Neuvector

O NeuVector realiza verificações de segurança de contêiner e fornece proteção de tempo de execução, analisando a atividade da rede e o comportamento do aplicativo, criando um perfil de segurança individual para cada contêiner. Ele também pode bloquear ameaças de forma independente, isolando atividades suspeitas alterando as regras do firewall local.
Integração de rede O NeuVector, conhecido como Security Mesh, é capaz de analisar profundamente os pacotes e filtrar no 7º nível de todas as conexões de rede na malha de serviço.
Stackrox

A StackRox Container Security Platform se esforça para cobrir todo o ciclo de vida dos aplicativos Kubernetes em um cluster. Como outras plataformas comerciais nesta lista, o StackRox gera um perfil de tempo de execução com base no comportamento observado do contêiner e soa automaticamente um alarme para qualquer desvio.
Além disso, o StackRox analisa as configurações do Kubernetes usando o CIS Kubernetes e outros livros de regras para avaliar a conformidade do contêiner.
Sysdig secure

O Sysdig Secure protege aplicativos em todo o ciclo de vida do contêiner e Kubernetes. Ele
digitaliza imagens de contêiner, fornece
proteção de tempo de execução de acordo com dados de aprendizado de máquina e realiza crimes. exame para identificar vulnerabilidades, bloquear ameaças, monitorar a
conformidade com padrões estabelecidos e auditar a atividade em microsserviços.
O Sysdig Secure se integra às ferramentas de CI / CD, como Jenkins, e monitora as imagens baixadas dos registros do Docker, impedindo que imagens perigosas apareçam na produção. Ele também fornece segurança abrangente de tempo de execução, incluindo:
- Perfil de tempo de execução baseado em ML e detecção de anomalias
- políticas de tempo de execução baseadas em eventos do sistema, a API de auditoria do K8s, projetos conjuntos da comunidade (FIM - monitoramento de integridade de arquivos; cryptojacking) e o MITRE ATT & CK ;
- resposta e eliminação de incidentes.
Segurança de contêiner sustentável

Antes do advento dos contêineres, a Tenable era amplamente conhecida no setor como a empresa que desenvolveu o Nessus, uma ferramenta popular para procurar vulnerabilidades e auditorias de segurança.
A Tenable Container Security usa sua experiência em segurança de computadores para integrar o pipeline de CI / CD com bancos de dados de vulnerabilidade, pacotes especializados de detecção de malware e recomendações para resolver riscos de segurança.
Twistlock (Palo Alto Networks)

O Twistlock se promove como uma plataforma focada em serviços e contêineres em nuvem. O Twistlock suporta vários provedores de nuvem (AWS, Azure, GCP), orquestradores de contêineres (Kubernetes, Mesospehere, OpenShift, Docker), tempos de execução sem servidor, estruturas de malha e ferramentas de CI / CD.
Além dos métodos comuns de segurança em nível empresarial, como integração em um pipeline de CI / CD ou varredura de imagem, o Twistlock usa o aprendizado de máquina para gerar padrões comportamentais e regras de rede que levam em consideração as características dos contêineres.
Há algum tempo, o Twistlock foi comprado pela Palo Alto Networks, proprietária dos projetos Evident.io e RedLock. Ainda não se sabe exatamente como essas três plataformas serão integradas ao
PRISMA a partir de Palo Alto.
Ajude a criar o melhor catálogo de ferramentas de segurança Kubernetes!
Nós nos esforçamos para tornar este catálogo o mais completo possível e, para isso, precisamos da sua ajuda! Entre em contato conosco (
@sysdig ) se você tiver uma ferramenta interessante digna de inclusão nesta lista ou se encontrar um erro / informações desatualizadas.
Você também pode assinar nosso
boletim informativo mensal com notícias e histórias sobre ecossistemas nativos da nuvem sobre projetos interessantes do mundo da segurança do Kubernetes.
PS do tradutor
Leia também em nosso blog: