GCP - Compute Instances

Support HackTricks

Basic Information

Google Cloud Compute Instances ni mashine za virtual zinazoweza kubadilishwa 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 uhalisia 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 kuhitajika 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 env (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 ufikiaji ya kawaida ni zifuatazo:

  • 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.

Firewall

Inawezekana kuruhusu trafiki ya HTTP na HTTPS.

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 kiwango cha kernel.

  • Enable vTPM: Virtual Trusted Platform Module (vTPM) inathibitisha uhalali wa kuanzisha na uaminifu wa boot wa VM yako ya wageni, na inatoa uzalishaji wa funguo na ulinzi.

  • Integrity supervision: Ufuatiliaji wa uaminifu unakuwezesha kufuatilia na kuthibitisha uaminifu wa boot wa wakati wa kuendesha wa mfano wako wa shielded 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 kuingia kwenye VM. Hata hivyo, inawezekana pia kuwezesha ufikiaji kwa VM kupitia huduma ya os-config kwa kutumia IAM. Aidha, inawezekana kuwezesha 2FA ili kufikia VM kwa kutumia huduma hii. Wakati huduma hii ime wezesha, ufikiaji kupitia funguo za SSH umezuiliwa.

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 zitakuwa zinapatikana kutoka kwa kiunganishi cha metadata. Habari hii kwa kawaida hutumiwa 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"

Moreover, auth token for the attached service account and general info about the instance, network and project is also going to be available from the metadata endpoint. For more info check:

Encryption

Kifunguo cha usimbuaji kinachosimamiwa na Google kinatumika kama chaguo-msingi lakini kifunguo cha usimbuaji kinachosimamiwa na Mteja (CMEK) kinaweza kuwekwa. Unaweza pia kuweka jinsi ya kufanya wakati CMEF inayotumika inatenguliwa: Kurekodi au kuzima VM.

Support HackTricks

Last updated