GCP - Artifact Registry Privesc
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)
Artifact Registry के बारे में अधिक जानकारी के लिए देखें:
GCP - Artifact Registry Enumइस अनुमति के साथ एक हमलावर नए संस्करणों को अपलोड कर सकता है जिनमें दुर्भावनापूर्ण कोड जैसे Docker छवियाँ शामिल हैं:
यह जांचा गया कि एक नया दुर्भावनापूर्ण डॉकर इमेज उसी नाम और टैग के साथ अपलोड करना संभव है जो पहले से मौजूद है, इसलिए पुराना टैग खो देगा और अगली बार जब उस टैग के साथ इमेज डाउनलोड की जाएगी तो दुर्भावनापूर्ण इमेज डाउनलोड होगी।
यह संभव नहीं है कि आप उसी संस्करण के साथ एक पायथन पुस्तकालय अपलोड करें जो पहले से मौजूद है, लेकिन आप बड़े संस्करण अपलोड कर सकते हैं (या यदि यह काम करता है तो संस्करण के अंत में एक अतिरिक्त .0
जोड़ सकते हैं -हालांकि पायथन में नहीं-), या आप अंतिम संस्करण को हटा सकते हैं और एक नया अपलोड कर सकते हैं (आवश्यक artifactregistry.versions.delete
):**
artifactregistry.repositories.downloadArtifacts
इस अनुमति के साथ आप कलाकृतियों को डाउनलोड कर सकते हैं और संवेदनशील जानकारी और कमजोरियों के लिए खोज कर सकते हैं।
एक Docker छवि डाउनलोड करें:
एक python पुस्तकालय डाउनलोड करें:
यदि एक दूरस्थ और एक मानक रजिस्ट्री को एक आभासी में मिलाया जाता है और एक पैकेज दोनों में मौजूद है, तो क्या होता है? इस पृष्ठ को देखें:
artifactregistry.tags.delete
, artifactregistry.versions.delete
, artifactregistry.packages.delete
, (artifactregistry.repositories.get
, artifactregistry.tags.get
, artifactregistry.tags.list
)रजिस्ट्री से कलाकृतियों को हटाएं, जैसे कि डॉकर छवियाँ:
artifactregistry.repositories.delete
एक पूर्ण रिपॉजिटरी को हटाएं (भले ही इसमें सामग्री हो):
artifactregistry.repositories.setIamPolicy
इस अनुमति के साथ एक हमलावर खुद को कुछ पहले उल्लेखित रिपॉजिटरी हमलों को करने की अनुमति दे सकता है।
Cloud Functions
जब एक Cloud Function बनाई जाती है, तो प्रोजेक्ट के Artifact Registry में एक नया डॉकर इमेज पुश किया जाता है। मैंने इमेज को एक नए के साथ संशोधित करने की कोशिश की, और यहां तक कि वर्तमान इमेज (और cache
इमेज) को हटाने की कोशिश की, लेकिन कुछ भी नहीं बदला, क्लाउड फ़ंक्शन काम करता रहा। इसलिए, शायद यह Race Condition हमले का दुरुपयोग करना संभव हो सकता है जैसे कि बाल्टी के साथ डॉकर कंटेनर को बदलने के लिए, लेकिन सिर्फ संग्रहीत इमेज को संशोधित करना क्लाउड फ़ंक्शन को समझौता करने के लिए संभव नहीं है।
App Engine
हालांकि App Engine Artifact Registry के अंदर डॉकर इमेज बनाता है। यह परीक्षण किया गया कि भले ही आप इस सेवा के अंदर इमेज को संशोधित करें और App Engine इंस्टेंस को हटा दें (ताकि एक नया तैनात किया जाए) तो कार्यक्रमित कोड नहीं बदलता। यह संभव हो सकता है कि बाल्टियों के साथ Race Condition हमले को करने पर कार्यान्वित कोड को ओवरराइट करना संभव हो सकता है, लेकिन इसका परीक्षण नहीं किया गया।
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)