DCShadow
Last updated
Last updated
AWS Hacking'i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE) GCP Hacking'i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)
AD'de yeni bir Domain Controller kaydeder ve belirtilen nesnelerde değişiklikler ile ilgili herhangi bir log bırakmadan atributları (SIDHistory, SPNs...) itmek için kullanır. DA ayrıcalıklarına sahip olmanız ve root domain içinde olmanız gerekir. Yanlış veri kullanırsanız, oldukça kötü loglar görünecektir.
Saldırıyı gerçekleştirmek için 2 mimikatz örneğine ihtiyacınız var. Bunlardan biri, burada gerçekleştirmek istediğiniz değişiklikleri belirtmeniz gereken SYSTEM ayrıcalıklarıyla RPC sunucularını başlatacak, diğeri ise değerleri itmek için kullanılacaktır:
elevate::token
'ın mimikatz1
oturumunda çalışmayacağını unutmayın, çünkü bu iş parçacığının ayrıcalıklarını yükseltti, ancak işlemin ayrıcalığını yükseltmemiz gerekiyor.
Ayrıca bir "LDAP" nesnesi seçebilirsiniz: /object:CN=Administrator,CN=Users,DC=JEFFLAB,DC=local
Değişiklikleri bir DA'dan veya bu minimum izinlere sahip bir kullanıcıdan gönderebilirsiniz:
alan nesnesinde:
DS-Install-Replica (Alan içinde Replica Ekle/Kaldır)
DS-Replication-Manage-Topology (Replikasyon Topolojisini Yönet)
DS-Replication-Synchronize (Replikasyon Senkronizasyonu)
Yapılandırma konteynerindeki Siteler nesnesi (ve çocukları):
CreateChild and DeleteChild
DC olarak kaydedilen bilgisayar nesnesi:
WriteProperty (Yazma Değil)
hedef nesne:
WriteProperty (Yazma Değil)
Bu ayrıcalıkları ayrıcalıksız bir kullanıcıya vermek için Set-DCShadowPermissions kullanabilirsiniz (bu bazı günlükler bırakacaktır). Bu, DA ayrıcalıklarına sahip olmaktan çok daha kısıtlayıcıdır.
Örneğin: Set-DCShadowPermissions -FakeDC mcorp-student1 SAMAccountName root1user -Username student1 -Verbose
Bu, mcorp-student1 makinesinde oturum açtığında student1 kullanıcı adının root1user nesnesi üzerinde DCShadow izinlerine sahip olduğu anlamına gelir.
Aşağıdaki ACE'leri kullanıcının SID'si ile birlikte eklememiz gerekiyor:
Alan nesnesinde:
(OA;;CR;1131f6ac-9c07-11d1-f79f-00c04fc2dcd2;;UserSID)
(OA;;CR;9923a32a-3607-11d2-b9be-0000f87a36b2;;UserSID)
(OA;;CR;1131f6ab-9c07-11d1-f79f-00c04fc2dcd2;;UserSID)
Saldırgan bilgisayar nesnesinde: (A;;WP;;;UserSID)
Hedef kullanıcı nesnesinde: (A;;WP;;;UserSID)
Yapılandırma konteynerindeki Siteler nesnesinde: (A;CI;CCDC;;;UserSID)
Bir nesnenin mevcut ACE'sini almak için: (New-Object System.DirectoryServices.DirectoryEntry("LDAP://DC=moneycorp,DC=local")).psbase.ObjectSecurity.sddl
Bu durumda birden fazla değişiklik yapmanız gerektiğini unutmayın, sadece bir tane değil. Bu nedenle, mimikatz1 oturumu (RPC sunucusu) içinde yapmak istediğiniz her değişiklik için /stack
parametresini kullanın. Bu şekilde, tüm sıkışmış değişiklikleri sahte sunucuda gerçekleştirmek için yalnızca bir kez /push
yapmanız gerekecek.
DCShadow hakkında daha fazla bilgi için ired.team'i ziyaret edin.
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)