GCP - Orgpolicy Privesc
Tip
Lernen & üben Sie AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Lernen & üben Sie Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Unterstützen Sie HackTricks
- Überprüfen Sie die Abonnementpläne!
- Treten Sie der 💬 Discord-Gruppe oder der Telegram-Gruppe bei oder folgen Sie uns auf Twitter 🐦 @hacktricks_live.
- Teilen Sie Hacking-Tricks, indem Sie PRs an die HackTricks und HackTricks Cloud GitHub-Repos senden.
orgpolicy
orgpolicy.policy.set
Ein Angreifer, der orgpolicy.policy.set ausnutzt, kann Organisationsrichtlinien manipulieren, wodurch er bestimmte Beschränkungen entfernen kann, die bestimmte Vorgänge behindern. Zum Beispiel verhindert die Einschränkung appengine.disableCodeDownload normalerweise das Herunterladen von App Engine-Quellcode. Durch die Nutzung von orgpolicy.policy.set kann ein Angreifer diese Einschränkung jedoch deaktivieren und sich so Zugriff verschaffen, um den Quellcode herunterzuladen, obwohl dieser ursprünglich geschützt war.
Org-Policy-Informationen abrufen und Durchsetzung deaktivieren
```bash # Get info gcloud resource-manager org-policies describeDisable
gcloud resource-manager org-policies disable-enforce
</details>
Ein Python-Skript für diese Methode ist [hier](https://github.com/RhinoSecurityLabs/GCP-IAM-Privilege-Escalation/blob/master/ExploitScripts/orgpolicy.policy.set.py) zu finden.
### `orgpolicy.policy.set`, `iam.serviceAccounts.actAs`
Normalerweise ist es nicht möglich, einen Service Account aus einem anderen Projekt an eine Ressource anzuhängen, da eine Richtlinienbeschränkung namens **`iam.disableCrossProjectServiceAccountUsage`** dies verhindert.
Sie können überprüfen, ob diese Einschränkung durchgesetzt ist, indem Sie den folgenden Befehl ausführen:
<details>
<summary>Einschränkung für projektübergreifende Service Account-Nutzung überprüfen</summary>
```bash
gcloud resource-manager org-policies describe \
constraints/iam.disableCrossProjectServiceAccountUsage \
--project=<project-id> \
--effective
booleanPolicy:
enforced: true
constraint: constraints/iam.disableCrossProjectServiceAccountUsage
Dies verhindert, dass ein attacker die Berechtigung iam.serviceAccounts.actAs missbraucht, um ein service account aus einem anderen Projekt zu impersonieren, ohne die zusätzlich erforderlichen Infrastruktur-Berechtigungen (z. B. zum Starten einer neuen VM), was zu privilege escalation führen könnte.
Dennoch kann ein attacker mit der Berechtigung orgpolicy.policy.set diese Einschränkung umgehen, indem er die Constraint iam.disableServiceAccountProjectWideAccess deaktiviert. Dadurch kann der attacker ein service account aus einem anderen Projekt an eine Ressource in seinem eigenen Projekt anhängen und so effektiv seine Privilegien erhöhen.
Disable cross-project service account constraint
```bash gcloud resource-manager org-policies disable-enforce \ iam.disableCrossProjectServiceAccountUsage \ --project=Referenzen
Tip
Lernen & üben Sie AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Lernen & üben Sie Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Unterstützen Sie HackTricks
- Überprüfen Sie die Abonnementpläne!
- Treten Sie der 💬 Discord-Gruppe oder der Telegram-Gruppe bei oder folgen Sie uns auf Twitter 🐦 @hacktricks_live.
- Teilen Sie Hacking-Tricks, indem Sie PRs an die HackTricks und HackTricks Cloud GitHub-Repos senden.
HackTricks Cloud

