GCP - Public Buckets Privilege Escalation
Buckets Privilege Escalation
यदि बकेट नीति ने “allUsers” या “allAuthenticatedUsers” को अपनी बकेट नीति में लिखने ( storage.buckets.setIamPolicy अनुमति)** की अनुमति दी,** तो कोई भी बकेट नीति को संशोधित कर सकता है और खुद को पूर्ण पहुंच दे सकता है।
Check Permissions
बकेट पर अनुमतियों की जांच करने के 2 तरीके हैं। पहला तरीका है https://www.googleapis.com/storage/v1/b/BUCKET_NAME/iam
पर अनुरोध करके या gsutil iam get gs://BUCKET_NAME
चलाकर उन्हें मांगना।
हालांकि, यदि आपके उपयोगकर्ता (संभवतः allUsers या allAuthenticatedUsers से संबंधित) के पास बकेट की iam नीति (storage.buckets.getIamPolicy) को पढ़ने की अनुमति नहीं है, तो यह काम नहीं करेगा।
दूसरा विकल्प जो हमेशा काम करेगा वह है बकेट के testPermissions एंडपॉइंट का उपयोग करना यह पता लगाने के लिए कि क्या आपके पास निर्दिष्ट अनुमति है, उदाहरण के लिए: https://www.googleapis.com/storage/v1/b/BUCKET_NAME/iam/testPermissions?permissions=storage.buckets.delete&permissions=storage.buckets.get&permissions=storage.buckets.getIamPolicy&permissions=storage.buckets.setIamPolicy&permissions=storage.buckets.update&permissions=storage.objects.create&permissions=storage.objects.delete&permissions=storage.objects.get&permissions=storage.objects.list&permissions=storage.objects.update
Escalating
Storage Admin
को allAuthenticatedUsers
को देने के लिए, इसे चलाना संभव है:
एक और हमला होगा बकेट को हटाना और इसे अपने खाते में फिर से बनाना ताकि स्वामित्व चुराया जा सके।
संदर्भ
Last updated