GCP - Sourcerepos Privesc
स्रोत रिपॉजिटरी
स्रोत रिपॉजिटरी के बारे में अधिक जानकारी के लिए देखें:
pageGCP - Source Repositories Enumsource.repos.get
source.repos.get
इस अनुमति के साथ रिपॉजिटरी को स्थानीय रूप से डाउनलोड करना संभव है:
source.repos.update
source.repos.update
इस अनुमति के साथ एक प्रमुख gcloud source repos clone <repo>
से क्लोन किए गए रिपॉजिटरी में कोड लिखने की क्षमता होगी। लेकिन ध्यान दें कि यह अनुमति कस्टम भूमिकाओं से जुड़ी नहीं हो सकती, इसलिए इसे निम्नलिखित भूमिकाओं के माध्यम से दी जानी चाहिए:
मालिक
संपादक
स्रोत रिपॉजिटरी प्रशासक (
roles/source.admin
)स्रोत रिपॉजिटरी लेखक (
roles/source.writer
)
केवल कोड लिखने के लिए एक सामान्य git push
कार्य करें।
source.repos.setIamPolicy
source.repos.setIamPolicy
इस अनुमति के साथ एक हमलावर खुद को पिछली अनुमतियों को प्रदान कर सकता है।
गुप्त एक्सेस
यदि हमलावर के पास टोकन संग्रहित किए गए गुप्तों तक पहुंच है, तो वह उन्हें चुरा सकेगा। एक गुप्त तक पहुंच के बारे में अधिक जानकारी के लिए देखें:
pageGCP - Secretmanager PrivescSSH कुंजियाँ जोड़ें
वेब कंसोल में Source Repository पर SSH कुंजियाँ जोड़ना संभव है। यह /v1/sshKeys:add
पर पोस्ट अनुरोध करता है और https://source.cloud.google.com/user/ssh_keys में कॉन्फ़िगर किया जा सकता है।
एक बार जब आपकी SSH कुंजी सेट हो जाए, तो आप रिपॉजिटरी तक पहुंच सकते हैं:
और फिर git
कमांड का उपयोग सामान्य रूप से करें।
मैन्युअल क्रेडेंशियल्स
स्रोत रिपॉजिटरी तक पहुंचने के लिए मैन्युअल क्रेडेंशियल्स बनाना संभव है:
पहले लिंक पर क्लिक करने पर यह आपको https://source.developers.google.com/auth/start?scopes=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fcloud-platform&state&authuser=3 पर निर्देशित करेगा
जिससे Google Cloud Development तक पहुंचने के लिए Oauth अधिकृति प्रॉम्प्ट आएगा। इसके लिए आपको या तो उपयोगकर्ता के क्रेडेंशियल्स की आवश्यकता होगी या फिर इसके लिए ब्राउज़र में खुली सत्र की आवश्यकता होगी।
यह आपको एक पृष्ठ पर भेजेगा जिसमें एक बैश स्क्रिप्ट है जिसे निष्पादित करने और $HOME/.gitcookies
में एक git कुकी कॉन्फ़िगर करने के लिए
स्क्रिप्ट को निष्पादित करने के बाद आप git clone, push... का उपयोग कर सकते हैं और यह काम करेगा।
source.repos.updateProjectConfig
source.repos.updateProjectConfig
इस अनुमति के साथ स्रोत रिपॉजिटरीज की डिफ़ॉल्ट सुरक्षा को अक्षम करना संभव है ताकि निजी कुंजीयों से युक्त कोड अपलोड न किया जाए:
आप एक विभिन्न पब/सब विषय को कॉन्फ़िगर कर सकते हैं या फिर पूरी तरह से इसे अक्षम कर सकते हैं:
Last updated