Azure Pentesting
AZURE METODOLOJİSİNİ HALA OLUŞTURUYORUM
Temel Bilgiler
Az - Basic InformationAzure Pentester/Kırmızı Takım Metodolojisi
Bir AZURE ortamını denetlemek için çok önemli olan şeyler: hangi hizmetlerin kullanıldığı, neyin açığa çıkarıldığı, kimin ne tür erişimi olduğu ve iç Azure hizmetlerinin ve harici hizmetlerin nasıl bağlandığıdır.
Kırmızı Takım açısından, bir Azure ortamını ele geçirmenin ilk adımı, Azure AD için bazı kimlik bilgileri elde etmeyi başarmaktır. İşte bunu nasıl yapabileceğinize dair bazı fikirler:
Github (veya benzeri) sızıntıları - OSINT
Sosyal Mühendislik
Parola yeniden kullanımı (parola sızıntıları)
Azure'da barındırılan uygulamalardaki güvenlik açıkları
Sunucu Tarafı İstek Sahtekarlığı (SSRF) - meta veri uç noktasına erişimle
Yerel Dosya Okuma
/home/USERNAME/.azure
C:\Users\USERNAME\.azure
az cli
2.30 öncesi - Jan2022 - erişim belirteçlerini düz metin olarak saklayanaccessTokens.json
dosyasıazureProfile.json
dosyası oturum açmış kullanıcı hakkında bilgi içerir.az logout
belirteci kaldırır.Eski sürümlerde
Az PowerShell
, erişim belirteçlerini düz metin olarakTokenCache.dat
dosyasında saklar. AyrıcaAzureRmContext.json
dosyasında ServicePrincipalSecret'i düz metin olarak saklar.Save-AzContext
cmdlet'i belirteçleri saklamak için kullanılabilir. Onları kaldırmak içinDisconnect-AzAccount
kullanın.taraf ihlal edilmiş
İç Çalışan
Yaygın Olarak Kullanılan Spear Phishing (kimlik bilgileri veya Oauth Uygulaması)
Azure kiracısının içindeki herhangi bir kullanıcıyı ele geçirmemiş olsanız bile, ondan bazı bilgiler toplayabilirsiniz:
Az - Unauthenticated Enum & Initial EntryKimlik bilgilerini elde etmeyi başardıktan sonra, bu kimlik bilgilerinin kime ait olduğunu ve neye erişimi olduğunu bilmek için bazı temel numaralandırmalar yapmanız gerekmektedir:
Temel Numaralandırma
Numaralandırmanın en gürültülü kısmının giriş olduğunu, numaralandırmanın kendisi olmadığını unutmayın.
SSRF
Azure içindeki bir makinede SSRF bulduysanız, hileler için bu sayfaya bakın:
Giriş Koşullarını Atlama
Geçerli kimlik bilgileriniz olsa da giriş yapamıyorsanız, aşağıdaki yaygın korumalar olabilir:
IP beyaz listeleme -- Geçerli bir IP'yi ele geçirmeniz gerekiyor
Coğrafi kısıtlamalar -- Kullanıcının yaşadığı yeri veya şirketin ofislerinin bulunduğu yeri bulun ve aynı şehirden (veya en azından ülkeden) bir IP alın
Tarayıcı -- Belki sadece belirli bir işletim sisteminden (Windows, Linux, Mac, Android, iOS) bir tarayıcıya izin veriliyor. Kurbanın/şirketin hangi işletim sistemini kullandığını bulun.
Ayrıca, genellikle daha az sınırlıdır ve girişi daha az incelenir, bu nedenle Hizmet İlkesi kimlik bilgilerini ele geçirmeyi deneyebilirsiniz
Bunu atlattıktan sonra, başlangıç kurulumunuza geri dönebilir ve hala erişiminiz olabilir.
Alt Alan Ele Geçirme
Ben Kimim
az cli, AzureAD ve Az PowerShell'i nasıl kuracağınızı öğrenmek için Az - AzureAD bölümüne bakın.
Bilmeniz gereken ilk şeylerden biri, kim olduğunuzdur (hangi ortamda olduğunuz):
AzureAD
Az PowerShell
Azure'yi numaralandırmak için en önemli komutlardan biri Get-AzResource
komutudur. Bu komut, mevcut kullanıcının görünürlüğüne sahip olduğu kaynakları bilmenizi sağlar.
Aynı bilgilere web konsolundan veya "Tüm kaynaklar"ı aratarak da ulaşabilirsiniz.
AzureAD Numaralandırma
Varsayılan olarak, herhangi bir kullanıcının kullanıcıları, grupları, rolleri, hizmet prensiplerini vb. numaralandırmak için yeterli izni olmalıdır (varsayılan AzureAD izinlerini kontrol edin). Bir rehberi burada bulabilirsiniz:
Az - AzureAD (AAD)Şimdi, kimlik bilgileriniz hakkında biraz bilgiye sahip olduğunuzda (ve eğer bir kırmızı takım üyesiyseniz umarım tespit edilmemişsinizdir). Şimdi, ortamda hangi hizmetlerin kullanıldığını bulmak için zamanı geldi. Aşağıdaki bölümde, bazı yaygın hizmetleri numaralandırmak için bazı yöntemleri kontrol edebilirsiniz.
Hizmet Prensibi ve Erişim İlkesi
Bir Azure hizmeti, bir Sistem Kimliği (hizmetin kendisi) veya bir Kullanıcı Atanmış Yönetilen Kimlik kullanabilir. Bu Kimlik, örneğin bir KeyVault'ta sırları okumak için Erişim İlkesine sahip olabilir. Bu Erişim İlkeleri sınırlı olmalıdır (en az ayrıcalık ilkesi), ancak gereklenden daha fazla izne sahip olabilir. Tipik olarak, bir Uygulama Hizmeti, sırları ve sertifikaları almak için KeyVault kullanır.
Bu nedenle, bu kimlikleri keşfetmek faydalı olacaktır.
App Service SCM
App Service 'container'ına giriş yapmak için Kudu konsolu.
Webshell
portal.azure.com'u kullanın ve kabuğu seçin veya bash veya powershell için shell.azure.com'u kullanın. Bu kabuğun 'diski', bir depolama hesabında bir görüntü dosyası olarak saklanır.
Azure DevOps
Azure DevOps, Azure'dan ayrı bir hizmettir. Depoları, boruları (yaml veya yayın), panoları, wiki'leri ve daha fazlasını içerir. Değişken Grupları, değişken değerlerini ve sırlarını depolamak için kullanılır.
Otomatik Keşif Araçları
Stormspotter, Azure tarafından geliştirilen bir araçtır. Bu araç, Azure ortamında bulunan sanal makinelerin güvenlik durumunu değerlendirmek için kullanılır. Stormspotter, sanal makinelerin ağ trafiğini izler ve anormal aktiviteleri tespit eder. Bu sayede, potansiyel saldırıları veya güvenlik ihlallerini tespit etmek için kullanılabilir.
Stormspotter, Azure Security Center ile entegre çalışır ve güvenlik olaylarını ve tehditleri otomatik olarak tespit eder. Ayrıca, kullanıcıya anlık uyarılar ve raporlar sağlar. Bu sayede, güvenlik ekibi hızlı bir şekilde müdahale edebilir ve güvenlik açıklarını kapatmak için gerekli önlemleri alabilir.
Stormspotter, Azure ortamında bulunan sanal makinelerin güvenlik durumunu değerlendirmek ve potansiyel saldırıları tespit etmek için etkili bir araçtır.
AzureHound, Microsoft Azure bulut platformunda yapılan bir saldırıda kullanılan bir araçtır. Bu araç, Azure Active Directory (AAD) ve Azure Resource Manager (ARM) gibi Azure hizmetlerindeki güvenlik zayıflıklarını tespit etmek için kullanılır. AzureHound, BloodHound projesinin bir parçasıdır ve BloodHound'un özelliklerini Azure ortamına uyarlar.
AzureHound, Azure bulut ortamında yapılan bir saldırıda kullanılabilecek bir dizi saldırı vektörünü keşfetmek için kullanılır. Bu vektörler arasında kullanıcı hesapları, ayrıcalıklar, grup üyelikleri, hizmet bağlantı noktaları ve Azure kaynakları gibi bilgiler yer alır. Bu bilgiler, saldırganın hedef sisteme erişim sağlamasına ve daha fazla saldırı yapmasına olanak tanır.
AzureHound, Azure ortamında yapılan bir saldırıda kullanılabilecek bir dizi saldırı vektörünü keşfetmek için kullanılır. Bu vektörler arasında kullanıcı hesapları, ayrıcalıklar, grup üyelikleri, hizmet bağlantı noktaları ve Azure kaynakları gibi bilgiler yer alır. Bu bilgiler, saldırganın hedef sisteme erişim sağlamasına ve daha fazla saldırı yapmasına olanak tanır.
AzureHound, Azure ortamında yapılan bir saldırıda kullanılabilecek bir dizi saldırı vektörünü keşfetmek için kullanılır. Bu vektörler arasında kullanıcı hesapları, ayrıcalıklar, grup üyelikleri, hizmet bağlantı noktaları ve Azure kaynakları gibi bilgiler yer alır. Bu bilgiler, saldırganın hedef sisteme erişim sağlamasına ve daha fazla saldırı yapmasına olanak tanır.
AzureHound, Azure ortamında yapılan bir saldırıda kullanılabilecek bir dizi saldırı vektörünü keşfetmek için kullanılır. Bu vektörler arasında kullanıcı hesapları, ayrıcalıklar, grup üyelikleri, hizmet bağlantı noktaları ve Azure kaynakları gibi bilgiler yer alır. Bu bilgiler, saldırganın hedef sisteme erişim sağlamasına ve daha fazla saldırı yapmasına olanak tanır.
Azucar, Azure bulut platformunda yapılan bir güvenlik değerlendirmesi için bir araçtır. Bu araç, Azure ortamında bulunan kaynakları ve yapılandırmaları analiz etmek ve güvenlik açıklarını tespit etmek için kullanılır.
Azucar, Azure kaynaklarını otomatik olarak keşfeder ve bu kaynakların güvenlik yapılandırmalarını kontrol eder. Ayrıca, kullanıcıların yetkilendirme hatalarını ve ayrıcalık yükseltme fırsatlarını tespit etmek için de kullanılabilir.
Bu araç, Azure bulut platformunda yapılan bir pentest sırasında kullanılabilecek önemli bir kaynaktır. Azure ortamında güvenlik açıklarını tespit etmek ve düzeltmek için kullanılabilir.
MicroBurst, bir Azure ortamında yüksek hızda kimlik doğrulama saldırıları gerçekleştirmek için kullanılan bir araçtır. Bu araç, Azure Active Directory (AAD) kimlik doğrulama hizmetine karşı saldırılar gerçekleştirmek için tasarlanmıştır. MicroBurst, kimlik doğrulama isteklerini hızlı bir şekilde göndererek, kimlik doğrulama hizmetinin performansını etkileyebilir ve hatta hizmetin çökmesine neden olabilir. Bu saldırı, bir hedefin kimlik doğrulama hizmetine olan erişimini engelleyerek, hedefin iş sürekliliğini etkileyebilir.
PowerZure, Azure bulut platformunda güvenlik testleri yapmak için kullanılan bir PowerShell betiğidir. Bu betik, Azure bulut ortamında güvenlik açıklarını tespit etmek ve istismar etmek için çeşitli araçlar ve teknikler sağlar.
PowerZure, Azure kaynaklarını keşfetmek, kullanıcı hesaplarını analiz etmek, ayrıcalıklı erişim haklarını kontrol etmek, ağ trafiğini izlemek ve Azure hizmetlerini istismar etmek için kullanılabilir. Ayrıca, Azure bulut ortamında güvenlik açıklarını tespit etmek için kullanılan diğer araçlarla entegrasyon sağlar.
Bu betik, Azure bulut platformunda güvenlik testleri yapmak isteyen pentester'lar ve güvenlik araştırmacıları için değerli bir kaynaktır. PowerZure, Azure bulut ortamında güvenlik açıklarını tespit etmek ve istismar etmek için etkili bir araçtır.
Last updated