GCP - IAM Sömürme Sonrası

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

IAM

IAM hakkında daha fazla bilgiyi şuradan bulabilirsiniz:

GCP - IAM, Principals & Org Policies Enum

Yönetim konsoluna erişim verme

GCP management console erişimi kullanıcı hesaplarına sağlanır, service accounts’a değil. Web arayüzüne giriş yapmak için kontrolünüzdeki bir Google hesabına erişim verebilirsiniz. Bu, genel bir “@gmail.com” hesabı olabilir; hedef organizasyonun bir üyesi olması gerekmez.

Bununla birlikte, generic “@gmail.com” hesabına Owner adlı ilkel rolü vermek için web konsolunu kullanmanız gerekir. gcloud, bu hesaba Editor’dan daha yüksek bir izin vermeye çalışırsanız hata verir.

Aşağıdaki komutu kullanarak mevcut projenize bir kullanıcıya Editor adlı ilkel rolü verebilirsiniz:

gcloud projects add-iam-policy-binding [PROJECT] --member user:[EMAIL] --role roles/editor

Burada başarılı olduysanız, web arayüzüne erişmeyi ve oradan keşfetmeyi deneyin.

Bu, gcloud aracı kullanarak atayabileceğiniz en yüksek seviyedir.

IAM bileşenlerini silme iam.*.delete

The iam.*.delete permissions (e.g., iam.roles.delete, iam.serviceAccountApiKeyBindings.delete, iam.serviceAccountKeys.delete, etc.) allow an identity to delete critical IAM components such as custom roles, API key bindings, service account keys, and the service accounts themselves. Bir saldırganın eline geçerse, bu meşru erişim mekanizmalarını kaldırarak denial of service’e yol açabilir.

Böyle bir saldırıyı gerçekleştirmek için, örneğin rolleri silmek için şunu kullanabilirsiniz:

gcloud iam roles delete <ROLE_ID> --project=<PROJECT_ID>

iam.serviceAccountKeys.disable || iam.serviceAccounts.disable

iam.serviceAccountKeys.disable ve iam.serviceAccounts.disable izinleri, aktif service account anahtarlarını veya service account’ları devre dışı bırakmaya izin verir; bir saldırganın elinde bunlar operasyonları aksatmak, hizmet reddi (DoS) oluşturmak veya meşru kimlik bilgilerinin kullanılmasını engelleyerek olay müdahalesini zorlaştırmak için kullanılabilir.

Bir Service Account’u devre dışı bırakmak için şu komutu kullanabilirsiniz:

gcloud iam service-accounts disable <SA_EMAIL> --project=<PROJECT_ID>

Bir Service Account’ın anahtarlarını devre dışı bırakmak için aşağıdaki komutu kullanabilirsiniz:

gcloud iam service-accounts keys disable <KEY_ID> --iam-account=<SA_EMAIL>

iam.*.undelete

iam.*.undelete izinleri, API anahtar bağlamaları, özel roller veya hizmet hesapları gibi daha önce silinmiş öğeleri geri yüklemeye izin verir. Bir saldırganın elinde, bu durum savunma önlemlerini geri almak (kaldırılmış erişimi kurtarmak), kalıcılığı sürdürmek için silinmiş istismar vektörlerini yeniden oluşturmak veya düzeltme çalışmalarından kaçınmak için kullanılabilir; bu da olayın kontrol altına alınmasını zorlaştırır.

gcloud iam service-accounts undelete "${SA_ID}" --project="${PROJECT}"

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