GCP - Sourcerepos Privesc

htARTE (HackTricks AWS Red Team Expert) ile sıfırdan kahramana kadar AWS hackleme öğrenin!

HackTricks'i desteklemenin diğer yolları:

Kaynak Depoları

Kaynak Depoları hakkında daha fazla bilgi için:

GCP - Source Repositories Enum

source.repos.get

Bu izinle depoyu yerel olarak indirmek mümkündür:

gcloud source repos clone <repo-name> --project=<project-uniq-name>

source.repos.update

Bu izne sahip bir kullanıcı, gcloud source repos clone <repo> ile klonlanmış bir depoya kod yazabilecektir. Ancak bu izin özel rollerle ilişkilendirilemez, bu yüzden aşağıdaki gibi önceden tanımlanmış bir rol aracılığıyla verilmelidir:

  • Sahip

  • Düzenleyici

  • Kaynak Deposu Yöneticisi (roles/source.admin)

  • Kaynak Deposu Yazıcısı (roles/source.writer)

Yazmak için sadece normal bir git push işlemi gerçekleştirin.

source.repos.setIamPolicy

Bu izne sahip bir saldırgan, kendisine önceki izinleri verebilir.

Gizli erişim

Saldırgan, token'ların depolandığı gizliliklere erişimi varsa, bunları çalabilir. Bir gizliğe nasıl erişileceği hakkında daha fazla bilgi için şu adrese bakın:

GCP - Secretmanager Privesc

SSH anahtarları ekleme

Web konsolunda SSH anahtarlarını Kaynak Deposu projesine eklemek mümkündür. Bu, /v1/sshKeys:add adresine bir post isteği yapar ve https://source.cloud.google.com/user/ssh_keys adresinde yapılandırılabilir.

SSH anahtarınız ayarlandıktan sonra, bir depoya şu şekilde erişebilirsiniz:

git clone ssh://username@domain.com@source.developers.google.com:2022/p/<proj-name>/r/<repo-name>

Ve ardından git komutlarını normal şekilde kullanın.

Manuel Kimlik Bilgileri

Kaynak Depolarına erişmek için manuel kimlik bilgileri oluşturmak mümkündür:

İlk bağlantıya tıkladığınızda https://source.developers.google.com/auth/start?scopes=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fcloud-platform&state&authuser=3 adresine yönlendirileceksiniz.

Bu, Google Cloud Development'a erişim vermek için bir Oauth yetkilendirme istemi açacak. Bu nedenle, bunun için ya kullanıcının kimlik bilgilerine ya da tarayıcıda açık bir oturuma ihtiyacınız olacak.

Bu sizi bir bash komut dosyasını yürütmek ve $HOME/.gitcookies içinde bir git çerezi yapılandırmak için bir sayfaya yönlendirecektir.

Komut dosyasını çalıştırarak git clone, push... gibi işlemleri yapabilirsiniz ve çalışacaktır.

source.repos.updateProjectConfig

Bu izinle, Kaynak Depolarının varsayılan korumasını devre dışı bırakarak Özel Anahtar içeren kodların yüklenmesini engellemek mümkündür:

gcloud source project-configs update --disable-pushblock

Ayrıca farklı bir pub/sub konusu yapılandırabilir veya tamamen devre dışı bırakabilirsiniz:

gcloud source project-configs update --remove-topic=REMOVE_TOPIC
gcloud source project-configs update --remove-topic=UPDATE_TOPIC
AWS hacklemeyi sıfırdan kahraman seviyesine öğrenin htARTE (HackTricks AWS Kırmızı Takım Uzmanı)!

HackTricks'ı desteklemenin diğer yolları:

Last updated