Az - Cloud Kerberos Trust
Last updated
Last updated
AWS Hacking öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE) GCP Hacking öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)
Bu gönderi, saldırı hakkında daha fazla bilgi için kontrol edilebilecek https://dirkjanm.io/obtaining-domain-admin-from-azure-ad-via-cloud-kerberos-trust/ adresinin bir özetidir. Bu teknik ayrıca https://www.youtube.com/watch?v=AFay_58QubY** adresinde yorumlanmıştır.**
Azure AD ile bir güven kurulduğunda, AD'de bir Okuma Yalnızca Alan Denetleyicisi (RODC) oluşturulur. RODC bilgisayar hesabı, AzureADKerberos$
olarak adlandırılır. Ayrıca, krbtgt_AzureAD
adında bir ikincil krbtgt
hesabı oluşturulur. Bu hesap, Azure AD'nin oluşturduğu biletler için kullanılan Kerberos anahtarlarını içerir.
Bu nedenle, bu hesap ele geçirilirse, herhangi bir kullanıcıyı taklit etmek mümkün olabilir... ancak bu doğru değildir çünkü bu hesap, Alan Yöneticileri, Kurumsal Yöneticiler, Yöneticiler gibi herhangi bir yaygın ayrıcalıklı AD grubuna bilet oluşturma yetkisine sahip değildir.
Ancak, gerçek bir senaryoda, bu gruplarda yer almayan ayrıcalıklı kullanıcılar olacaktır. Bu nedenle, yeni krbtgt hesabı, ele geçirilirse, onları taklit etmek için kullanılabilir.
Ayrıca, bir kullanıcı Windows'ta hibrit kimlik kullanarak kimlik doğruladığında, Azure AD, PRT ile birlikte kısmi Kerberos bileti verecektir. TGT kısmi olarak, çünkü AzureAD'nin on-prem AD'deki kullanıcı hakkında sınırlı bilgisi vardır (güvenlik tanımlayıcısı (SID) ve isim gibi).
Windows, ardından krbtgt
hizmeti için bir hizmet bileti talep ederek bu kısmi TGT'yi tam TGT ile değiştirebilir.
Kerberos kimlik doğrulamasını desteklemeyen ancak NTLM'yi destekleyen hizmetler olabileceğinden, PADATA talebinin PADATA kısmında KERB-KEY-LIST-REQ
alanını dahil ederek ikincil bir krbtgt
anahtarı kullanılarak imzalanmış bir kısmi TGT talep etmek ve ardından yanıt içinde NT hash ile imzalanmış tam bir TGT almak mümkündür.
AzureAD bir kısmi TGT oluşturduğunda, kullanıcı hakkında sahip olduğu ayrıntıları kullanacaktır. Bu nedenle, bir Global Admin, AzureAD'deki kullanıcının güvenlik tanımlayıcısını ve adını değiştirebilirse, o kullanıcı için bir TGT talep ettiğinde güvenlik tanımlayıcısı farklı olacaktır.
Bunu Microsoft Graph veya Azure AD Graph aracılığıyla yapmak mümkün değildir, ancak Global Admin'lerin senkronize kullanıcıları oluşturmak ve güncellemek için kullandığı API'yi kullanmak mümkündür; bu, Global Admin'lerin herhangi bir hibrit kullanıcının SAM adını ve SID'sini değiştirmesine olanak tanır ve ardından kimlik doğruladığımızda, değiştirilmiş SID'yi içeren bir kısmi TGT alırız.
Bunu AADInternals ile yapabileceğimizi ve senkronize kullanıcılara Set-AADIntAzureADObject cmdlet'i aracılığıyla güncelleyebileceğimizi unutmayın.
Saldırının başarısı ve Alan Yöneticisi ayrıcalıklarının elde edilmesi, belirli ön koşulların karşılanmasına bağlıdır:
Hesapları Senkronizasyon API'si aracılığıyla değiştirme yeteneği kritik öneme sahiptir. Bu, Global Admin rolüne sahip olmak veya bir AD Connect senkronizasyon hesabına sahip olmakla sağlanabilir. Alternatif olarak, Hibrit Kimlik Yöneticisi rolü yeterli olacaktır, çünkü bu, AD Connect'i yönetme ve yeni senkronizasyon hesapları oluşturma yetkisi verir.
Hibrit bir hesabın varlığı gereklidir. Bu hesap, kurban hesabının ayrıntılarıyla değiştirilmek üzere uygun olmalı ve kimlik doğrulama için de erişilebilir olmalıdır.
Active Directory içinde bir hedef kurban hesabının tanımlanması gereklidir. Saldırı, zaten senkronize edilmiş herhangi bir hesap üzerinde gerçekleştirilebilir, ancak Azure AD kiracısının on-prem güvenlik tanımlayıcılarını çoğaltmamış olması gerekir; bu, bileti elde etmek için senkronize edilmemiş bir hesabın değiştirilmesini gerektirir.
Ayrıca, bu hesabın alan yöneticisi eşdeğer ayrıcalıklara sahip olması gerekir, ancak AzureAD RODC tarafından geçersiz TGT'lerin üretilmesini önlemek için tipik AD yönetici gruplarının bir üyesi olmamalıdır.
En uygun hedef, AD Connect Senkronizasyon hizmeti tarafından kullanılan Active Directory hesabıdır. Bu hesap Azure AD ile senkronize edilmez, bu da SID'sinin geçerli bir hedef olmasını sağlar ve şifre karmaşalarını senkronize etme rolü nedeniyle doğası gereği Alan Yöneticisi eşdeğer ayrıcalıklara sahiptir (Şifre Karma Senkronizasyonu aktif varsayılarak). Hızlı kurulum olan alanlar için bu hesap MSOL_ ile başlar. Diğer durumlarda, bu hesap, alan nesnesinde Dizin Çoğaltma ayrıcalıklarına sahip tüm hesapları listeleyerek belirlenebilir.
Bunu orijinal gönderide kontrol edin: https://dirkjanm.io/obtaining-domain-admin-from-azure-ad-via-cloud-kerberos-trust/
AWS Hacking öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE) GCP Hacking öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)