Az - Unauthenticated Enum & Initial Entry
Azure Kiracı
Kiracı Numaralandırma
Sadece kiracının alan adını bilen bir saldırganın daha fazla bilgi toplamak için sorgulayabileceği bazı genel Azure API'leri bulunmaktadır. API'yi doğrudan sorgulayabilir veya PowerShell kütüphanesi AADInternals kullanabilirsiniz:
API | Bilgi | AADInternals işlevi |
---|---|---|
login.microsoftonline.com/<domain>/.well-known/openid-configuration | Kiracı kimlik bilgileri dahil olmak üzere Giriş bilgileri |
|
autodiscover-s.outlook.com/autodiscover/autodiscover.svc | Kiracının tüm alan adları |
|
login.microsoftonline.com/GetUserRealm.srf?login=<UserName> | Kiracının Giriş bilgileri, kiracı Adı ve alan adı dahil olmak üzere giriş kimlik bilgileri
Eğer |
|
login.microsoftonline.com/common/GetCredentialType | Masaüstü SSO bilgileri dahil olmak üzere Giriş bilgileri |
|
Azure kiracısının tüm bilgilerini AADInternals kütüphanesinin sadece bir komutu ile sorgulayabilirsiniz:
Azure kiracı bilgilerinin çıktı örneği:
Tenant'ın adı, kimliği ve "marka" adı hakkında ayrıntıları gözlemlemek mümkündür. Ayrıca, Masaüstü Tek Oturum Açma (SSO) durumu, aynı zamanda Seamless SSO olarak bilinir, görüntülenir. Bu özellik etkinleştirildiğinde, bu özelliğin hedef organizasyondaki belirli bir kullanıcının varlığının belirlenmesini (enumarasyon) kolaylaştırır.
Ayrıca, çıktı hedef kiracıyla ilişkilendirilmiş tüm doğrulanmış alanların adlarını ve bunların ilgili kimlik türlerini sunar. Federasyonlu alanlar durumunda, genellikle kullanılan kimlik sağlayıcının Tam Nitelikli Alan Adı (FQDN) bilgisi, tipik olarak bir ADFS sunucusu, ayrıca açıklanır. "MX" sütunu e-postaların Exchange Online'a yönlendirilip yönlendirilmediğini belirtirken, "SPF" sütunu Exchange Online'ı bir e-posta gönderici olarak listeler. Mevcut keşif işlevinin SPF kayıtlarındaki "include" ifadelerini ayrıştırmadığı, bu durumun yanlış negatiflere neden olabileceği önemlidir.
Kullanıcı Enumarasyonu
Tenant içinde bir kullanıcı adının var olup olmadığını kontrol etmek mümkündür. Bu aynı zamanda konuk kullanıcıları da içerir, bunların kullanıcı adı şu formatta olabilir:
E-posta, kullanıcının e-posta adresidir ve "@" işareti alt tire ile "_" ile değiştirilmiştir.
AADInternals ile kullanıcının var olup olmadığını kolayca kontrol edebilirsiniz:
Kimlik Doğrulamasız Bilgi Toplama ve İlk Giriş
Bu bölümde, Azure bulut platformunda kimlik doğrulamasız bilgi toplama ve ilk giriş adımlarını ele alacağız.
Bilgi Toplama
Azure Portal URL'sini Belirleme: Azure portal URL'sini belirleyerek hedef bulut ortamına erişim sağlayabiliriz.
Hedefin IP Aralığını Belirleme: Hedefin IP aralığını belirleyerek hedefin ağ yapılandırmasını anlayabiliriz.
Blob Depolama Hizmeti Taraması: Blob depolama hizmetlerini taramak için otomatize araçlar kullanabiliriz.
İlk Giriş
Blob Depolama Hizmetine Erişim: Blob depolama hizmetine kimlik doğrulamasız erişim sağlayarak veri çalma veya değiştirme olasılığını değerlendirebiliriz.
Azure Functions Kullanımı: Azure Functions gibi hizmetler aracılığıyla kimlik doğrulamasız kod yürüterek sisteme giriş yapabiliriz.
Azure Container Instances Kullanımı: Azure Container Instances üzerinde kimlik doğrulamasız konteyner çalıştırarak sisteme sızma olasılığını değerlendirebiliriz.
Ayrıca, her satırda bir e-posta adresi içeren bir metin dosyası da kullanabilirsiniz:
Üç farklı numaralandırma yöntemi arasından seçim yapabilirsiniz:
Yöntem | Açıklama |
---|---|
Normal | Yukarıda bahsedilen GetCredentialType API'sine atıfta bulunur. Varsayılan yöntem. |
Giriş | Bu yöntem, kullanıcı olarak oturum açmaya çalışır. Not: sorgular oturum açma kaydına kaydedilecektir. |
Otomatik Giriş | Bu yöntem, kullanıcı olarak otomatik giriş uç noktası aracılığıyla oturum açmaya çalışır. Sorgular oturum açma kaydına kaydedilmez! Bu nedenle, parola püskürtme ve kaba kuvvet saldırıları için de iyi çalışır. |
Geçerli kullanıcı adlarını keşfettikten sonra bir kullanıcı hakkında bilgi alabilirsiniz:
Betik o365creeper ayrıca bir e-postanın geçerli olup olmadığını keşfetmenize olanak tanır.
Microsoft Teams Üzerinden Kullanıcı Numaralandırma
Bilgi için başka bir iyi kaynak Microsoft Teams'tir.
Microsoft Teams'in API'si kullanıcılara yönelik arama yapmaya izin verir. Özellikle "kullanıcı arama" uç noktaları externalsearchv3 ve searchUsers Teams'e kayıtlı kullanıcı hesapları hakkında genel bilgi talep etmek için kullanılabilir.
API yanıtına bağlı olarak, mevcut olmayan kullanıcılar ile geçerli bir Teams aboneliği olan mevcut kullanıcılar arasında ayrım yapmak mümkündür.
TeamsEnum betiği, belirli bir kullanıcı adı setini Teams API'sine karşı doğrulamak için kullanılabilir.
Kimlik Doğrulamasız Enum ve Başlangıç Girişi
Bu senaryoda, hedef Azure hedefinin kimlik doğrulamasız bir şekilde nasıl keşfedileceğini ve erişilebileceğini göstereceğiz.
Adım 1: Enumerasyon
Hedef Azure hedefini hedeflemek için, öncelikle hedefin IP adresini veya alan adını belirleyin. Ardından, aşağıdaki adımları izleyerek hedefteki kaynakları keşfedin:
Azure Portalı'na gidin ve hedef Azure hedefinin URL'sini ziyaret edin.
Kaynakları ve hizmetleri inceleyin, erişilebilir olanları belirleyin.
Adım 2: Başlangıç Girişi
Kimlik doğrulamasız bir şekilde erişilebilen bir kaynak veya hizmet bulduktan sonra, aşağıdaki adımları izleyerek başlangıç girişini gerçekleştirin:
Erişilebilir bir kaynağın veya hizmetin URL'sini belirleyin.
Tarayıcınızı veya bir API istemcisini kullanarak erişim sağlayın.
Veri çalma, değiştirme veya hizmetin işlevselliğini kötüye kullanma gibi saldırı vektörlerini test edin.
Bu adımları takip ederek, Azure hedefinde kimlik doğrulamasız bir şekilde enum yapabilir ve başlangıç girişini gerçekleştirebilirsiniz.
Ayrıca, mevcut kullanıcılar hakkında kullanılabilirlik bilgilerini şu şekilde sıralamak mümkündür:
Kullanılabilir
Uzakta
Rahatsız Etmeyin
Meşgul
Çevrimdışı
Eğer bir dışarıda mesajı yapılandırılmışsa, TeamsEnum kullanılarak mesaj alınabilir. Bir çıkış dosyası belirtildiyse, dışarıda mesajları otomatik olarak JSON dosyasında saklanır:
Kimlik Doğrulamasız Bilgi Toplama ve İlk Giriş
Bu bölümde, Azure bulut platformunda kimlik doğrulamasız bilgi toplama ve ilk giriş için kullanılabilecek bazı teknikler açıklanmaktadır. Bu teknikler, zayıf yapılandırılmış veya hatalı yapılandırılmış Azure hizmetlerine erişim sağlayabilir ve sızma testi sırasında faydalı olabilir. Bu tekniklerin kullanımı yasa dışı olabilir, bu nedenle yalnızca yasal izinler çerçevesinde ve etik sınırlar içinde kullanılmalıdır.
Azure Hizmetleri
Azure kiracısının kullandığı alan adlarını bildiğimize göre şimdi açığa çıkarılmış Azure hizmetlerini bulmaya çalışma zamanı.
Bu hedefe ulaşmak için MicroBust'tan bir yöntem kullanabilirsiniz. Bu işlev, temel alan adını (ve birkaç türevini) birkaç Azure hizmet alanında arayacaktır:
Açık Depolama
Açık depolama hesaplarını bulmaya çalışmak için InvokeEnumerateAzureBlobs.ps1 gibi bir araç kullanabilirsiniz. Bu araç, Microburst/Misc/permitations.txt
dosyasını kullanarak basit permütasyonlar oluşturacak ve açık depolama hesaplarını bulmaya çalışacaktır.
SAS URL'leri
Bir paylaşılan erişim imzası (SAS) URL'si, belirli bir Depolama hesabının belirli bir bölümüne (tam bir konteyner, bir dosya olabilir...) belirli izinlerle (okuma, yazma...) erişim sağlayan bir URL'dir. Eğer sızdırılmış bir tane bulursanız, hassas bilgilere erişebilirsiniz, şöyle görünürler (bu bir konteynere erişim sağlamak için, eğer sadece bir dosyaya erişim sağlıyorsa URL'nin yolu aynı zamanda o dosyayı da içerecektir):
https://<storage_account_name>.blob.core.windows.net/newcontainer?sp=r&st=2021-09-26T18:15:21Z&se=2021-10-27T02:14:21Z&spr=https&sv=2021-07-08&sr=c&sig=7S%2BZySOgy4aA3Dk0V1cJyTSIf1cW%2Fu3WFkhHV32%2B4PE%3D
Verilere erişmek için Storage Explorer kullanın
Kimlik Bilgilerinin Tehdit Altında Olması
Sosyal Mühendislik
Yaygın Sosyal Mühendislik (kimlik bilgileri veya OAuth Uygulaması -Yasadışı Onay Verme Saldırısı-)
Parola Sıkmak / Kaba Kuvvet Saldırısı
Az - Password SprayingReferanslar
Last updated