AD CS Domain Persistence
Bu, https://www.specterops.io/assets/resources/Certified_Pre-Owned.pdf adresinde paylaşılan alan kalıcılığı tekniklerinin özeti. Daha fazla ayrıntı için kontrol edin.
Çalıntı CA Sertifikaları ile Sertifikaları Sahteleme - DPERSIST1
Bir sertifikanın bir CA sertifikası olduğunu nasıl anlarsınız?
Bir sertifikanın bir CA sertifikası olduğu belirlenebilir, eğer şu koşullar sağlanıyorsa:
Sertifika, özel anahtarının makinenin DPAPI'si veya işletim sistemi bunu destekliyorsa TPM/HSM gibi donanım tarafından güvence altına alınmış şekilde CA sunucusunda depolanır.
Sertifikanın İhraç Eden ve Konu alanları, CA'nın ayırt edici adıyla eşleşir.
"CA Sürümü" uzantısı yalnızca CA sertifikalarında bulunur.
Sertifikada Genişletilmiş Anahtar Kullanımı (EKU) alanları bulunmaz.
Bu sertifikanın özel anahtarını çıkarmak için, CA sunucusundaki certsrv.msc
aracı, yerleşik GUI üzerinden desteklenen yöntemdir. Bununla birlikte, bu sertifika sistemde depolanan diğer sertifikalardan farklı değildir; bu nedenle, çıkarma için THEFT2 tekniği gibi yöntemler uygulanabilir.
Sertifika ve özel anahtar ayrıca aşağıdaki komutla Certipy kullanılarak elde edilebilir:
.pfx
formatında CA sertifikası ve özel anahtar elde edildikten sonra, ForgeCert gibi araçlar kullanılarak geçerli sertifikalar oluşturulabilir:
Sertifika sahteciliği için hedeflenen kullanıcının etkin ve Active Directory'de kimlik doğrulama yapabilme yeteneğine sahip olması gerekmektedir. krbtgt gibi özel hesaplar için sertifika sahteciliği etkisizdir.
Bu sahte sertifika, belirtilen bitiş tarihine kadar geçerli olacak ve kök CA sertifikası geçerli olduğu sürece (genellikle 5 ila 10+ yıl) geçerli olacaktır. Ayrıca, makinelere yönelik olarak da geçerlidir, bu nedenle S4U2Self ile birleştirildiğinde, saldırgan CA sertifikası geçerli olduğu sürece herhangi bir etki alanı makinesinde kalıcılık sağlayabilir. Ayrıca, bu yöntemle üretilen sertifikaların iptal edilemeyeceği unutulmamalıdır çünkü CA bunlardan haberdar değildir.
Güvenilmez CA Sertifikalarına Güvenme - DPERSIST2
NTAuthCertificates
nesnesi, içinde bir veya daha fazla CA sertifikası içeren cacertificate
özelliğine sahiptir ve Active Directory (AD) bunu kullanır. Erişim denetleyicisi, kimlik doğrulayan sertifikadaki İhraç Eden alanında belirtilen CA ile eşleşen bir girişin NTAuthCertificates
nesnesini kontrol eder. Eşleşme bulunursa kimlik doğrulama devam eder.
Bir saldırgan, bu AD nesnesi üzerinde kontrol sahibi olduktan sonra, NTAuthCertificates
nesnesine bir öz imzalı CA sertifikası ekleyebilir. Normalde, yalnızca Enterprise Admin grubunun üyeleri, Domain Admins veya Administrators ile forest root’unun etki alanındaki bu nesneyi değiştirme izni verilir. certutil.exe
kullanarak NTAuthCertificates
nesnesini düzenleyebilirler. Komutu certutil.exe -dspublish -f C:\Temp\CERT.crt NTAuthCA126
veya PKI Health Tool kullanarak düzenleyebilirler.
Bu yetenek, ForgeCert ile dinamik olarak sertifikalar oluşturmak için kullanılan bir yöntemle birlikte kullanıldığında özellikle önemlidir.
Kötü Amaçlı Yapılandırma - DPERSIST3
AD CS bileşenlerinin güvenlik tanımlayıcılarının değiştirilmesi yoluyla kalıcılık için fırsatlar bolca bulunmaktadır. "Etki Alanı Yükseltme" bölümünde açıklanan değişiklikler, yükseltilmiş erişime sahip bir saldırgan tarafından kötü amaçlı olarak uygulanabilir. Bu, şunlar gibi hassas bileşenlere "kontrol hakları" (örneğin, WriteOwner/WriteDACL vb.) eklemeyi içerir:
CA sunucusunun AD bilgisayar nesnesi
CA sunucusunun RPC/DCOM sunucusu
CN=Public Key Services,CN=Services,CN=Configuration,DC=<DOMAIN>,DC=<COM>
içindeki herhangi bir alt nesne veya konteyner (örneğin, Sertifika Şablonları konteyneri, Sertifika Yetkilileri konteyneri, NTAuthCertificates nesnesi vb.)Varsayılan olarak veya kuruluş tarafından AD CS'yi kontrol etme yetkisi verilen AD grupları (örneğin, yerleşik Cert Publishers grubu ve üyelerinden herhangi biri)
Kötü amaçlı uygulamanın bir örneği, etki alanında yükseltilmiş izinlere sahip olan bir saldırganın, varsayılan User
sertifika şablonuna WriteOwner
iznini, saldırganın kendisini hak sahibi olarak eklemesiyle eklemesini içerebilir. Bunun için saldırgan önce User
şablonunun sahipliğini kendisine değiştirir. Bundan sonra, şablonda ENROLLEE_SUPPLIES_SUBJECT
'i etkinleştirmek için mspki-certificate-name-flag
1 olarak ayarlanır ve bir kullanıcının talepte Alternatif Bir İsim sağlamasına izin verilir. Ardından, saldırgan şablonda kullanarak, bir etki alanı yöneticisi adını alternatif bir isim olarak seçebilir ve elde edilen sertifikayı DA olarak kimlik doğrulama için kullanabilir.
Last updated