GCP - Cloud Run Enum
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
- Angalia mpango wa usajili!
- Jiunge na 💬 kikundi cha Discord au kikundi cha telegram au tufuatilie kwenye Twitter 🐦 @hacktricks_live.
- Shiriki mbinu za hacking kwa kuwasilisha PRs kwa HackTricks na HackTricks Cloud repos za github.
Cloud Run
Cloud Run ni jukwaa la kompyuta lisilo na seva linalosimamiwa ambalo linakuwezesha kufanya kazi na kontena moja kwa moja juu ya miundombinu inayoweza kupanuka ya Google.
Unaweza kuendesha kontena yako au ikiwa unatumia Go, Node.js, Python, Java, .NET Core, au Ruby, unaweza kutumia chaguo la source-based deployment ambalo linajenga kontena kwa ajili yako.
Google imejenga Cloud Run ili kufanya kazi vizuri pamoja na huduma nyingine kwenye Google Cloud, hivyo unaweza kujenga programu zenye vipengele kamili.
Services and jobs
Katika Cloud Run, msimbo wako unaweza kuendesha kwa muda mrefu kama huduma au kama kazi. Huduma zote na kazi zinaendesha katika mazingira sawa na zinaweza kutumia uunganisho sawa na huduma nyingine kwenye Google Cloud.
- Huduma za Cloud Run. Zinatumika kuendesha msimbo unaojibu maombi ya wavuti, au matukio.
- Kazi za Cloud Run. Zinatumika kuendesha msimbo unaofanya kazi (kazi) na kuacha wakati kazi imekamilika.
Cloud Run Service
Google Cloud Run ni ofa nyingine isiyo na seva ambapo unaweza kutafuta mabadiliko ya mazingira pia. Cloud Run inaunda seva ndogo ya wavuti, inayofanya kazi kwenye bandari 8080 ndani ya kontena kwa kawaida, inayosubiri ombi la HTTP GET. Wakati ombi linapokelewa, kazi inatekelezwa na kumbukumbu ya kazi inatolewa kupitia jibu la HTTP.
Maelezo muhimu
- Kwa kawaida, ufikiaji wa seva ya wavuti ni hadharani, lakini inaweza pia kuwa imepunguzia trafiki ya ndani (VPC...)
Zaidi ya hayo, uthibitishaji wa kuwasiliana na seva ya wavuti unaweza kuwa ukiruhusu wote au kuhitaji uthibitishaji kupitia IAM. - Kwa kawaida, sifuri inatumia funguo inayosimamiwa na Google, lakini CMEK (Customer Managed Encryption Key) kutoka KMS inaweza pia kuchaguliwa.
- Kwa kawaida, akaunti ya huduma inayotumika ni ile ya Compute Engine default ambayo ina ufikiaji wa Mhariri juu ya mradi na ina scope
cloud-platform
. - Inawezekana kufafanua mabadiliko ya mazingira ya maandiko wazi kwa ajili ya utekelezaji, na hata kuunganisha siri za wingu au kuongeza siri za wingu kwenye mabadiliko ya mazingira.
- Pia inawezekana kuongeza uhusiano na Cloud SQL na kuunganisha mfumo wa faili.
- URLs za huduma zilizowekwa zinafanana na
https://<svc-name>-<random>.a.run.app
- Huduma ya Run inaweza kuwa na zaidi ya toleo 1 au marekebisho, na kugawanya trafiki kati ya marekebisho kadhaa.
Enumeration
# List services
gcloud run services list
gcloud run services list --platform=managed
gcloud run services list --platform=gke
# Get info of a service
gcloud run services describe --region <region> <svc-name>
# Get info of all the services together
gcloud run services list --format=yaml
gcloud run services list --platform=managed --format=json
gcloud run services list --platform=gke --format=json
# Get policy
gcloud run services get-iam-policy --region <region> <svc-name>
# Get revisions
gcloud run revisions list --region <region>
gcloud run revisions describe --region <region> <revision>
# Get domains
gcloud run domain-mappings list
gcloud run domain-mappings describe <name>
# Attempt to trigger a job unauthenticated
curl <url>
# Attempt to trigger a job with your current gcloud authorization
curl -H "Authorization: Bearer $(gcloud auth print-identity-token)" <url>
Cloud Run Jobs
Cloud Run jobs ni bora kwa mashine za kontena ambazo zinafanya kazi hadi kukamilika na hazihudumii maombi. Jobs haziwezi kuhudumia maombi au kusikiliza kwenye bandari. Hii ina maana kwamba tofauti na huduma za Cloud Run, jobs hazipaswi kuunganisha seva ya wavuti. Badala yake, kontena za jobs zinapaswa kutoka wakati zimekamilika.
Enumeration
gcloud beta run jobs list
gcloud beta run jobs describe --region <region> <job-name>
gcloud beta run jobs get-iam-policy --region <region> <job-name>
Kuinua Haki
Katika ukurasa ufuatao, unaweza kuangalia jinsi ya kutumia ruhusa za cloud run ili kuinua haki:
Ufikiaji Usio na Utambulisho
GCP - Cloud Run Unauthenticated Enum
Baada ya Kutekeleza
GCP - Cloud Run Post Exploitation
Kudumu
Marejeo
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
- Angalia mpango wa usajili!
- Jiunge na 💬 kikundi cha Discord au kikundi cha telegram au tufuatilie kwenye Twitter 🐦 @hacktricks_live.
- Shiriki mbinu za hacking kwa kuwasilisha PRs kwa HackTricks na HackTricks Cloud repos za github.