GCP - Cloud Build Unauthenticated Enum

Aprende a hackear AWS desde cero hasta convertirte en un experto con htARTE (Experto en Equipos Rojos de AWS de HackTricks)!

Otras formas de apoyar a HackTricks:

Cloud Build

Para obtener más información sobre Cloud Build, consulta:

pageGCP - Cloud Build Enum

cloudbuild.yml

Si comprometes el acceso de escritura sobre un repositorio que contiene un archivo llamado cloudbuild.yml, podrías puerta trasera este archivo, que especifica los comandos que se van a ejecutar dentro de un Cloud Build y exfiltrar los secretos, comprometer lo que se hace y también comprometer la cuenta de servicio de Cloud Build.

Ten en cuenta que GCP tiene la opción de permitir a los administradores controlar la ejecución de sistemas de compilación desde PR externos a través de "Control de Comentarios". El Control de Comentarios es una característica donde los colaboradores/propietarios del proyecto deben comentar "/gcbrun" para desencadenar la compilación contra el PR y el uso de esta función impide inherentemente que cualquiera en Internet desencadene tus sistemas de compilación.

Para obtener información relacionada, puedes consultar la página sobre cómo atacar a Github Actions (similar a esto):

pageAbusing Github Actions

Aprobaciones de PR

Cuando el desencadenante es un PR porque cualquiera puede realizar PR a repositorios públicos, sería muy peligroso permitir la ejecución del desencadenante con cualquier PR. Por lo tanto, de forma predeterminada, la ejecución solo será automática para propietarios y colaboradores, y para ejecutar el desencadenante con PR de otros usuarios, un propietario o colaborador debe comentar /gcbrun.

Por lo tanto, si esto se establece como No requerido, un atacante podría realizar un PR a la rama que desencadenará la ejecución agregando la ejecución de código malicioso al archivo cloudbuild.yml y comprometer la ejecución de cloudbuild (nota que cloudbuild descargará el código DEL PR, por lo que ejecutará el cloudbuild.yml malicioso).

Además, es fácil ver si se necesita realizar alguna ejecución de cloudbuild cuando envías un PR porque aparece en Github:

Entonces, incluso si el cloudbuild no se ejecuta, el atacante podrá ver el nombre del proyecto de un proyecto de GCP que pertenece a la empresa.

Aprende a hackear AWS desde cero hasta convertirte en un experto con htARTE (Experto en Equipos Rojos de AWS de HackTricks)!

Otras formas de apoyar a HackTricks:

Última actualización