Como procurar vulnerabilidades de Kubernettes com Kubescape

O Kubescape é uma nova ferramenta de código aberto da ARMO que automatiza as verificações de cluster do Kubernetes para identificar problemas de segurança. O Kubescape monitora seu cluster com base nas recomendações de proteção publicadas pela NSA e CISA.

Veja como instalar o Kubescape e começar a verificar seu cluster. As verificações periódicas podem ajudá-lo a corrigir problemas antes que os invasores os usem.

índice

  1. Baixar Kubescape
  2. verificação de cluster
  3. resultados da verificação
  4. Encontrar arquivos de manifesto
  5. Verificações off-line
  6. formatos de saída
  7. Conclusão

Baixar Kubescape

Atualmente, o Kubescape é distribuído como um binário pré-compilado para Windows, macOS e Ubuntu. Você pode baixá-lo diretamente da página GitHub Releases do projeto.

Há também um script de instalação autônoma que você pode colar em seu terminal. Isso encontrará o binário correto para o seu sistema e o adicionará ao seu caminho.

 curl -s https://raw.githubusercontent.com/armosec/kubescape/master/install.sh | /bin/bash

Tente executar o kubescape para verificar se a instalação foi concluída. Veja uma sinopse dos comandos disponíveis.

verificação de cluster

O Kubernetes se conecta ao seu cluster usando arquivos de configuração padrão do Kubectl. Selecione a variável de ambiente KUBECONFIG em seu shell para consultar o arquivo de configuração do cluster que você deseja verificar:

 export KUBECONFIG=.kube/my-cluster.yaml

O Kubescape reclamará que "Não foi possível carregar a configuração do Kubernetes" se esta variável não estiver definida ou o arquivo especificado for inválido. Atualize a variável KUBECONFIG sempre que executar o Kubescape se desejar verificar vários clusters.

As varreduras começam com o comando scan . Você deve indicar a estrutura de segurança com a qual deseja verificar. Atualmente nsa é a única opção com suporte.

 kubescape scan framework nsa --exclude-namespaces kube-system,kube-public

O Kubescape verificará todos os recursos em seu cluster, exceto recursos em namespaces omitidos do sinalizador --exclude-namespaces . Recomendamos que você liste os namespaces internos do Kubernetes aqui, pois não será possível corrigir os problemas encontrados.

Sua primeira verificação do Kubescape pode levar algum tempo, pois a ferramenta precisa baixar suas definições de estrutura. Eles definem os testes em relação aos quais seu cluster é avaliado. Quando a verificação estiver concluída, você verá uma saída colorida em seu terminal detalhando todos os problemas encontrados.

resultados da verificação

Cada teste com falha gera sua própria seção de saída com uma lista de recursos suspeitos, uma descrição do problema e uma solução sugerida. Uma tabela na parte inferior do relatório fornece um resumo de todos os testes executados, o número de recursos que falharam e a taxa geral de sucesso.

O Kubescape verifica mais de 20 possíveis pontos fracos de acordo com a lista identificada pela NSA. O relatório da NSA fornece uma descrição das questões abordadas e a justificativa para sua inclusão. Alguns dos principais problemas enfrentados pelo Kubescape incluem:

  • Oportunidade de expandir privilégios
  • Containers rodando em modo privilegiado
  • Executando Contêineres com Capacidades Perigosas
  • Painel do Kubernetes exposto
  • Containers rodando como root
  • Credenciais contidas nos arquivos de configuração
  • Plano de controle definido incorretamente

A execução do Kubescape permite verificar o status de seu cluster em relação às diretrizes atuais de melhores práticas, dando-lhe mais confiança de que você não está colocando seus dados e cargas de trabalho em risco.

Encontrar arquivos de manifesto

O Kubescape pode funcionar sem uma conexão de cluster. Você pode verificar manifestos de recursos armazenados como arquivos YAML locais, permitindo verificar a segurança deles antes de aplicá-los ao cluster. Adicione um argumento adicional após o nome do quadro para especificar os arquivos que deseja verificar:

 kubescape scan framework nsa k8s/*.yaml

Você pode usar uma URL como um caminho de arquivo para verificar arquivos armazenados remotamente, por exemplo, em um repositório Git.

Recomendamos que você use o modo de verificação de cluster padrão ao executar uma verificação de segurança completa. Idealmente, as verificações de manifesto são incorporadas aos pipelines de CI. Usado dessa maneira, você pode evitar a introdução inadvertida de novas vulnerabilidades à medida que atualiza seus recursos e os implanta em seu cluster.

Verificações off-line

O Kubescape foi projetado para uso online, pois você deve fazer download das definições da estrutura antes de concluir uma varredura. No entanto, você pode salvar manualmente o quadro para facilitar as análises offline. Você deve tentar atualizar o arquivo periodicamente para que ele não fique desatualizado.

Baixe o arquivo da estrutura NSA:

 kubescape download framework nsa --output nsa.json

Agora verifique seu cluster usando o arquivo baixado:

 kubescape scan framework nsa --use-from nsa.json

O --use-from informa ao Kubescape para carregar as definições de estrutura do arquivo especificado. Há também --use-default que tentará usar o arquivo armazenado em cache localmente no local padrão quando estiver disponível. O Kubescape recorre ao download das definições mais recentes do servidor quando nenhum arquivo é encontrado.

formatos de saída

O Kubescape envia para o seu terminal por padrão, mas também pode produzir relatórios no formato JSON ou Junit. Adicione o sinalizador -f para especificar o modo desejado:

 kubescape scan framework nsa -f json kubescape scan framework nsa -f junit

A última opção gera um arquivo XML que pode ser usado por ferramentas de relatório de teste que trabalham com o formato Junit. Isso permite que você incorpore varreduras do Kubescape em suas soluções de relatórios de teste existentes para visualização e agregação.

A saída é enviada para o fluxo de saída padrão do terminal, independentemente do formato de relatório especificado. Adicione o sinalizador -o para fornecer um caminho de arquivo para salvar:

 kubescape scan framework nsa -f json -o report.json

As mensagens de progresso usuais do Kubescape podem ser desabilitadas com o sinalizador -s . Isso é útil em cenários de CI em que você não deseja poluir os logs de trabalho com caracteres ASCII.

Conclusão

O Kubescape permite que você avalie a segurança de seus clusters Kubernetes com base nas diretrizes publicadas pela NSA. A ferramenta simples de código aberto fornece um único comando para comparar seu ambiente com mais de 20 controles principais.

O Kubescape não verifica vulnerabilidades nos contêineres que você executa em seu cluster. Você precisará de outra ferramenta como docker scan ou Trivy para fazer isso. A execução de um mecanismo de verificação de contêiner junto com o Kubescape oferece a visão mais completa do estado de segurança do seu ambiente.

  • Como as taxas de atualização afetam a jogabilidade?
  • Como restaurar completamente um repositório Git (incluindo arquivos não rastreados)

descubra mais conteúdo

Google Pixel Watch também tem detecção de queda, mas não até o próximo ano

As melhores xícaras de café aquecidas de 2022

Como automatizar seu iPhone com base na hora, atividade ou localização

"Isso deve ter sido antes do meu tempo"

Por que a NASA enviou Snoopy para a Lua? – Revisão Geek

O que é uma carga fantasma?

Deixe uma resposta Cancelar resposta

Ir arriba