GCP - Compute Instances

Tip

AWS 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)
Az Hacking’i öğrenin ve pratik yapın: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks'i Destekleyin

Temel Bilgiler

Google Cloud Compute Instances, Google’ın bulut altyapısında özelleştirilebilir sanal makineler olup, geniş bir uygulama yelpazesi için ölçeklenebilir ve talep üzerine hesaplama gücü sunar. Küresel dağıtım, kalıcı depolama, esnek işletim sistemi seçimleri ve güçlü ağ ve güvenlik entegrasyonları gibi özellikler sunarak, web sitelerini barındırmak, verileri işlemek ve uygulamaları bulutta verimli bir şekilde çalıştırmak için çok yönlü bir seçenek haline gelir.

Gizli VM

Gizli VM’ler, AMD EPYC işlemcilerinin en son nesli tarafından sunulan donanım tabanlı güvenlik özelliklerini kullanır; bu özellikler arasında bellek şifreleme ve güvenli şifreli sanallaştırma bulunur. Bu özellikler, VM’nin işlenen ve depolanan verileri, hatta ana işletim sistemi ve hipervizörden korumasını sağlar.

Gizli bir VM çalıştırmak için, makine türü, ağ arayüzü, önyükleme diski görüntüsü gibi şeyleri değiştirmeniz gerekebilir.

Disk ve Disk Şifreleme

Kullanılacak diski seçmek veya yeni bir tane oluşturmak mümkündür. Yeni bir tane seçerseniz:

  • Diskin boyutunu seçin
  • İşletim sistemini seçin
  • Örnek silindiğinde diski silmek isteyip istemediğinizi belirtin
  • Şifreleme: Varsayılan olarak bir Google yönetimli anahtar kullanılacaktır, ancak bir KMS anahtarı seçebilir veya kullanılacak ham anahtarı belirtebilirsiniz.

Konteyner Dağıtımı

Sanal makine içinde bir konteyner dağıtmak mümkündür.
Kullanılacak görüntüyü yapılandırmak, içinde çalıştırılacak komutu, argümanları, bir hacmi bağlamak ve env değişkenlerini (hassas bilgiler?) ayarlamak mümkündür ve bu konteyner için yetkili olarak çalıştırma, stdin ve sahte TTY gibi çeşitli seçenekler yapılandırılabilir.

Hizmet Hesabı

Varsayılan olarak, Compute Engine varsayılan hizmet hesabı kullanılacaktır. Bu SA’nın e-posta adresi şöyle: <proj-num>-compute@developer.gserviceaccount.com
Bu hizmet hesabı, tüm projede Editör rolüne (yüksek ayrıcalıklar) sahiptir.

Ve varsayılan erişim kapsamları şunlardır:

Ancak, bir tıklama ile cloud-platform vermek veya özel olanları belirtmek mümkündür.

Güvenlik Duvarı

HTTP ve HTTPS trafiğine izin vermek mümkündür.

  • IP Yönlendirme: Örneğin oluşturulurken IP yönlendirmeyi etkinleştirmek mümkündür.
  • Ana Bilgisayar Adı: Örneğe kalıcı bir ana bilgisayar adı vermek mümkündür.
  • Arayüz: Bir ağ arayüzü eklemek mümkündür.

Ek Güvenlik

Bu seçenekler, VM’nin güvenliğini artıracak ve önerilmektedir:

  • Güvenli önyükleme: Güvenli önyükleme, VM örneklerinizi önyükleme düzeyinde ve çekirdek düzeyinde kötü amaçlı yazılımlara ve rootkit’lere karşı korumaya yardımcı olur.
  • vTPM’yi etkinleştir: Sanal Güvenilir Platform Modülü (vTPM), misafir VM’nizin önyükleme öncesi ve önyükleme bütünlüğünü doğrular ve anahtar oluşturma ve koruma sunar.
  • Bütünlük denetimi: Bütünlük izleme, Stackdriver raporlarını kullanarak korumalı VM örneklerinizin çalışma zamanı önyükleme bütünlüğünü izlemenizi ve doğrulamanızı sağlar. vTPM’nin etkinleştirilmesi gereklidir.

VM Erişimi

VM’ye erişimi etkinleştirmenin yaygın yolu, belirli SSH genel anahtarlarına VM’ye erişim izni vermektir.
Ancak, bu hizmeti kullanarak IAM ile VM’ye erişimi etkinleştirmek de mümkündür. Ayrıca, bu hizmeti kullanarak VM’ye erişim için 2FA’yı etkinleştirmek mümkündür.
Bu hizmet etkinleştirildiğinde, SSH anahtarları ile erişim devre dışı bırakılır.

Metadata

Her seferinde makine açıldığında veya yeniden başlatıldığında çalıştırılacak otomasyon (AWS’deki userdata) olarak tanımlamak mümkündür.

Ayrıca, metadata uç noktasından erişilebilecek ek metadata anahtar-değer çiftleri eklemek de mümkündür. Bu bilgi genellikle ortam değişkenleri ve başlangıç/kapatma betikleri için kullanılır. Bu, enumerasyon bölümündeki bir komuttan describe yöntemini kullanarak elde edilebilir, ancak aynı zamanda metadata uç noktasına erişerek örneğin içinden de alınabilir.

# 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"

Ayrıca, bağlı hizmet hesabı için auth token ve örnek, ağ ve proje hakkında genel bilgi de metadata endpoint üzerinden erişilebilir olacaktır. Daha fazla bilgi için kontrol edin:

Cloud SSRF - HackTricks

Şifreleme

Varsayılan olarak Google tarafından yönetilen bir şifreleme anahtarı kullanılır, ancak Müşteri tarafından yönetilen bir şifreleme anahtarı (CMEK) yapılandırılabilir. Kullanılan CMEK’nin iptal edilmesi durumunda ne yapılacağını da yapılandırabilirsiniz: Not almak veya VM’yi kapatmak.

Tip

AWS 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)
Az Hacking’i öğrenin ve pratik yapın: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks'i Destekleyin