GCP - Cloud Functions Enum
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Google Cloud Functions आपके कोड को होस्ट करने के लिए डिज़ाइन किए गए हैं, जो घटनाओं के जवाब में निष्पादित होता है, बिना एक होस्ट ऑपरेटिंग सिस्टम के प्रबंधन की आवश्यकता के। इसके अतिरिक्त, ये फ़ंक्शन पर्यावरण चर के भंडारण का समर्थन करते हैं, जिसका उपयोग कोड कर सकता है।
Cloud Functions कोड GCP Storage में संग्रहीत होता है। इसलिए, GCP में बकेट पर पढ़ने की पहुंच रखने वाला कोई भी व्यक्ति Cloud Functions कोड को पढ़ सकेगा। कोड एक बकेट में निम्नलिखित में से एक की तरह संग्रहीत होता है:
gcf-sources-<number>-<region>/<function-name>-<uuid>/version-<n>/function-source.zip
gcf-v2-sources-<number>-<region>/<function-name>function-source.zip
उदाहरण के लिए:
gcf-sources-645468741258-us-central1/function-1-003dcbdf-32e1-430f-a5ff-785a6e238c76/version-4/function-source.zip
Cloud Function को संग्रहीत करने वाले बकेट पर पढ़ने के अधिकार रखने वाला कोई भी उपयोगकर्ता निष्पादित कोड को पढ़ सकता है।
यदि क्लाउड फ़ंक्शन इस तरह से कॉन्फ़िगर किया गया है कि निष्पादित Docker कंटेनर प्रोजेक्ट के अंदर एक Artifact Registry रिपॉजिटरी के अंदर संग्रहीत होता है, तो रिपॉजिटरी पर पढ़ने की पहुंच रखने वाला कोई भी व्यक्ति छवि डाउनलोड कर सकेगा और स्रोत कोड की जांच कर सकेगा। अधिक जानकारी के लिए देखें:
GCP - Artifact Registry Enumयदि निर्दिष्ट नहीं किया गया है, तो डिफ़ॉल्ट रूप से App Engine Default Service Account के साथ प्रोजेक्ट पर संपादक अनुमतियाँ Cloud Function से जुड़ी होंगी।
जब एक Cloud Function बनाई जाती है, तो trigger को निर्दिष्ट करना आवश्यक है। एक सामान्य ट्रिगर HTTPS है, यह एक URL बनाएगा जहां फ़ंक्शन को वेब ब्राउज़िंग के माध्यम से ट्रिगर किया जा सकता है। अन्य ट्रिगर्स हैं pub/sub, Storage, Filestore...
URL प्रारूप है https://<region>-<project-gcp-name>.cloudfunctions.net/<func_name>
जब HTTPS ट्रिगर का उपयोग किया जाता है, तो यह भी संकेत दिया जाता है कि कॉलर को फ़ंक्शन को कॉल करने के लिए IAM प्राधिकरण की आवश्यकता है या यदि कोई भी इसे केवल कॉल कर सकता है:
कोड /workspace
फ़ोल्डर के अंदर डाउनलोड किया जाता है जिसमें फ़ाइलों के वही फ़ाइल नाम होते हैं जो Cloud Function में फ़ाइलों के होते हैं और इसे उपयोगकर्ता www-data
के साथ निष्पादित किया जाता है।
डिस्क पढ़ने के लिए केवल माउंट नहीं की गई है।
अगली पृष्ठ पर, आप देख सकते हैं कि कैसे क्लाउड फ़ंक्शन अनुमतियों का दुरुपयोग करके विशेषाधिकार बढ़ाए जा सकते हैं:
GCP - Cloudfunctions PrivescAWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE) GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE)