GCP - Public Buckets Privilege Escalation
बकेट्स विशेषाधिकार वृद्धि
यदि बकेट नीति ने “allUsers” या “allAuthenticatedUsers” को उनकी बकेट नीति में लिखने (storage.buckets.setIamPolicy अनुमति)** की अनुमति दी,** तो कोई भी बकेट नीति को संशोधित कर सकता है और खुद को पूर्ण पहुंच दे सकता है।
अनुमतियों की जांच करें
बकेट पर अनुमतियों की जांच करने के 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
वृद्धि करना
Storage Admin
को allAuthenticatedUsers
को देने के लिए यह चलाना संभव है:
Another attack would be to बकेट को हटाना और इसे अपने खाते में फिर से बनाना ताकि स्वामित्व चुराया जा सके.
References
Last updated