Destruindo o cluster Kubernetes através de Helm v2 tiller

Destruindo o cluster Kubernetes através de Helm v2 tiller

Helm — gerenciador de pacotes para Kubernetes, algo como apt-get para Ubuntu. Neste artigo, veremos a versão anterior do Helm (v2) com o serviço Tiller instalado por padrão, através do qual teremos acesso ao cluster.

Prepararemos o cluster, para isso, executaremos o comando:

kubectl run --rm --restart=Never -it --image=madhuakula/k8s-goat-helm-tiller -- bash

Destruindo o cluster Kubernetes através de Helm v2 tiller

Demonstração

  • Se nada for configurado adicionalmente, o Helm v2 inicia o serviço Tiller, que possui RBAC com permissões totais de administrador do cluster.
  • Após a instalação no namespace kube-system aparece tiller-deploy, além disso, uma porta 44134 é aberta, vinculada a 0.0.0.0. Isso pode ser verificado com o telnet.

$ telnet tiller-deploy.kube-system 44134

Destruindo o cluster Kubernetes através de Helm v2 tiller

  • Agora podemos nos conectar ao serviço Tiller. Usaremos o binário Helm para realizar operações ao interagir com o serviço Tiller:

$ helm --host tiller-deploy.kube-system:44134 version

Destruindo o cluster Kubernetes através de Helm v2 tiller

  • Vamos tentar obter os segredos do cluster Kubernetes do namespace kube-system:

$ kubectl get secrets -n kube-system

Destruindo o cluster Kubernetes através de Helm v2 tiller

  • Agora podemos criar nosso próprio chart, onde criaremos um papel de administrador e atribuiremos esse papel à conta de serviço padrão. Usando o token dessa conta de serviço, obtivemos acesso total ao nosso cluster.

$ helm --host tiller-deploy.kube-system:44134 install /pwnchart

Destruindo o cluster Kubernetes através de Helm v2 tiller

  • Agora que pwnchart está implantado, a conta de serviço padrão tem acesso administrativo completo. Vamos verificar novamente a obtenção de segredos de kube-system

$ kubectl get secrets -n kube-system

Destruindo o cluster Kubernetes através de Helm v2 tiller

A execução bem-sucedida deste script depende de como o Tiller foi implantado, às vezes os administradores o implantam em um namespace separado com outras permissões. O Helm 3 não está sujeito a essas vulnerabilidades, pois não possui o Tiller.

Nota do tradutor: o uso de políticas de rede para filtrar o tráfego no cluster ajuda a proteger contra vulnerabilidades desse tipo.

Fonte: habr.com

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster