GCP - Storage Enum
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Google Cloud Platform (GCP) Storage je rešenje za skladištenje zasnovano na oblaku koje pruža visoko izdržljivo i dostupno skladištenje objekata za nestrukturirane podatke. Nudi različite klase skladištenja zasnovane na performansama, dostupnosti i troškovima, uključujući Standard, Nearline, Coldline i Archive. GCP Storage takođe pruža napredne funkcije kao što su politike životnog ciklusa, verzionisanje i kontrola pristupa za efikasno upravljanje i zaštitu podataka.
Kanta može biti smeštena u regionu, u 2 regiona ili multi-region (podrazumevano).
Standard Storage: Ovo je podrazumevana opcija skladištenja koja nudi visok učinak, nisku latenciju pristupa često korišćenim podacima. Pogodna je za širok spektar slučajeva upotrebe, uključujući pružanje sadržaja veb stranica, strimovanje medija i hostovanje analitičkih podataka.
Nearline Storage: Ova klasa skladištenja nudi niže troškove skladištenja i malo više troškove pristupa od Standard Storage. Optimizovana je za retko pristupane podatke, sa minimalnim vremenom skladištenja od 30 dana. Idealna je za backup i arhiviranje.
Coldline Storage: Ova klasa skladištenja je optimizovana za dugoročno skladištenje retko pristupanih podataka, sa minimalnim vremenom skladištenja od 90 dana. Nudi niže troškove skladištenja od Nearline Storage, ali sa višim troškovima pristupa.
Archive Storage: Ova klasa skladištenja je dizajnirana za hladne podatke koji se pristupaju veoma retko, sa minimalnim vremenom skladištenja od 365 dana. Nudi najniže troškove skladištenja od svih GCP opcija skladištenja ali sa najvišim troškovima pristupa. Pogodna je za dugoročno čuvanje podataka koji moraju biti pohranjeni zbog usklađenosti ili regulatornih razloga.
Autoclass: Ako ne znate koliko ćete često pristupati podacima, možete odabrati Autoclass i GCP će automatski promeniti tip skladištenja kako bi minimizirao troškove.
Po podrazumevanoj postavci, preporučuje se kontrola pristupa putem IAM, ali je takođe moguće omogućiti korišćenje ACL-a. Ako odaberete da koristite samo IAM (podrazumevano) i prođe 90 dana, nećete moći da omogućite ACL-e za kantu.
Moguće je omogućiti verzionisanje, ovo će sačuvati stare verzije datoteke unutar kante. Moguće je konfigurisati broj verzija koje želite da zadržite i čak koliko dugo želite da neaktuelne verzije (stare verzije) žive. Preporučuje se 7 dana za Standard tip.
Metapodaci neaktuelne verzije se čuvaju. Štaviše, ACL-i neaktuelnih verzija se takođe čuvaju, tako da starije verzije mogu imati različite ACL-e od trenutne verzije.
Saznajte više u docs.
Naznačite koliko dugo želite da zabranite brisanje objekata unutar kante (veoma korisno za usklađenost barem). Samo jedna od verzionisanja ili politike zadržavanja može biti omogućena u isto vreme.
Po defaultu, objekti su šifrovani koristeći Google upravljane ključeve, ali možete koristiti i ključ iz KMS-a.
Moguće je dati spoljnim korisnicima (prijavljenim u GCP ili ne) pristup sadržaju kanti. Po defaultu, kada se kanta kreira, biće onemogućena opcija da se javno izloži kanta, ali uz dovoljno dozvola to se može promeniti.
Format URL-a za pristup kanti je https://storage.googleapis.com/<bucket-name>
ili https://<bucket_name>.storage.googleapis.com
(oba su validna).
HMAC ključ je vrsta akreditiva i može biti povezan sa servisnim nalogom ili korisničkim nalogom u Cloud Storage. Koristite HMAC ključ za kreiranje potpisa koji se zatim uključuju u zahteve za Cloud Storage. Potpisi pokazuju da je dati zahtev autorizovan od strane korisnika ili servisnog naloga.
HMAC ključevi imaju dva osnovna dela, ID pristupa i tajnu.
Access ID: Alfanumerički niz povezan sa specifičnim servisom ili korisničkim nalogom. Kada je povezan sa servisnim nalogom, niz ima 61 karakter, a kada je povezan sa korisničkim nalogom, niz ima 24 karaktera. Sledeće prikazuje primer ID-a pristupa:
GOOGTS7C7FUP3AIRVJTE2BCDKINBTES3HC2GY5CBFJDCQ2SYHV6A6XXVTJFSA
Secret: Niz od 40 karaktera kodiran u Base-64 koji je povezan sa specifičnim ID-om pristupa. Tajna je unapred podeljeni ključ koji samo vi i Cloud Storage znate. Koristite svoju tajnu za kreiranje potpisa kao deo procesa autentifikacije. Sledeće prikazuje primer tajne:
bGoa+V7g/yqDXvKRqq+JTFn4uQZbPiQJo4pf9RzJ
I ID pristupa i tajna jedinstveno identifikuju HMAC ključ, ali je tajna mnogo osetljivija informacija, jer se koristi za kreiranje potpisa.
Ako dobijete grešku "permission denied" prilikom listanja kanti, možda i dalje imate pristup sadržaju. Dakle, sada kada znate o konvenciji imena kanti, možete generisati listu mogućih imena i pokušati da im pristupite:
Sa dozvolama storage.objects.list
i storage.objects.get
, trebali biste moći da enumerišete sve foldere i fajlove iz bačve kako biste ih preuzeli. To možete postići ovim Python skriptom:
Na sledećoj stranici možete proveriti kako da zloupotrebite dozvole za skladištenje da biste eskalirali privilegije:
GCP - Storage PrivescUčite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)