44134 - Pentesting Tiller (Helm)
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
Enumerazione
Se puoi enumerare i pod e/o i servizi di diversi namespace, elenca e cerca quelli con "tiller" nel loro nome:
Esempi:
Potresti anche provare a trovare questo servizio controllando la porta 44134:
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:
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.
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.
Last updated