GCP Pentesting
Taarifa za Msingi
Kabla ya kuanza pentesting mazingira ya GCP, kuna mambo machache ya msingi unayohitaji kujua kuhusu jinsi inavyofanya kazi ili kukusaidia kuelewa unachohitaji kufanya, jinsi ya kupata misconfigurations na jinsi ya kuzitumia.
Mafunzo kama vile hierarchy ya shirika, ruhusa na dhana nyingine za msingi zimeelezwa katika:
GCP - Basic InformationMaabara za kujifunza
Mbinu za GCP Pentester/Red Team
Ili kufanya ukaguzi wa mazingira ya GCP ni muhimu sana kujua: ni huduma zipi zinatumika, nini kinachofichuliwa, nani ana upatikanaji wa nini, na jinsi huduma za ndani za GCP na huduma za nje zimeunganishwa.
Kutoka kwa mtazamo wa Red Team, hatua ya kwanza ya kuathiri mazingira ya GCP ni kupata credentials fulani. Hapa kuna mawazo kadhaa ya jinsi ya kufanya hivyo:
Leaks katika github (au sawa) - OSINT
Uhandisi wa Kijamii (Angalia ukurasa Workspace Security)
Matumizi ya nywila (password leaks)
Udhaifu katika Programu Zinazohifadhiwa na GCP
Server Side Request Forgery yenye upatikanaji wa metadata endpoint
Usomaji wa Faili za Ndani
/home/USERNAME/.config/gcloud/*
C:\Users\USERNAME\.config\gcloud\*
3rd parties breached
Mfanyakazi wa Ndani
Au kwa kuathiri huduma isiyo na uthibitisho iliyofichuliwa:
GCP - Unauthenticated Enum & AccessAu kama unafanya ukaguzi unaweza tu kuomba credentials na majukumu haya:
GCP - Permissions for a PentestBaada ya kufanikiwa kupata credentials, unahitaji kujua credentials hizo ni za nani, na wana upatikanaji wa nini, hivyo unahitaji kufanya baadhi ya uchunguzi wa msingi:
Uchunguzi wa Msingi
SSRF
Kwa maelezo zaidi kuhusu jinsi ya kuchunguza metadata ya GCP angalia ukurasa wa hacktricks ufuatao:
Whoami
Katika GCP unaweza kujaribu chaguzi kadhaa kujaribu kubaini wewe ni nani:
Org Enumeration
Uorodheshaji wa Shirika
Principals & IAM Enumeration
Ikiwa una ruhusa za kutosha, kukagua haki za kila chombo ndani ya akaunti ya GCP itakusaidia kuelewa unachoweza kufanya wewe na vitambulisho vingine na jinsi ya kuongeza haki.
Ikiwa huna ruhusa za kutosha kuorodhesha IAM, unaweza kuiba kwa nguvu ili kuzitambua. Angalia jinsi ya kufanya orodha na nguvu katika:
GCP - IAM, Principals & Org Policies EnumSasa kwa kuwa una habari kuhusu vitambulisho vyako (na ikiwa wewe ni timu nyekundu unatumaini hujaonekana). Ni wakati wa kujua ni huduma gani zinatumika katika mazingira. Katika sehemu ifuatayo unaweza kuangalia njia kadhaa za kuorodhesha huduma za kawaida.
Services Enumeration
GCP ina idadi kubwa ya huduma, katika ukurasa ufuatao utapata habari za msingi, orodha za cheatsheets, jinsi ya kuepuka kugunduliwa, kupata kuendelea, na mbinu zingine za baada ya unyonyaji kuhusu baadhi yao:
GCP - ServicesKumbuka kwamba huna haja ya kufanya kazi yote kwa mikono, hapa chini katika chapisho hili unaweza kupata sehemu kuhusu vifaa vya kiotomatiki.
Zaidi ya hayo, katika hatua hii unaweza kugundua huduma zaidi zilizo wazi kwa watumiaji wasio na uthibitisho, unaweza kuweza kuzitumia:
GCP - Unauthenticated Enum & AccessPrivilege Escalation, Post Exploitation & Persistence
Njia ya kawaida mara tu unapopata vitambulisho vya wingu au umedhibiti huduma fulani inayoendesha ndani ya wingu ni kutumia haki zilizosanidiwa vibaya ambazo akaunti iliyodhibitiwa inaweza kuwa nazo. Kwa hivyo, jambo la kwanza unalopaswa kufanya ni kuorodhesha haki zako.
Zaidi ya hayo, wakati wa orodha hii, kumbuka kwamba ruhusa zinaweza kuwekwa katika kiwango cha juu cha "Shirika" pia.
GCP - Privilege EscalationGCP - Post ExploitationGCP - PersistencePublicly Exposed Services
Wakati wa kuorodhesha huduma za GCP unaweza kuwa umepata baadhi yao zinazoonyesha vipengele kwa Intaneti (bandari za VM/Containers, hifadhidata au huduma za foleni, picha au ndoo...). Kama pentester/timu nyekundu unapaswa kila wakati kuangalia ikiwa unaweza kupata habari nyeti / udhaifu juu yao kwani zinaweza kukupa upatikanaji zaidi katika akaunti ya AWS.
Katika kitabu hiki unapaswa kupata habari kuhusu jinsi ya kupata huduma za GCP zilizo wazi na jinsi ya kuzichunguza. Kuhusu jinsi ya kupata udhaifu katika huduma za mtandao zilizo wazi ningependekeza kutafuta huduma maalum katika:
GCP <--> Workspace Pivoting
Kudhibiti vitambulisho katika jukwaa moja kunaweza kumruhusu mshambulizi kudhibiti jingine, angalia katika:
GCP <--> Workspace PivotingAutomatic Tools
Katika GCloud console, katika https://console.cloud.google.com/iam-admin/asset-inventory/dashboard unaweza kuona rasilimali na IAM zinazotumiwa na mradi.
Hapa unaweza kuona mali zinazoungwa mkono na API hii: https://cloud.google.com/asset-inventory/docs/supported-asset-types
Angalia vifaa ambavyo vinaweza kutumika katika wingu kadhaa hapa.
gcp_scanner: Hii ni skana ya rasilimali ya GCP ambayo inaweza kusaidia kubaini kiwango cha upatikanaji wa vitambulisho fulani kwenye GCP.
gcp_enum: Bash script ya kuorodhesha mazingira ya GCP kwa kutumia gcloud cli na kuhifadhi matokeo kwenye faili.
GCP-IAM-Privilege-Escalation: Script za kuorodhesha haki za juu za IAM na kupandisha haki katika GCP kwa kuzitumia vibaya (sikuweza kufanya script ya kuorodhesha ifanye kazi).
BF My GCP Permissions: Script ya kubruteforce ruhusa zako.
gcloud config & debug
Capture gcloud, gsutil... network
Kumbuka kwamba unaweza kutumia parameter --log-http
na gcloud
cli ili kuonyesha maombi ambayo chombo kinatuma. Ikiwa hutaki kumbukumbu zifute thamani ya tokeni tumia gcloud config set log_http_redact_token false
Zaidi ya hayo, ili kunasa mawasiliano:
OAuth token configure in gcloud
Ili kutumia tokeni ya akaunti ya huduma iliyovujishwa kutoka kwa metadata endpoint unaweza kufanya hivi:
Marejeo
Last updated