Todas as versões do Kubernetes são sucetíveis à MiTM, não existe patch ainda

O Comitê de Segurança do Produto Kubernetes forneceu conselhos sobre como impedir temporariamente que invasores explorem uma vulnerabilidade que poderia permitir que eles interceptassem o tráfego de outros pods em clusters Kubernetes multilocatários em ataques man-in-the-middle (MiTM).

Kubernetes  (também conhecido como K8s), originalmente desenvolvido pelo Google e agora mantido pela Cloud Native Computing Foundation, é um sistema de código aberto projetado para ajudar a automatizar a implantação, o dimensionamento e o gerenciamento de cargas de trabalho, serviços e aplicativos em contêineres em clusters de hosts.

Ele faz isso organizando contêineres de aplicativos em pods, nós (máquinas físicas ou virtuais) e clusters, com vários nós formando um cluster gerenciado por um mestre que coordena tarefas relacionadas ao cluster, como escalonamento, programação ou atualização de aplicativos.

Serviços afetados não amplamente implantados

O problema de segurança de gravidade média está sendo rastreado como CVE-2020-8554 e foi relatado por Etienne Champetier da Anevia.

Ele pode ser explorado remotamente por invasores com permissões básicas de locatário (como criação ou edição de serviços e pods) sem interação do usuário como parte de ataques de baixa complexidade.

CVE-2020-8554 é uma falha de design que afeta todas as versões do Kubernetes, com clusters multilocatários que permitem aos locatários criar e atualizar serviços e pods, sendo os mais vulneráveis ​​a ataques.

“Se um invasor potencial já puder criar ou editar serviços e pods, ele poderá interceptar o tráfego de outros pods (ou nós) no cluster”, explicou Tim Allclair, engenheiro de software que trabalha na segurança do Kubernetes na Apple, em um comunicado de segurança publicado na segunda-feira.

“Se você criar um serviço com um IP externo arbitrário, o tráfego para esse IP externo de dentro do cluster será roteado para esse serviço”, acrescentou Allclair . “Isso permite que um invasor com permissão para criar um serviço com um IP externo intercepte o tráfego para qualquer IP de destino.”

Felizmente, a vulnerabilidade deve afetar um pequeno número de implantações do Kubernetes, visto que os serviços de IP externo não são amplamente usados ​​em clusters multilocatários e não é recomendado conceder aos usuários locatários permissões de serviço / status de patch para IPs do LoadBalancer.

Como bloquear exploits CVE-2020-8554

Como a equipe de desenvolvimento do Kubernetes ainda não forneceu uma atualização de segurança para resolver esse problema, os administradores são aconselhados a atenuar o CVE-2020-8554 restringindo o acesso aos recursos vulneráveis.

Você pode usar um contêiner de webhook de admissão para restringir o uso de IP externo – o código-fonte e as instruções de implantação estão disponíveis aqui .https://7d662b452095a6fd8cfef766043bb940.safeframe.googlesyndication.com/safeframe/1-0-37/html/container.html

IPs externos também podem ser restritos com a ajuda do controlador de política Open Policy Agent Gatekeeper para Kubernetes usando restrições e modelos disponíveis aqui .

As medidas de mitigação para IPs do LoadBalancer não são fornecidas, pois a configuração recomendada não é vulnerável, mas, se houver restrições, as recomendações de IP externo também se aplicam aos IPs do LoadBalancer.

Para detectar ataques que tentam explorar esta vulnerabilidade, você deve auditar manualmente o uso de IP externo em clusters multilocatários usando os recursos vulneráveis.

“Os serviços ExternalIP não são amplamente usados, então recomendamos auditar manualmente qualquer uso de IP externo”, disse Allclair. “Os usuários não devem corrigir o status do serviço, portanto, eventos de auditoria para solicitações de status do serviço de patch autenticados para um usuário podem ser suspeitos.”

Fonte: https://www.bleepingcomputer.com/