GCP - Compute Instances
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.
Basic Information
Google Cloud Compute Instances ni mashine za kawaida za virtual kwenye miundombinu ya wingu ya Google, zinazotoa nguvu za kompyuta zinazoweza kupanuliwa na zinazohitajika kwa anuwai ya matumizi. Zinatoa vipengele kama vile usambazaji wa kimataifa, uhifadhi wa kudumu, chaguo za OS zinazoweza kubadilishwa, na ushirikiano mzuri wa mtandao na usalama, na kuifanya kuwa chaguo bora kwa kuhost tovuti, kuchakata data, na kuendesha programu kwa ufanisi katika wingu.
Confidential VM
Confidential VMs hutumia vipengele vya usalama vinavyotegemea vifaa vinavyotolewa na kizazi kipya cha AMD EPYC processors, ambacho kinajumuisha usimbuaji wa kumbukumbu na uhalalishaji wa usimbuaji salama. Vipengele hivi vinamwezesha VM kulinda data inayochakatwa na kuhifadhiwa ndani yake hata kutoka kwa mfumo wa uendeshaji wa mwenyeji na hypervisor.
Ili kuendesha Confidential VM inaweza kuhitaji kubadilisha mambo kama vile aina ya mashine, kiunganishi cha mtandao, picha ya diski ya kuanzisha.
Disk & Disk Encryption
Inawezekana kuchagua diski ya kutumia au kuunda mpya. Ikiwa unachagua mpya unaweza:
- Kuchagua ukubwa wa diski
- Kuchagua OS
- Kuonyesha ikiwa unataka kufuta diski wakati mfano unafutwa
- Usimbuaji: Kwa kawaida funguo ya Google inayosimamiwa itatumika, lakini unaweza pia kuchagua funguo kutoka KMS au kuonyesha funguo mbichi za kutumia.
Deploy Container
Inawezekana kupeleka konteina ndani ya mashine ya virtual.
Inawezekana kusanidi picha ya kutumia, kuweka amri ya kuendesha ndani, hoja, kuunganisha kiasi, na mabadiliko ya mazingira (habari nyeti?) na kusanidi chaguzi kadhaa kwa ajili ya konteina hii kama kuendesha kama mwenye mamlaka, stdin na pseudo TTY.
Service Account
Kwa kawaida, akaunti ya huduma ya Compute Engine itatumika. Barua pepe ya SA hii ni kama: <proj-num>-compute@developer.gserviceaccount.com
Akaunti hii ya huduma ina nafasi ya Mhariri juu ya mradi mzima (mamlaka ya juu).
Na mipaka ya kawaida ya ufikiaji ni kama ifuatavyo:
- https://www.googleapis.com/auth/devstorage.read_only -- Ufikiaji wa kusoma kwenye ndoo :)
- https://www.googleapis.com/auth/logging.write
- https://www.googleapis.com/auth/monitoring.write
- https://www.googleapis.com/auth/servicecontrol
- https://www.googleapis.com/auth/service.management.readonly
- https://www.googleapis.com/auth/trace.append
Hata hivyo, inawezekana kutoa cloud-platform
kwa kubonyeza au kubainisha za kawaida.
.png)
Firewall
Inawezekana kuruhusu trafiki ya HTTP na HTTPS.
.png)
Networking
- IP Forwarding: Inawezekana kuwezesha IP forwarding kutoka kwa uundaji wa mfano.
- Hostname: Inawezekana kutoa mfano jina la kudumu.
- Interface: Inawezekana kuongeza kiunganishi cha mtandao.
Extra Security
Chaguzi hizi zitafanya kuongeza usalama wa VM na zinapendekezwa:
- Secure boot: Secure boot husaidia kulinda mfano wako wa VM dhidi ya malware na rootkits za kiwango cha kuanzisha na kernel.
- Enable vTPM: Virtual Trusted Platform Module (vTPM) inathibitisha uhalali wa VM yako ya wageni kabla ya kuanzisha na uhalali wa kuanzisha, na inatoa kizazi na ulinzi wa funguo.
- Integrity supervision: Ufuatiliaji wa uaminifu unakuwezesha kufuatilia na kuthibitisha uhalali wa kuanzisha wa wakati wa kuendesha wa mfano wako wa VM uliohifadhiwa kwa kutumia ripoti za Stackdriver. Inahitaji vTPM iwezeshe.
VM Access
Njia ya kawaida ya kuwezesha ufikiaji kwa VM ni kwa kuruhusu funguo fulani za SSH za umma kufikia VM.
Hata hivyo, inawezekana pia kuwezesha ufikiaji kwa VM kupitia huduma ya os-config
kwa kutumia IAM. Zaidi ya hayo, inawezekana kuwezesha 2FA ili kufikia VM kwa kutumia huduma hii.
Wakati huduma hii ime wezesha, ufikiaji kupitia funguo za SSH umezuiliwa.
.png)
Metadata
Inawezekana kufafanua automatisering (userdata katika AWS) ambayo ni amri za shell ambazo zitatekelezwa kila wakati mashine inapoanzishwa au kuanzishwa upya.
Pia inawezekana kuongeza funguo za metadata za ziada ambazo zitapatikana kutoka kwa kiunganishi cha metadata. Habari hii kawaida hutumika kwa mabadiliko ya mazingira na scripts za kuanzisha/kuzima. Hii inaweza kupatikana kwa kutumia describe
method kutoka kwa amri katika sehemu ya uainishaji, lakini pia inaweza kupatikana kutoka ndani ya mfano kwa kufikia kiunganishi cha metadata.
# view project metadata
curl "http://metadata.google.internal/computeMetadata/v1/project/attributes/?recursive=true&alt=text" \
-H "Metadata-Flavor: Google"
# view instance metadata
curl "http://metadata.google.internal/computeMetadata/v1/instance/attributes/?recursive=true&alt=text" \
-H "Metadata-Flavor: Google"
Zaidi ya hayo, token ya uthibitishaji kwa akaunti ya huduma iliyoambatanishwa na taarifa za jumla kuhusu mfano, mtandao na mradi pia zitapatikana kutoka kwa metadata endpoint. Kwa maelezo zaidi angalia:
Uthibitishaji
Funguo ya uthibitishaji inayosimamiwa na Google inatumika kama chaguo-msingi lakini funguo ya uthibitishaji inayosimamiwa na Mteja (CMEK) inaweza kuanzishwa. Unaweza pia kuanzisha kile cha kufanya wakati CMEF inayotumika inabatilishwa: Kurekodi au kuzima VM.
.png)
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.