GCP - local privilege escalation ssh pivoting
Bu senaryoda, bir Compute Engine projesindeki bir VM içinde ayrıcalığı olmayan bir hesabın ele geçirildiğini varsayacağız.
Şaşırtıcı bir şekilde, ele geçirdiğiniz Compute Engine'in GPC izinleri, yerel olarak ayrıcalıkları yükseltmenize yardımcı olabilir. Bulut ortamında her zaman çok yardımcı olmasa da, mümkün olduğunu bilmek iyi bir şeydir.
Betikleri okuyun
Compute Örnekleri, hizmet hesaplarıyla bazı işlemleri gerçekleştirmek için bazı betikleri çalıştırmak üzere orada olabilir.
IAM çok ayrıntılı olduğu için, bir hesap bir kaynağın üzerinde okuma/yazma ayrıcalıklarına sahip olabilir, ancak listeleme ayrıcalıklarına sahip olmayabilir.
Bunun harika bir varsayımsal örneği, instance82736-long-term-xyz-archive-0332893
adlı bir depolama kovasına yedekleri okuma/yazma izni olan bir Compute Örneğidir.
Komut satırından gsutil ls
çalıştırıldığında, hizmet hesabının storage.buckets.list
IAM iznine sahip olmadığı için hiçbir şey döndürmez. Ancak, gsutil ls gs://instance82736-long-term-xyz-archive-0332893
komutunu çalıştırırsanız, tam bir dosya sistemi yedeği bulabilir ve yerel Linux hesabınızın erişim sağlayamadığı verilere açık metin erişimi elde edebilirsiniz.
Bu kovayı bir betikte (bash, Python, Ruby...) bulabilirsiniz.
Özel Meta Veri
Yöneticiler, örnek ve proje düzeyinde özel meta veri ekleyebilir. Bu, sadece bir örneğe key/değer çiftlerini geçirmenin bir yoludur ve genellikle ortam değişkenleri ve başlatma/kapatma betikleri için kullanılır.
Ayrıca, her seferinde çalıştırılacak bir betik olan userdata eklemek de mümkündür ve bu betik meta veri uç noktasından da erişilebilir.
Daha fazla bilgi için kontrol edin:
IAM izinlerini kötüye kullanma
Aşağıdaki önerilen izinlerin çoğu, varsayılan Compute SA'ya verilir, tek sorun varsayılan erişim kapsamının bunları kullanmasını engellemesidir. Ancak, cloud-platform
kapsamı etkinleştirilmiş veya sadece compute
kapsamı etkinleştirilmişse, bunları kötüye kullanabilirsiniz.
Aşağıdaki izinlere bakın:
Dosya sisteminde Anahtarları Arayın
Diğer kullanıcıların kutunun içinde gcloud'a giriş yapmış ve kimlik bilgilerini dosya sistemine bırakmış olup olmadığını kontrol edin:
İşte en ilginç dosyalar:
~/.config/gcloud/credentials.db
~/.config/gcloud/legacy_credentials/[HESAP]/adc.json
~/.config/gcloud/legacy_credentials/[HESAP]/.boto
~/.credentials.json
Daha Fazla API Anahtarı regexleri
Referanslar
Last updated