GCP - local privilege escalation ssh pivoting
Tip
AWS हैकिंग सीखें और अभ्यास करें:
HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें:HackTricks Training GCP Red Team Expert (GRTE)
Azure हैकिंग सीखें और अभ्यास करें:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks का समर्थन करें
- सदस्यता योजनाओं की जांच करें!
- हमारे 💬 Discord समूह या टेलीग्राम समूह में शामिल हों या हमें Twitter 🐦 @hacktricks_live** पर फॉलो करें।**
- हैकिंग ट्रिक्स साझा करें, PRs को HackTricks और HackTricks Cloud गिटहब रिपोजिटरी में सबमिट करके।
इस परिदृश्य में हम यह मानेंगे कि आप Compute Engine प्रोजेक्ट के एक VM के अंदर एक गैर-प्रिविलेज्ड खाते से समझौता कर चुके हैं।
हैरत की बात है कि आपने जिस Compute Engine का समझौता किया है उसकी GPC permissions आपकी मदद कर सकती हैं कि आप मशीन के अंदर स्थानीय रूप से escalate privileges locally inside a machine कर सकें। यह हमेशा क्लाउड वातावरण में बहुत मददगार नहीं होगा, लेकिन यह जानना अच्छा है कि यह संभव है।
Read the scripts
Compute Instances संभवतः अपने service accounts के साथ कार्य करने के लिए कुछ स्क्रिप्ट्स execute करने के लिए मौजूद होते हैं।
चूँकि IAM काफी granular होता है, एक अकाउंट के पास किसी resource पर read/write अधिकार हो सकते हैं पर no list privileges हो सकते हैं।
इसका एक अच्छा काल्पनिक उदाहरण एक Compute Instance है जिसे instance82736-long-term-xyz-archive-0332893 नाम के storage bucket में बैकअप पढ़ने/लिखने की अनुमति है।
कमांड लाइन से gsutil ls चलाने पर कुछ भी नहीं लौटता, क्योंकि service account के पास storage.buckets.list IAM permission नहीं है। हालाँकि, यदि आप gsutil ls gs://instance82736-long-term-xyz-archive-0332893 चलाते हैं तो आप एक पूरा filesystem backup पा सकते हैं, जो आपको ऐसे डेटा का clear-text access दे सकता है जिसका आपका local Linux account उपयोग नहीं कर सकता।
आप यह bucket नाम किसी स्क्रिप्ट (bash, Python, Ruby…) के अंदर पा सकते हैं।
Custom Metadata
प्रशासक custom metadata को instance और project level पर जोड़ सकते हैं। यह बस instances में arbitrary key/value pairs पास करने का एक तरीका है, और आमतौर पर environment variables और startup/shutdown scripts के लिए उपयोग किया जाता है।
इसके अलावा, यह संभव है कि आप userdata जोड़ें, जो एक स्क्रिप्ट होती है जो मशीन के हर बार start या restart होने पर executed everytime होती है और जिसे accessed from the metadata endpoint also.
For more info check:
Abusing IAM permissions
नीचे दिए गए अधिकांश permissions सामान्यतः default Compute SA को दिए जाते हैं, समस्या यह है कि default access scope उन्हें उपयोग करने से रोकता है। हालाँकि, यदि cloud-platform scope सक्षम है या केवल compute scope सक्षम है, तो आप उनका दुरुपयोग कर पाएँगे।
Check the following permissions:
- compute.instances.osLogin
- compute.instances.osAdminLogin
- compute.projects.setCommonInstanceMetadata
- compute.instances.setMetadata
- compute.instances.setIamPolicy
Search for Keys in the filesystem
जाँचें कि क्या अन्य उपयोगकर्ताओं ने box के अंदर gcloud में लॉगिन किया है और अपनी credentials फ़ाइल सिस्टम में छोड़ी हैं:
फ़ाइल सिस्टम में gcloud credentials खोजें
``` sudo find / -name "gcloud" ```ये सबसे दिलचस्प फाइलें:
~/.config/gcloud/credentials.db~/.config/gcloud/legacy_credentials/[ACCOUNT]/adc.json~/.config/gcloud/legacy_credentials/[ACCOUNT]/.boto~/.credentials.json
अधिक API Keys regexes
Grep patterns for GCP credentials and keys
```bash TARGET_DIR="/path/to/whatever"Service account keys
grep -Pzr “(?s){[^{}]?service_account[^{}]?private_key.*?}”
“$TARGET_DIR”
Legacy GCP creds
grep -Pzr “(?s){[^{}]?client_id[^{}]?client_secret.*?}”
“$TARGET_DIR”
Google API keys
grep -Pr “AIza[a-zA-Z0-9\-_]{35}”
“$TARGET_DIR”
Google OAuth tokens
grep -Pr “ya29.[a-zA-Z0-9_-]{100,200}”
“$TARGET_DIR”
Generic SSH keys
grep -Pzr “(?s)—–BEGIN[ A-Z]?PRIVATE KEY[a-zA-Z0-9/+=\n-]?END[ A-Z]*?PRIVATE KEY—–”
“$TARGET_DIR”
Signed storage URLs
grep -Pir “storage.googleapis.com.*?Goog-Signature=[a-f0-9]+”
“$TARGET_DIR”
Signed policy documents in HTML
grep -Pzr ‘(?s)<form action.?googleapis.com.?name=“signature” value=“.*?”>’
“$TARGET_DIR”
</details>
## संदर्भ
- [https://about.gitlab.com/blog/2020/02/12/plundering-gcp-escalating-privileges-in-google-cloud-platform/](https://about.gitlab.com/blog/2020/02/12/plundering-gcp-escalating-privileges-in-google-cloud-platform/)
> [!TIP]
> AWS हैकिंग सीखें और अभ्यास करें:<img src="../../../../../images/arte.png" alt="" style="width:auto;height:24px;vertical-align:middle;">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="../../../../../images/arte.png" alt="" style="width:auto;height:24px;vertical-align:middle;">\
> GCP हैकिंग सीखें और अभ्यास करें: <img src="../../../../../images/grte.png" alt="" style="width:auto;height:24px;vertical-align:middle;">[**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)<img src="../../../../../images/grte.png" alt="" style="width:auto;height:24px;vertical-align:middle;">
> Azure हैकिंग सीखें और अभ्यास करें: <img src="../../../../../images/azrte.png" alt="" style="width:auto;height:24px;vertical-align:middle;">[**HackTricks Training Azure Red Team Expert (AzRTE)**](https://training.hacktricks.xyz/courses/azrte)<img src="../../../../../images/azrte.png" alt="" style="width:auto;height:24px;vertical-align:middle;">
>
> <details>
>
> <summary>HackTricks का समर्थन करें</summary>
>
> - [**सदस्यता योजनाओं**](https://github.com/sponsors/carlospolop) की जांच करें!
> - **हमारे** 💬 [**Discord समूह**](https://discord.gg/hRep4RUj7f) या [**टेलीग्राम समूह**](https://t.me/peass) में शामिल हों या **हमें** **Twitter** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)** पर फॉलो करें।**
> - **हैकिंग ट्रिक्स साझा करें, PRs को** [**HackTricks**](https://github.com/carlospolop/hacktricks) और [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) गिटहब रिपोजिटरी में सबमिट करके।
>
> </details>
HackTricks Cloud

