GCP - Apikeys Privesc

Reading time: 4 minutes

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 का समर्थन करें

Apikeys

निम्नलिखित अनुमतियाँ API कुंजी बनाने और चुराने के लिए उपयोगी हैं, दस्तावेज़ से यह नोट करें: एक API कुंजी एक सरल एन्क्रिप्टेड स्ट्रिंग है जो किसी एप्लिकेशन की पहचान करती है बिना किसी प्रिंसिपल के। ये सार्वजनिक डेटा को गुमनाम रूप से एक्सेस करने के लिए उपयोगी हैं, और आपके प्रोजेक्ट के लिए कोटा और बिलिंग के लिए API अनुरोधों को संयुक्त करने के लिए उपयोग की जाती हैं।

इसलिए, एक API कुंजी के साथ आप उस कंपनी को आपके API के उपयोग के लिए भुगतान करवा सकते हैं, लेकिन आप विशेषाधिकारों को बढ़ाने में सक्षम नहीं होंगे।

API कुंजी के बारे में अधिक जानकारी के लिए देखें:

GCP - API Keys Enum

API कुंजी बनाने के अन्य तरीकों के लिए देखें:

GCP - Serviceusage Privesc

Brute Force API Key access

जैसा कि आप नहीं जानते होंगे कि प्रोजेक्ट में कौन से APIs सक्षम हैं या आपके द्वारा पाए गए API कुंजी पर लागू प्रतिबंध क्या हैं, यह दिलचस्प होगा कि आप उपकरण https://github.com/ozguralp/gmapsapiscanner चलाएँ और जांचें कि आप API कुंजी के साथ क्या एक्सेस कर सकते हैं।

apikeys.keys.create

यह अनुमति एक API कुंजी बनाने की अनुमति देती है:

bash
gcloud services api-keys create
Operation [operations/akmf.p7-[...]9] complete. Result: {
"@type":"type.googleapis.com/google.api.apikeys.v2.Key",
"createTime":"2022-01-26T12:23:06.281029Z",
"etag":"W/\"HOhA[...]==\"",
"keyString":"AIzaSy[...]oU",
"name":"projects/5[...]6/locations/global/keys/f707[...]e8",
"uid":"f707[...]e8",
"updateTime":"2022-01-26T12:23:06.378442Z"
}

आप एक स्क्रिप्ट पा सकते हैं जो एक vuln वातावरण के निर्माण, शोषण और सफाई को स्वचालित करती है यहाँ

caution

ध्यान दें कि डिफ़ॉल्ट रूप से उपयोगकर्ताओं को नए प्रोजेक्ट बनाने की अनुमति होती है और उन्हें नए प्रोजेक्ट पर Owner भूमिका दी जाती है। इसलिए एक उपयोगकर्ता एक प्रोजेक्ट बना सकता है और इस प्रोजेक्ट के अंदर एक API कुंजी बना सकता है

apikeys.keys.getKeyString , apikeys.keys.list

ये अनुमतियाँ सभी apiKeys की सूची बनाने और प्राप्त करने और कुंजी प्राप्त करने की अनुमति देती हैं:

bash
for  key  in  $(gcloud services api-keys list --uri); do
gcloud services api-keys get-key-string "$key"
done

आप एक स्क्रिप्ट पा सकते हैं जो एक vuln वातावरण के निर्माण, शोषण और सफाई को स्वचालित करती है यहाँ

apikeys.keys.undelete , apikeys.keys.list

ये अनुमतियाँ आपको हटाए गए api keys की सूची बनाने और पुनः उत्पन्न करने की अनुमति देती हैं। API कुंजी आउटपुट में दी जाती है जब undelete किया जाता है:

bash
gcloud services api-keys list --show-deleted
gcloud services api-keys undelete <key-uid>

अन्य कर्मचारियों को फ़िश करने के लिए आंतरिक OAuth एप्लिकेशन बनाएं

यह करने के लिए निम्नलिखित पृष्ठ की जांच करें, हालांकि यह क्रिया सेवा clientauthconfig से संबंधित है दस्तावेज़ों के अनुसार:

GWS - Google Platforms Phishing

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 का समर्थन करें