GCP - Orgpolicy Privesc

Tip

AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE) Azure हैकिंग सीखें और अभ्यास करें: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks का समर्थन करें

orgpolicy

orgpolicy.policy.set

orgpolicy.policy.set का उपयोग करने वाला attacker संगठनात्मक policies को बदल सकता है, जिससे वह उन कुछ प्रतिबंधों को हटा सकता है जो विशेष operations में बाधा डालते हैं। उदाहरण के लिए, constraint appengine.disableCodeDownload सामान्यतः App Engine source code के डाउनलोड को रोकता है। हालांकि, orgpolicy.policy.set का उपयोग करके attacker इस constraint को deactivate कर सकता है और इस प्रकार protected होने के बावजूद source code को डाउनलोड करने की पहुँच प्राप्त कर सकता है।

org policy की जानकारी प्राप्त करें और enforcement को अक्षम करें ```bash # Get info gcloud resource-manager org-policies describe [--folder | --organization | --project ]

Disable

gcloud resource-manager org-policies disable-enforce [–folder | –organization | –project ]

</details>

इस विधि के लिए एक python स्क्रिप्ट [यहाँ](https://github.com/RhinoSecurityLabs/GCP-IAM-Privilege-Escalation/blob/master/ExploitScripts/orgpolicy.policy.set.py) मिल सकती है।

### `orgpolicy.policy.set`, `iam.serviceAccounts.actAs`

आमतौर पर किसी अलग project के service account को किसी resource से attach करना संभव नहीं होता क्योंकि एक policy constraint लागू होती है जिसका नाम **`iam.disableCrossProjectServiceAccountUsage`** है जो इस क्रिया को रोकता है।

यह सत्यापित किया जा सकता है कि यह constraint लागू है या नहीं, निम्नलिखित command चलाकर:

<details>
<summary>cross-project service account constraint सत्यापित करें</summary>
```bash
gcloud resource-manager org-policies describe \
constraints/iam.disableCrossProjectServiceAccountUsage \
--project=<project-id> \
--effective

booleanPolicy:
enforced: true
constraint: constraints/iam.disableCrossProjectServiceAccountUsage

यह हमलावर को अनुमति iam.serviceAccounts.actAs का दुरुपयोग करके किसी अन्य प्रोजेक्ट के service account के रूप में छद्मवेश धारण करने से रोकता है, बिना अतिरिक्त आवश्यक इन्फ्रा अनुमतियों के (उदाहरण के लिए नया VM शुरू करने के लिए), जो कि privilege escalation का कारण बन सकता है।

हालाँकि, जिसके पास permissions orgpolicy.policy.set हैं वह इस प्रतिबंध को बायपास कर सकता है iam.disableServiceAccountProjectWideAccess constraint को disable करके। इससे हमलावर किसी अन्य प्रोजेक्ट के service account को अपने प्रोजेक्ट के किसी resource से जोड़ सकता है, जिससे प्रभावी रूप से उसके privileges बढ़ जाते हैं।

क्रॉस-प्रोजेक्ट सर्विस अकाउंट प्रतिबंध अक्षम करें ```bash gcloud resource-manager org-policies disable-enforce \ iam.disableCrossProjectServiceAccountUsage \ --project= ```

संदर्भ

Tip

AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE) Azure हैकिंग सीखें और अभ्यास करें: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks का समर्थन करें