GCP - Sourcerepos Privesc
Source Repositories
Source Repositories के बारे में अधिक जानकारी के लिए देखें:
source.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
इस अनुमति के साथ एक हमलावर अपने लिए पिछले अनुमतियों को प्रदान कर सकता है।
Secret access
यदि हमलावर के पास गुप्तों तक पहुंच है जहाँ टोकन संग्रहीत हैं, तो वह उन्हें चुरा सकेगा। गुप्त तक पहुँचने के तरीके के बारे में अधिक जानकारी के लिए देखें:
Add SSH keys
यह 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 पर ले जाया जाएगा।
यह Oauth प्राधिकरण प्रॉम्प्ट को प्रदर्शित करेगा ताकि Google Cloud Development तक पहुँच प्रदान की जा सके। इसलिए आपको या तो उपयोगकर्ता के क्रेडेंशियल्स की आवश्यकता होगी या इसके लिए ब्राउज़र में एक खुला सत्र होना चाहिए।
यह आपको एक पृष्ठ पर भेजेगा जिसमें एक bash स्क्रिप्ट निष्पादित करने और $HOME/.gitcookies
में एक git कुकी कॉन्फ़िगर करने के लिए है।
स्क्रिप्ट को निष्पादित करने के बाद आप git clone, push... का उपयोग कर सकते हैं और यह काम करेगा।
source.repos.updateProjectConfig
source.repos.updateProjectConfig
इस अनुमति के साथ, यह संभव है कि स्रोत रिपोजिटरीज़ की डिफ़ॉल्ट सुरक्षा को अक्षम किया जा सके ताकि प्राइवेट कीज़ वाले कोड को अपलोड न किया जा सके:
आप एक अलग pub/sub विषय को भी कॉन्फ़िगर कर सकते हैं या इसे पूरी तरह से बंद कर सकते हैं:
Last updated