Spargem clusterul Kubernetes prin Helm v2 tiller

Spargem clusterul Kubernetes prin Helm v2 tiller

Helm — un manager de pachete pentru Kubernetes, ceva similar cu apt-get Ubuntu. În această notă, vom vedea versiunea anterioară a helm (v2) cu serviciul tiller, instalat implicit, prin care vom accesa clusterul.

Să pregătim clusterul, pentru aceasta vom rula comanda:

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

Spargem clusterul Kubernetes prin Helm v2 tiller

Demonstratie

  • Dacă nu se configurează nimic suplimentar, helm v2 pornește serviciul tiller, care are RBAC cu drepturi complete de administrator pentru cluster.
  • După instalare în namespace-ul kube-system apare tiller-deploy, de asemenea, se deschide portul 44134, legat de 0.0.0.0. Acest lucru se poate verifica folosind telnet.

$ telnet tiller-deploy.kube-system 44134

Spargem clusterul Kubernetes prin Helm v2 tiller

  • Acum ne putem conecta la serviciul tiller. Vom folosi binarul helm pentru a desfășura operațiuni în comunicarea cu serviciul tiller:

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

Spargem clusterul Kubernetes prin Helm v2 tiller

  • Vom încerca să obținem secretele clusterului Kubernetes din namespace-ul kube-system:

$ kubectl get secrets -n kube-system

Spargem clusterul Kubernetes prin Helm v2 tiller

  • Acum putem crea propriul nostru chart, în care vom crea un rol cu drepturi de administrator și vom aloca acest rol contului de serviciu implicit. Folosind tokenul de la acest cont de serviciu, am obținut acces complet în clusterul nostru.

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

Spargem clusterul Kubernetes prin Helm v2 tiller

  • Acum, când pwnchart a fost desfășurat, contul de serviciu implicit are acces administrativ complet. Să verificăm din nou obținerea secretelor din kube-system

kubectl get secrets -n kube-system

Spargem clusterul Kubernetes prin Helm v2 tiller

Executarea cu succes a acestui scenariu depinde de modul în care a fost desfășurat tiller, uneori, administratorii îl desfășoară în namespace-uri separate cu alte privilegii. Helm 3 nu este expus acestor vulnerabilități, deoarece nu include tiller.

Nota translatorului: utilizarea politicilor de rețea pentru filtrarea traficului în cluster ajută la protejarea împotriva vulnerabilităților de acest tip.

Sursa: habr.com

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster