GCP - Cloud Run Enum

Support HackTricks

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 lako 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, ikifanya 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.

Relevant details

  • Kwa kawaida, ufikiaji wa seva ya wavuti ni wa umma, 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 (Funguo ya Uthibitishaji inayosimamiwa na Mteja) kutoka KMS inaweza pia kuchaguliwa.

  • Kwa kawaida, akaunti ya huduma inayotumika ni ya kawaida ya Compute Engine ambayo ina ufikiaji wa Mhariri juu ya mradi na ina mipaka cloud-platform.

  • Inawezekana kufafanua mabadiliko ya mazingira ya maandiko wazi kwa ajili ya utekelezaji, na hata kuweka siri za wingu au kuongeza siri za wingu kwenye mabadiliko ya mazingira.

  • Pia inawezekana kuongeza uhusiano na Cloud SQL na kuweka 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 ya kontena ambayo inakamilika na haitoi maombi. Jobs haina uwezo wa kutoa 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 Mamlaka

Katika ukurasa ufuatao, unaweza kuangalia jinsi ya kutumia ruhusa za cloud run ili kuinua mamlaka:

Ufikiaji Usio na Utambulisho

Baada ya Kutekeleza

Kudumu

Marejeo

Support HackTricks

Last updated