Az - PHS - Password Hash Sync
Last updated
Last updated
AWS Hacking'i öğrenin ve pratik yapın:HackTricks Eğitim AWS Kırmızı Takım Uzmanı (ARTE) GCP Hacking'i öğrenin ve pratik yapın: HackTricks Eğitim GCP Kırmızı Takım Uzmanı (GRTE)
Belgelerden: Parola hash senkronizasyonu, hibrit kimlik elde etmek için kullanılan oturum açma yöntemlerinden biridir. Azure AD Connect, bir kullanıcının parolasının hash'inin, on-premises Active Directory örneğinden bulut tabanlı Azure AD örneğine senkronize edilmesini sağlar.
Bu, şirketler tarafından on-prem AD'yi Azure AD ile senkronize etmek için kullanılan en yaygın yöntemdir.
Tüm kullanıcılar ve parola hash'lerinin hash'i on-prem'den Azure AD'ye senkronize edilir. Ancak, düz metin parolalar veya orijinal hash'ler Azure AD'ye gönderilmez. Ayrıca, Yerleşik güvenlik grupları (alan yöneticileri gibi...) Azure AD'ye senkronize edilmez.
Hash senkronizasyonu her 2 dakikada bir gerçekleşir. Ancak, varsayılan olarak, parola süresi dolma ve hesap süresi dolma Azure AD'de senkronize edilmez. Bu nedenle, on-prem parolasının süresi dolmuş (değiştirilmemiş) bir kullanıcı, eski parolayı kullanarak Azure kaynaklarına erişmeye devam edebilir.
Bir on-prem kullanıcısı bir Azure kaynağına erişmek istediğinde, kimlik doğrulama Azure AD'de gerçekleşir.
PHS, Kimlik Koruma ve AAD Alan Hizmetleri gibi özellikler için gereklidir.
PHS yapılandırıldığında bazı ayrılmış hesaplar otomatik olarak oluşturulur:
MSOL_<installationID>
hesabı, on-prem AD'de otomatik olarak oluşturulur. Bu hesaba Dizin Senkronizasyon Hesapları rolü verilir (bkz. belgeler), bu da onun on-prem AD'de replikasyon (DCSync) izinlerine sahip olduğu anlamına gelir.
Azure AD'de Sync_<on-prem ADConnect Sunucusunun adı>_installationID
adlı bir hesap oluşturulur. Bu hesap, Azure AD'deki HERHANGİ bir kullanıcının (senkronize edilmiş veya yalnızca bulut) parolasını sıfırlayabilir.
Önceki iki ayrıcalıklı hesabın parolaları, Azure AD Connect'in kurulu olduğu sunucudaki bir SQL sunucusunda saklanır. Yöneticiler, bu ayrıcalıklı kullanıcıların parolalarını düz metin olarak çıkarabilir.
Veritabanası C:\Program Files\Microsoft Azure AD Sync\Data\ADSync.mdf
konumundadır.
Bir tablodan yapılandırmayı çıkarmak mümkündür, biri şifreli olmak üzere:
SELECT private_configuration_xml, encrypted_configuration FROM mms_management_agent;
Şifreli yapılandırma, DPAPI ile şifrelenmiştir ve on-prem AD'deki MSOL_*
kullanıcısının parolalarını ve AzureAD'deki Sync_* parolasını içerir. Bu nedenle, bunları ele geçirerek AD ve AzureAD'ye yükseltilmiş erişim sağlamak mümkündür.
Bu kimlik bilgilerin nasıl saklandığı ve çözüldüğüne dair tam bir genel bakış bu konuşmada bulunmaktadır.
Eğer Azure AD connect'in kurulu olduğu sunucu alan katılımcısıysa (belgelerde önerilir), onu bulmak mümkündür:
Bu kimlik bilgilerini elde etmek için adconnectdump aracını da kullanabilirsiniz.
Sync_*
hesabını ele geçirerek, herhangi bir kullanıcının (Global Yöneticiler dahil) şifresini sıfırlamak mümkündür.
Aynı zamanda sadece bulut kullanıcılarının şifrelerini değiştirmek de mümkündür (bu beklenmedik olsa bile)
Kullanıcının şifresini dökmek de mümkündür.
Başka bir seçenek, Sync kullanıcısının izinlere sahip olduğu bir hizmet ilkesi için ayrıcalıklı izinler atamak ve ardından o hizmet ilkesine erişmek olarak privesc sağlamaktır.
PHS ile Seamless SSO kullanmak mümkündür, bu da diğer kötüye kullanımlara açıktır. Bunu kontrol edin:
Az - Seamless SSOLearn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)