GCP - local privilege escalation ssh pivoting
इस परिदृश्य में हम मान रहे हैं कि आपने Compute Engine प्रोजेक्ट में एक VM के अंदर एक गैर विशेषाधिकार वाले खाते को समझौता किया है।
आश्चर्यजनक रूप से, आपके द्वारा समझौता किए गए कंप्यूट इंजन की GPC अनुमतियां आपको मशीन के अंदर स्थानीय रूप से विशेषाधिकार वृद्धि करने में मदद कर सकती हैं। हालांकि यह हमेशा एक क्लाउड वातावरण में बहुत सहायक नहीं होगा, यह जानना अच्छा है कि यह संभव है।
स्क्रिप्ट्स पढ़ें
कंप्यूट इंस्टेंसेस शायद वहां होते हैं ताकि वे अपने सर्विस अकाउंट्स के साथ क्रियाएं करने के लिए कुछ स्क्रिप्ट्स को निष्पादित करें।
चूंकि IAM बहुत विस्तृत है, एक खाते के पास किसी संसाधन पर पढ़ने/लिखने की अनुमतियां हो सकती हैं लेकिन सूची अनुमतियां नहीं।
इसका एक महान काल्पनिक उदाहरण एक कंप्यूट इंस्टेंस है जिसे instance82736-long-term-xyz-archive-0332893
नामक एक स्टोरेज बकेट में बैकअप पढ़ने/लिखने की अनुमति है।
कमांड लाइन से gsutil ls
चलाने पर कुछ भी नहीं आता है, क्योंकि सर्विस अकाउंट में storage.buckets.list
IAM अनुमति की कमी है। हालांकि, यदि आपने gsutil ls gs://instance82736-long-term-xyz-archive-0332893
चलाया तो आपको पूरी फाइल सिस्टम बैकअप मिल सकती है, जिससे आपको उन डेटा तक स्पष्ट-पाठ पहुंच मिल सकती है जिसकी आपके स्थानीय लिनक्स खाते में कमी है।
आप इस बकेट नाम को किसी स्क्रिप्ट के अंदर पा सकते हैं (bash, Python, Ruby... में)।
कस्टम मेटाडेटा
प्रशासक कस्टम मेटाडेटा को इंस्टेंस और प्रोजेक्ट स्तर पर जोड़ सकते हैं। यह बस एक तरीका है मनमाने कुंजी/मूल्य जोड़े को एक इंस्टेंस में पास करने का, और आमतौर पर पर्यावरण चर और स्टार्टअप/शटडाउन स्क्रिप्ट्स के लिए इस्तेमाल किया जाता है।
इसके अलावा, userdata जोड़ना संभव है, जो एक स्क्रिप्ट है जो हर बार निष्पादित की जाएगी जब मशीन शुरू या पुनः आरंभ की जाती है और जिसे मेटाडेटा एंडपॉइंट से भी पहुंचा जा सकता है।
अधिक जानकारी के लिए देखें:
IAM अनुमतियों का दुरुपयोग
निम्नलिखित प्रस्तावित अनुमतियों में से अधिकांश डिफ़ॉल्ट कंप्यूट SA को दी गई हैं, एकमात्र समस्या यह है कि डिफ़ॉल्ट एक्सेस स्कोप SA को उनका उपयोग करने से रोकता है। हालांकि, यदि cloud-platform
स्कोप सक्षम है या केवल compute
स्कोप सक्षम है, तो आप उनका दुरुपयोग कर सकते हैं।
निम्नलिखित अनुमतियों की जांच करें:
फाइल सिस्टम में कीज़ की खोज करें
जांचें कि क्या अन्य उपयोगकर्ता बॉक्स के अंदर gcloud में लॉगिन हैं और उन्होंने अपनी क्रेडेंशियल्स फाइल सिस्टम में छोड़ दी हैं:
ये सबसे दिलचस्प फाइलें हैं:
~/.config/gcloud/credentials.db
~/.config/gcloud/legacy_credentials/[ACCOUNT]/adc.json
~/.config/gcloud/legacy_credentials/[ACCOUNT]/.boto
~/.credentials.json
और API कीज़ के लिए regexes
संदर्भ
Last updated