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, yapılandırılmamış veriler için yüksek dayanıklılık ve erişilebilirlik sağlayan bulut tabanlı bir depolama çözümüdür. Performans, erişilebilirlik ve maliyete dayalı olarak Standart, Nearline, Coldline ve Arşiv dahil olmak üzere çeşitli depolama sınıfları sunar. GCP Storage ayrıca verileri etkili bir şekilde yönetmek ve güvence altına almak için yaşam döngüsü politikaları, sürümleme ve erişim kontrolü gibi gelişmiş özellikler sağlar.
Kova bir bölgede, 2 bölgede veya çok bölgeli (varsayılan) olarak depolanabilir.
Standart Depolama: Bu, sık erişilen verilere yüksek performans, düşük gecikme süresi ile erişim sunan varsayılan depolama seçeneğidir. Web sitesi içeriği sunma, medya akışı ve veri analitiği boru hatları barındırma gibi geniş bir kullanım yelpazesi için uygundur.
Nearline Depolama: Bu depolama sınıfı, Standart Depolama'dan daha düşük depolama maliyetleri ve biraz daha yüksek erişim maliyetleri sunar. Sık erişilmeyen veriler için optimize edilmiştir ve minimum depolama süresi 30 gündür. Yedekleme ve arşivleme amaçları için idealdir.
Coldline Depolama: Bu depolama sınıfı, sık erişilmeyen verilerin uzun vadeli depolaması için optimize edilmiştir, minimum depolama süresi 90 gündür. Nearline Depolama'dan daha düşük depolama maliyetleri sunar, ancak daha yüksek erişim maliyetleri vardır.
Arşiv Depolama: Bu depolama sınıfı, çok nadir erişilen soğuk veriler için tasarlanmıştır ve minimum depolama süresi 365 gündür. Tüm GCP depolama seçeneklerinin en düşük depolama maliyetlerini sunar, ancak en yüksek erişim maliyetleri vardır. Uyumluluk veya düzenleyici nedenlerle saklanması gereken verilerin uzun vadeli korunumu için uygundur.
Autoclass: Eğer verilere ne kadar erişeceğinizi bilmiyorsanız, Autoclass'ı seçebilir ve GCP, maliyetleri en aza indirmek için depolama türünü otomatik olarak değiştirecektir.
Varsayılan olarak, erişimi IAM üzerinden kontrol etmeniz önerilir, ancak ACL'lerin kullanımını etkinleştirmek de mümkündür. Sadece IAM kullanmayı (varsayılan) seçerseniz ve 90 gün geçerse, kova için ACL'leri etkinleştiremeyeceksiniz.
Sürümlemeyi etkinleştirmek mümkündür, bu kovanın içindeki dosyanın eski sürümlerini kaydedecektir. Tutmak istediğiniz sürüm sayısını ve hatta eski sürümlerin (geçersiz sürümler) ne kadar süreyle saklanmasını istediğinizi yapılandırmak mümkündür. Standart tür için 7 gün önerilmektedir.
Geçersiz bir sürümün meta verileri saklanır. Ayrıca, geçersiz sürümlerin ACL'leri de saklanır, bu nedenle eski sürümlerin mevcut sürümden farklı ACL'leri olabilir.
Daha fazla bilgi için belgelere göz atın.
Kovadaki nesnelerin silinmesini ne kadar süreyle yasaklamak istediğinizi belirtin (en azından uyumluluk için çok faydalıdır). Sadece bir sürümleme veya saklama politikası aynı anda etkinleştirilebilir.
Varsayılan olarak nesneler, Google tarafından yönetilen anahtarlar kullanılarak şifrelenir, ancak KMS'den bir anahtar da kullanabilirsiniz.
Dış kullanıcıların (GCP'ye giriş yapmış olsun ya da olmasın) kovaların içeriğine erişim vermek mümkündür. Varsayılan olarak, bir kova oluşturulduğunda, kovanın kamusal olarak açılma seçeneği devre dışı bırakılmıştır, ancak yeterli izinlerle değiştirilebilir.
Bir kovaya erişim için URL formatı https://storage.googleapis.com/<bucket-name>
veya https://<bucket_name>.storage.googleapis.com
şeklindedir (her ikisi de geçerlidir).
HMAC anahtarı, bir tür kimlik bilgisi olup, Cloud Storage'da bir hizmet hesabı veya kullanıcı hesabı ile ilişkilendirilebilir. HMAC anahtarını, Cloud Storage'a yapılan isteklerde yer alan imzalar oluşturmak için kullanırsınız. İmzalar, belirli bir isteğin kullanıcı veya hizmet hesabı tarafından yetkilendirildiğini gösterir.
HMAC anahtarlarının iki ana bileşeni vardır: bir erişim kimliği ve bir gizli anahtar.
Erişim Kimliği: Belirli bir hizmet veya kullanıcı hesabına bağlı alfanümerik bir dizedir. Bir hizmet hesabına bağlı olduğunda, dize 61 karakter uzunluğundadır ve bir kullanıcı hesabına bağlı olduğunda, dize 24 karakter uzunluğundadır. Aşağıda bir erişim kimliği örneği gösterilmektedir:
GOOGTS7C7FUP3AIRVJTE2BCDKINBTES3HC2GY5CBFJDCQ2SYHV6A6XXVTJFSA
Gizli Anahtar: Belirli bir erişim kimliğine bağlı 40 karakterlik Base-64 kodlu bir dizedir. Gizli anahtar, yalnızca sizin ve Cloud Storage'ın bildiği önceden paylaşılmış bir anahtardır. İmza oluşturmak için gizli anahtarınızı kimlik doğrulama sürecinin bir parçası olarak kullanırsınız. Aşağıda bir gizli anahtar örneği gösterilmektedir:
bGoa+V7g/yqDXvKRqq+JTFn4uQZbPiQJo4pf9RzJ
Hem erişim kimliği hem de gizli anahtar, bir HMAC anahtarını benzersiz bir şekilde tanımlar, ancak gizli anahtar çok daha hassas bir bilgidir, çünkü imzalar oluşturmak için kullanılır.
Eğer bucket'ları listelemekte izin reddedildi hatası alıyorsanız, yine de içeriğe erişiminiz olabilir. Artık bucket'ların isimlendirme kuralını bildiğinize göre, olası isimlerin bir listesini oluşturabilir ve onlara erişmeyi deneyebilirsiniz:
storage.objects.list
ve storage.objects.get
izinleriyle, bunları indirmek için kovadan tüm klasörleri ve dosyaları listeleyebilmelisiniz. Bunu bu Python betiğiyle gerçekleştirebilirsiniz:
Aşağıdaki sayfada depolama izinlerini kötüye kullanarak yetki yükseltme yöntemini kontrol edebilirsiniz:
GCP - Storage PrivescAWS Hacking'i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE) GCP Hacking'i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)