A Kubernetes klaszter megtörése Helm v2 tiller segítségével

A Kubernetes klaszter megtörése Helm v2 tiller segítségével

A Helm — csomagkezelő Kuberneteshez, valami hasonló apt-get az Ubuntu számára. Ebben a jegyzetben az előző helm verziót (v2) fogjuk megnézni, amelynek alapértelmezett szolgáltatása a tiller, amely lehetővé teszi a klaszterhez való hozzáférést.

Készítsük elő a klasztert, ehhez futtassuk a parancsot:

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

A Kubernetes klaszter megtörése Helm v2 tiller segítségével

Demonstráció

  • Ha semmit nem állítunk be külön, a helm v2 elindít egy tiller szolgáltatást, amelynek teljes adminisztrátori jogosultságai vannak a klaszterhez.
  • A telepítés után a namespace-ben kube-system egy gomb, amely lehetővé teszi a proxy használatának aktiválását és deaktálását, valamint az állapot ellenőrzését. A Private Network funkció tesztelése csak az amerikai Firefox asztali verziójú felhasználók számára érhető el. A tesztelés során a szolgáltatás ingyenesen áll rendelkezésre, de a végső szolgáltatás valószínűleg tiller-deploy, valamint megnyílik a 44134-es port, amely a 0.0.0.0-hoz van kötve. Ezt a telnet segítségével ellenőrizhetjük.

$ telnet tiller-deploy.kube-system 44134

A Kubernetes klaszter megtörése Helm v2 tiller segítségével

  • Most csatlakozhatunk a tiller szolgáltatáshoz. A helm binárisát fogjuk használni a tiller szolgáltatással való kommunikációhoz:

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

A Kubernetes klaszter megtörése Helm v2 tiller segítségével

  • Próbáljuk meg lekérdezni a Kubernetes klaszter titkait a namespace-ből kube-system:

$ kubectl get secrets -n kube-system

A Kubernetes klaszter megtörése Helm v2 tiller segítségével

  • Most létrehozhatjuk a saját chartunkat, amelyben létrehozunk egy adminisztrátori jogokkal rendelkező szerepet, és ezt a szerepet hozzárendeljük az alapértelmezett szolgáltatási fióknak. Ennek a szolgáltatási fióknak a tokenjét használva teljes hozzáférést kaptunk a klaszterünkhöz.

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

A Kubernetes klaszter megtörése Helm v2 tiller segítségével

  • Most, hogy a pwnchart telepítve van, az alapértelmezett szolgáltatási fióknak teljes adminisztrátori hozzáférése van. Ellenőrizzük újra a titkok lekérdezését kube-system

$ kubectl get secrets -n kube-system

A Kubernetes klaszter megtörése Helm v2 tiller segítségével

A forgatókönyv sikeres végrehajtása attól függ, hogyan telepítették a tillert; néha az adminisztrátorok egy külön namespace-en más jogosultságokkal telepítik. A Helm 3 nem szenved ilyen sebezhetőségektől, mivel nem tartalmaz tillert.

Fordító megjegyzése: A hálózati politikák használata a forgalom kiszűrésére a klaszterben segít megvédeni az ilyen típusú sebezhetőségektől.

Forrás: habr.com

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster