mirror of
https://github.com/HackTricks-wiki/hacktricks-cloud.git
synced 2025-12-28 13:43:24 -08:00
Translated ['src/pentesting-cloud/gcp-security/gcp-privilege-escalation/
This commit is contained in:
@@ -4,30 +4,30 @@
|
||||
|
||||
## cloudbuild
|
||||
|
||||
Para más información sobre Cloud Build consulta:
|
||||
Para más información sobre Cloud Build, consulta:
|
||||
|
||||
{{#ref}}
|
||||
../gcp-services/gcp-cloud-build-enum.md
|
||||
{{#endref}}
|
||||
|
||||
### `cloudbuild.builds.create`
|
||||
### `cloudbuild.builds.create`, `iam.serviceAccounts.actAs`
|
||||
|
||||
Con este permiso puedes **enviar un cloud build**. La máquina de cloudbuild tendrá en su sistema de archivos por **defecto un token de la Cuenta de Servicio de cloudbuild**: `<PROJECT_NUMBER>@cloudbuild.gserviceaccount.com`. Sin embargo, puedes **indicar cualquier cuenta de servicio dentro del proyecto** en la configuración de cloudbuild.\
|
||||
Por lo tanto, puedes hacer que la máquina exfiltre el token a tu servidor o **obtener un shell reverso dentro de ella y conseguir el token** (el archivo que contiene el token puede cambiar).
|
||||
Con este permiso puedes **enviar un cloud build**. La máquina de cloudbuild tendrá en su sistema de archivos por **defecto un token de la Service Account de cloudbuild**: `<PROJECT_NUMBER>@cloudbuild.gserviceaccount.com`. Sin embargo, puedes **indicar cualquier service account dentro del proyecto** en la configuración de cloudbuild.\
|
||||
Por lo tanto, puedes hacer que la máquina exfiltre el token a tu servidor o **obtener un reverse shell dentro de ella y conseguir el token** (el archivo que contiene el token puede cambiar).
|
||||
|
||||
Puedes encontrar el script de explotación original [**aquí en GitHub**](https://github.com/RhinoSecurityLabs/GCP-IAM-Privilege-Escalation/blob/master/ExploitScripts/cloudbuild.builds.create.py) (pero la ubicación de donde toma el token no funcionó para mí). Por lo tanto, consulta un script para automatizar la [**creación, explotación y limpieza de un entorno vulnerable aquí**](https://github.com/carlospolop/gcp_privesc_scripts/blob/main/tests/f-cloudbuild.builds.create.sh) y un script de python para obtener un shell reverso dentro de la máquina de cloudbuild y [**robarlo aquí**](https://github.com/carlospolop/gcp_privesc_scripts/blob/main/tests/f-cloudbuild.builds.create.py) (en el código puedes encontrar cómo especificar otras cuentas de servicio)**.**
|
||||
Puedes encontrar el script de explotación original [**aquí en GitHub**](https://github.com/RhinoSecurityLabs/GCP-IAM-Privilege-Escalation/blob/master/ExploitScripts/cloudbuild.builds.create.py) (pero la ubicación de donde toma el token no funcionó para mí). Por lo tanto, consulta un script para automatizar la [**creación, explotación y limpieza de un entorno vulnerable aquí**](https://github.com/carlospolop/gcp_privesc_scripts/blob/main/tests/f-cloudbuild.builds.create.sh) y un script de python para obtener un reverse shell dentro de la máquina de cloudbuild y [**robarlo aquí**](https://github.com/carlospolop/gcp_privesc_scripts/blob/main/tests/f-cloudbuild.builds.create.py) (en el código puedes encontrar cómo especificar otras service accounts)**.**
|
||||
|
||||
Para una explicación más detallada, visita [https://rhinosecuritylabs.com/gcp/iam-privilege-escalation-gcp-cloudbuild/](https://rhinosecuritylabs.com/gcp/iam-privilege-escalation-gcp-cloudbuild/)
|
||||
|
||||
### `cloudbuild.builds.update`
|
||||
|
||||
**Potencialmente** con este permiso podrás **actualizar un cloud build y simplemente robar el token de la cuenta de servicio** como se realizó con el permiso anterior (pero desafortunadamente en el momento de escribir esto no pude encontrar ninguna manera de llamar a esa API).
|
||||
**Potencialmente** con este permiso podrás **actualizar un cloud build y simplemente robar el token de la service account** como se realizó con el permiso anterior (pero desafortunadamente en el momento de escribir esto no pude encontrar ninguna manera de llamar a esa API).
|
||||
|
||||
TODO
|
||||
|
||||
### `cloudbuild.repositories.accessReadToken`
|
||||
|
||||
Con este permiso el usuario puede obtener el **token de acceso de lectura** utilizado para acceder al repositorio:
|
||||
Con este permiso, el usuario puede obtener el **token de acceso de lectura** utilizado para acceder al repositorio:
|
||||
```bash
|
||||
curl -X POST \
|
||||
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
|
||||
|
||||
Reference in New Issue
Block a user