Ağ haritalama (Enumeration), sızma testi metodolojilerinden biridir. Hedef ile aktif bir bağ oluşturulduğunda ve hedefe saldırıda bulunurken giriş noktasını tespit etmek amacıyla sistemin ağ yapısının detaylı belirlenmesidir:
Açık sistemler ve üzerindeki açık portlar, servisler ve servislerin hangi yazılımın hangi sürümü olduğu bilgileri, ağ girişlerinde bulunan VPN, Firewall, IPS cihazlarının belirlenmesi, sunucu sistemler çalışan işletim sistemlerinin ve versiyonlarının belirlenmesi ve tüm bu bileşenler belirlendikten sonra hedef sisteme ait ağ haritasının çıkartılması Ağ haritalama adımlarında yapılmaktadır.
Aktif Dizin (Active Directory) Güvenlik Testleri - I: Bilgi Toplama
1. Aktif Dizin(Active Directory) Güvenlik
Testleri - I: Bilgi Toplama
Orhan YILDIRIM
orhan.yildirim@bgasecurity.com
19.05.2020
2. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
1BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
İçindekiler
İçindekiler ..................................................................................................................................................................................... 1
Teşekkür ........................................................................................................................................................................................ 2
Giriş .................................................................................................................................................................................................. 3
Etki Alanı Üzerinde Ağ Haritalama ..................................................................................................................................... 4
Etki Alanının Belirlenmesi ................................................................................................................................................. 4
Etki Alanına Ait SID ............................................................................................................................................................... 9
Group Policy Tespiti .......................................................................................................................................................... 10
Organisational Unit (OU) ............................................................................................................................................ 16
Etki Alanı Denetleyicisinin Belirlenmesi .................................................................................................................. 19
Kullanıcılar ve Özelliklerinin Tespit Edilmesi ........................................................................................................ 22
Etki Alanında Bulunan Sistemlerin Tespit Edilmesi ............................................................................................ 28
Grupların Tespit Edilmesi ............................................................................................................................................... 31
Aktif Oturumların Tespit Edilmesi .............................................................................................................................. 38
Sisteme Ait Paylaşımlar ve Hassas Dosyaların Tespit Edilmesi ..................................................................... 39
Erişim Kontrol Listeleri (Access Control Lists -ACLs) ........................................................................................ 41
DACL .................................................................................................................................................................................... 41
SACL ..................................................................................................................................................................................... 42
Etki Alanları Arasında Güven İlişkisi (Trusts) ....................................................................................................... 45
Güven Yönü (Trust Direction) .................................................................................................................................. 45
Forest Güven İlişkisi (Forest Trusts) ..................................................................................................................... 48
Kullanıcı Avcılığı (User Hunting) ................................................................................................................................. 53
3. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
2BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Teşekkür
Bu döküman Pentester Academy Kuruluşu tarafından düzenlenen “Attacking And Defending Active
Directory” eğitimi içeriği referans alınarak düzenlenmiştir. İlgili eğitim içeriğinin hazırlanması için emek
gösteren saygıdeğer Nikhil Mittal’ a ve Pentester Academy çalışanları başta olmak üzere Vivek
Ramachandran’a BGA Bilgi Güvenliği Akademisi A.Ş. olarak teşekkür ederiz.
This document has been prepared with reference to “Attacking And Defending Active Directory” training
content organized by Nikhil Mittal from Pentester Academy Organization. We thank the respected Nikhil
Mittal, Pentester Academy staff and Vivek Ramachandran for their efforts to prepare the relevant
training content.
4. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
3BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Giriş
Ağ haritalama (Enumeration), sızma testi metodolojilerinden biridir. Hedef ile aktif bir bağ
oluşturulduğunda ve hedefe saldırıda bulunurken giriş noktasını tespit etmek amacıyla sistemin ağ
yapısının detaylı belirlenmesidir:
Açık sistemler ve üzerindeki açık portlar, servisler ve servislerin hangi yazılımın hangi sürümü olduğu
bilgileri, ağ girişlerinde bulunan VPN, Firewall, IPS cihazlarının belirlenmesi, sunucu sistemler çalışan
işletim sistemlerinin ve versiyonlarının belirlenmesi ve tüm bu bileşenler belirlendikten sonra hedef
sisteme ait ağ haritasının çıkartılması Ağ haritalama adımlarında yapılmaktadır.
Ağ haritalama bir aktif bilgi toplama yöntemidir.
Bu döküman etki alanı üzerinde ağ haritalama ile etki alanı ve barındırdığı varlıkları, varlıkların güven
ilişkilerini, yetkilendirmeleri inceleme adımlarını içermektedir.
“Enumeration” yapılırken aşağıdaki uygulamalar kullanılacaktır.
• PowerView
(https://github.com/PowerShellMafia/PowerSploit/blob/master/Recon/PowerView.ps1)
• Active Directory Powershell Modülü
(https://docs.microsoft.com/en-us/powershell/module/addsadministration/?view=win10-
pshttps://github.com/samratashok/ADModule)
Birçok işlevi için her iki uygulama da benzer sonuçlar veriyorken. Ağırlıklı olarak “PowerView” uygulaması
kullanılacaktır. Ancak Microsoft imzalı olması sebebiyle “Active Directory Powershell Modülü” daha
güvenli ve etki alanında bulunan güvenlik mekanizmalarının modül ile birlikte çalışılırken müdahalede
bulunmamasını sağlamaktadır.
5. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
4BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Etki Alanı Üzerinde Ağ Haritalama
Etki Alanının Belirlenmesi
Bulunan etki alanının tespit edilebilmesi amacıyla aşağıdaki komut kullanılmaktadır.
PowerView:
Get-NetDomain
Active Directory Modülü:
Get-NetDomain
PowerView uygulamasına ait komut kullanıldığında etki alanına ait aşağıdaki ekran görüntüsünde verilen
çıktıları vermektedir.
6. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
5BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Active Directory modülüne ait komut kullanıldığında etki alanına ait aşağıdaki ekran görüntüsünde verilen
çıktıları vermektedir.
Her iki ekran görüntüsündeki bilgiler yorumlandığında aşağıdaki sonuçlara ulaşılmaktadır.
Mevcut etki alanı : dollarcorp.moneycorp.local
Forest : moneycorp.local
Parent : moneycorp.local
Domain Controller : dcorp-dc.dollarcorp.moneycorp.local
Bu bilgiler sonucunda mevcut etki alanından toplanacak bilgiler ile etki alanına bağlı sistemler üzerinde
bulunan zafiyet kötüye kullanılarak forest etki alanına sıçranmak hedeflenmektedir.
Tespit edilen etki alanları ile ilgil daha detaylı bilgi toplayabilmek için aşağıdaki komut kullanılacaktır.
PowerView:
Get-NetDomain -Domain moneycorp.local
Active Directory Modülü:
7. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
6BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Get-ADDomain -Identity moneycorp.local
Her iki uygulamaya ait yukarıda verilen komutlar ile az önce tespit edilen forest etki alanına ait detaylar
görüntülenebilecektir.
PowerView uygulamasına ait komut kullanıldığında etki alanına ait aşağıdaki ekran görüntüsünde verilen
çıktıları vermektedir.
Active Directory modülüne ait komut kullanıldığında etki alanına ait aşağıdaki ekran görüntüsünde verilen
çıktıları vermektedir.
8. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
7BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Her iki ekran görüntüsündeki bilgiler yorumlandığında aşağıdaki sonuçlara ulaşılmaktadır.
Mevcut etki alanı : moneycorp.local
Forest : moneycorp.local
Child : dollarcorp.moneycorp.local
Domain Controller : mcorp-dc.moneycorp.local
Group Policy Objleri ve Domain SID bilgileri elde edilmiştir.
Bu bilgiler sonucunda etki alanına ait aşağıdaki diyagram imgelenebilmektedir.
9. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
8BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Her iki etki alanı arasında PARENT-CHILD güven ilişkisi bulunmakta ve aynı zamanda FOREST olarak
moneycorp.local alan adı etki alanı olarak belirlenmiştir.
10. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
9BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Etki Alanına Ait SID
SID (Security Identifier), etki alanına dahil olan herhangi bir sistem veya etki alanı denetleyicisinin(DC) etki
alanına dahil olan bir diğer objeyi tanımlamak için kullandığı benzersiz tekil bir kimlik numarasıdır.
SID tespit etmek amacıyla aşağıdaki komut kullanılır.
PowerView:
Get-DomainSID
Active Directory Modülü:
(Get-ADDomain).DomainSID
PowerView uygulamasına ait komut kullanıldığında etki alanına ait aşağıdaki ekran görüntüsünde verilen
çıktıları vermektedir.
Active Directory modülüne ait komut kullanıldığında etki alanına ait aşağıdaki ekran görüntüsünde verilen
çıktıları vermektedir.
11. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
10BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Group Policy Tespiti
Grup politikaları AD üzerinde bulunan objelerle ilgili yetkilendirme ve izin gibi konfigürasyonları kolay bir
şekilde gerçekleştirilebilmesini sağlamaktadır.
Güvenlik yapılandırmaları, kayıt defteri seviyesinde politika kuralları oluşturmak, sistemin başlangıç,
kapanış, oturum açma ve kapatma ayarları ve yazılım yüklenmesi gibi birçok konfigürasyonu merkezi ve
kolay bir şekilde gerçekleştirilebilmesine yardımcı olmaktadır.
Sistem yöneticilerinin sıklıkla kullandıkları bu yöntem aslında birçok istismar yöntemine de açık hale
gelebilmektedir. Hak yükseltmele, backdoor oluşturma ve etki alanında kalıcı olmak gibi istismar
yöntemlerinde grup politikaları sebebiyet verebilmektedir.
Etki alanına ait belirlenen group policyler aşağıdaki komut ile tespit edilebilmektedir.
Mevcut etki alanına ait group policy tespit edilmesi;
Get-DomainPolicy
(Get-DomainPolicy).”system access”
Farklı etki alanına ait group policy tespit edilmesi;
(Get-DomainPolicy -domain moneycorp.local).”system access”
PowerView uygulamasına ait komut kullanıldığında etki alanına ait aşağıdaki ekran görüntüsünde verilen
çıktıları vermektedir.
12. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
11BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Aşağıdaki ekran görüntüsünde mevcut etki alanı için belirlenen “system access” politikası
görüntülenmektedir.
Aşağıdaki ekran görüntüsünde tespit edilen grup politikalarından “kerberos policy” için girilen kurallar
listelenmektedir.
Kerberos politikası için oluşturulan kurallar, sızma testi sırasında kullanılabilecek kerberos saldırıları için
önemlidir. Burada belirlenmiş ticket kuralları haricinde oluşturulacak bir ticket için KDC üzerinden yetki
alınamayacak ve saldırının tespit edilmesini oldukça kolaylaştıracaktır.
Defans tarafında bu şekilde bir kural oluşturulması saldırı tespit mekanizması oluşturulması açısından
önemlidir.
13. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
12BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Group Policy bir kullanıcı, sistem, grup üzerinde belirlenebileceği gibi organisational unit (OU) üzerinde de
belirlenebilmektedir.
Sızma testlerinde atak vektörü oluşturabilmek amacıyla objeler üzerinde belirlenmiş grup politikalarının
kontrol edilmesi gerekmektedir.
İlgili sorgulamalar için powerview ve AD modülü kullanılabilmektedir.
PowerView:
Get-NetGPO
Get-NetGPO -ComputerName dcorp-student1.dollarcorp.moneycorp.local
Get-NetGPOGroup
Active Directory Modülü:
Get-GPO -ALL
Get-GPResultantSetOfPolicy -ReportType Html -Path C:UsersAdministratorreport.html
PowerView uygulamasına ait komut kullanıldığında etki alanına ait aşağıdaki ekran görüntüsünde verilen
çıktıları vermektedir.
14. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
13BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Etki alanında belirlenen tüm grup politikalarına ait detaylar aşağıdaki ekran görüntüsünde verilen şekilde
listelenebilmektedir.
Aşağıdaki ekran görüntüsünde belirlenen grup politikalarına ait “displayname” özellikleri
görüntülenmiştir.
Her etki alanı için öntanımlı olarak 2 grup politikası sistem tarafından oluşturulmuştur. Bunlara
tanımlanacak politikalar ile bu politikalar özelleştirilebileceği gibi yeni grup politikası
oluşturulabilmektedir.
15. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
14BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Yukarıdaki ekran görüntüsünde “Students”, “Applocker” ve “Servers” displayname’ e sahip 3
özelleştirilmiş grup politikası oluşturulduğu görüntülenebilmektedir.
Hedeflenen sistemin yukarıdaki ekran görüntüsünde verilen grup politikalarına tabi olup olmadığı ile ile
ilgili sorgu aşağıdaki ekran görüntüsünde verilen komut ile gerçekleştirilebilmektedir.
Ekran görüntüsünde verildiği üzere “dcorp-stdadmin” NetBIOS ismine sahip hedef sistemin “Students”
displayname ile belirlenen grup politikasına tabi olduğu tespit edilmiştir.
Grup politikaları kullanılarak AD üzerinde objelerin belirli politikalara uyması sağlanırken, yerel grup
politikası (Local Group Policy) kullanılarak spesifik olarak politikalar da sistemlere uygulanabilmektedir.
Bu şekilde oluşturulan yerel grup politikalarını sorgulama için “gpresults” aracı kullanılabilmektedir.
GPResult /R
GPResult /R /V
Yukarıdaki komut ile yerel sistem üzerinde belirlenen politikaları sorgulamak mümkündür.
16. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
15BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
İlgili ekran görüntüsü aşağıda verilmiştir.
Ekran görüntüsünde görüleceği üzere “Not Applied” açıklaması ile sistem için belirlenen bir local group
policy olmadığı tespit edilebilmektedir.
Gpresult aracını /V parametresini kullanarak politikaları verbosity arttırarak görüntülemek mümkündür.
17. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
16BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Organisational Unit (OU)
AD üzerinde oluşturulmuş klasörler olarak düşünülebilir. İçerisinde gruplar, kullanıcıla ve sistemler gibi
objeler atanabileceği gibi GPO (Group Policy) atanarak yönetimi kolaylaştırmaktadır.
AD üzerinde OU tespiti için ilgili araçlar kullanılabilmektedir.
PowerView:
Get-NetOU -FullData
Active Directory Modülü:
Get-ADOrganisationalUnit -Filter * -Properties *
Mevcut etki alanında OU’ ların tespit edilmesi aşağıdaki ekran görüntüsünde verilmiştir.
OU için “-FullData” parametresi kullanılarak detaylı sorgu gerçekleştirilebilmektedir. İlgili ekran görüntüsü
aşağıda verilmektedir.
18. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
17BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Bir OU içerisinde bulunan sistemler ve kullanıcıları listelemek amacıyla aşağıda verilen komut
kullanılabilmektedir.
Get-NetOU StudentMachines | %{Get-NetComputer -ADSPath $_}
Yukarıdaki komut ile “StudentMachines” OU içerisinde bulunan sistemler listelenebilmektedir.
Bir OU için kabul edilen GPO görüntülemek için aşağıda verilen komut kullanılabilmektedir.
#StudentMachines OU için belirlenen GPO
(Get-NetOU StudentMachines -FullData).gplink
#PowerView
Get-NetGPO -GPOname “{AB306569-220D-43FF-B03B-83E8F4EF8081}”
#AD Modülü
Get-GPO -Guid AB306569-220D-43FF-B03B-83E8F4EF8081
19. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
18BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
20. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
19BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Etki Alanı Denetleyicisinin Belirlenmesi
Etki alanı denetleyicisine ait bilgiler aşağıdaki komutla tespit edilebilmektedir.
PowerView:
Get-NetDomainController
Active Directory Modülü:
Get-ADDomainController
PowerView uygulamasına ait komut kullanıldığında aşağıdaki ekran görüntüsünde verilen çıktıları
vermektedir.
21. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
20BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Active Directory modülüne ait komut kullanıldığında etki alanına ait aşağıdaki ekran görüntüsünde verilen
çıktıları vermektedir.
Her iki komuta ait çıktılar incelendiğinde, etki alanı denetleyicisine ait IP adresi, mevcut işletim sistemi,
NetBIOS adı gibi bilgiler edinilmektedir.
Farklı bir etki alanında bulunan etki alanı yöneticisine ait bilgilerin tespit edilebilmesi amacıyla aşağıdaki
komutlar kullanılabilmektedir.
PowerView:
Get-NetDomainController -Domain moneycorp.local
Active Directory Modülü:
Get-ADDomainController -DomainName moneycorp.local -Discover
22. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
21BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
PowerView uygulamasına ait komut kullanıldığında aşağıdaki ekran görüntüsünde verilen çıktıları
vermektedir.
23. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
22BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Kullanıcılar ve Özelliklerinin Tespit Edilmesi
Etki alanında bulunan kullanıcıların ve bu kullanıcıların oluşturulma esnasında tanımlanan bilgiler ilgili
uygulamalar ile tespit edilebilmektedir.
Bu şekilde elde edilebilecek bilgiler ile kullanıcılara ait önemli sayılabilecek bilgilere erişim elde
edilebilmektedir.
İlgili tespit için aşağıdaki komut kullanılabilmektedir.
PowerView:
Get-NetUser
Get-NetUser | select cn
Get-NetUser -Username student1
Active Directory Modülü:
Get-ADUser -Filter * -Properties *
Get-ADUser -Filter * -Properties * | select name
Get-ADUser -Identity student1 -Properties *
PowerView uygulamasına ait komut kullanıldığında etki alanına ait aşağıdaki ekran görüntüsünde verilen
çıktıları vermektedir.
24. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
23BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Ekran görüntüsünde powerview uygulamasına ait “Get-NetUser” komutu çalıştırılmış ve çıktıda mevcut
etki alanında bulunan kullanıcılar ve kullanıcılara ait öntanımlı bilgiler gösterilmiştir.
Kullanıcılara ait yalnızca common name “cn” bilgileri ise “Get-NetUser | select cn” komutu ile tespit
edilebilmektedir. Bu şekilde elde edilen çıktı yalnızca kullanıcılara ait belirlenmiş isimleri listelemek için
kullanılabilmektedir.
25. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
24BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Yalnızca tek bir kullanıcıya ait bilgilerin sorgulanmasına ait ekran görüntüsü aşağıda verilmiştir.
Active Directory modülüne ait komut kullanıldığında etki alanına ait aşağıdaki ekran görüntüsünde verilen
çıktıları vermektedir.
26. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
25BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Powershell modülü kullanılarak yalnızca tek bir kullanıcı için öntanımlı bilgilerin sorgulanmasına ait ekran
görüntüsü aşağıda verilmiştir.
Kullanıcılara ait diğer bilgiler aşağıdaki komut ile sorgulanabilmektedir.
PowerView:
Get-UserProperty
Get-UserProperty -Properties pwdlastset
Active Directory Modülü:
Get-ADUser -Filter * =Properties * | select -First 1 | Get-Member -MemberType *Property |
select Name
Get-ADUser -Filter * -Properties * | select
name,@{expression={[datetime]::fromFileTime($_.pwdlastset)}}
27. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
26BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
PowerView uygulamasına ait komut kullanıldığında etki alanına ait aşağıdaki ekran görüntüsünde verilen
çıktıları vermektedir. İlgili komut ile kullanıcılara ait sorgulanabilecek özellikler listelenmektedir.
28. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
27BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Kullanıcıya ait yukarıdaki ekran görüntüsünde verilen özelliklere ait bilgileri sorgulayabilmek mümkündür.
Aşağıdaki ekran görüntüsünde kullanıcıların en son parola güncelleme tarihleri sorgulanmıştır.
Aşağıdaki ekran görüntüsünde etki alanında bulunan kullanıcıların kaç defa “login” olduklarına ait bilgi
sorgulanmıştır.
Kurumlar etki alanı içerisinde “decoy user” adı verilen sahte kullanıcı, sistem, servis kullanıcısı vs.
oluşturarak gerçek saldırganları tespit edebilme şanslarını arttırmaktadırlar. Bu şekilde gerçekleştirilecek
sorgular ile etki alanında bulunan kullanıcıların gerçek veya sahte olup olmadıkları doğrulanabilmektedir.
29. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
28BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Etki Alanında Bulunan Sistemlerin Tespit Edilmesi
Etki alanında bulunan sistemler ve bu sistemlere ait çeşitli bilgiler ilgili uygulamalar ile tespit
edilebilmektedir.
İlgili tespit için aşağıdaki komut kullanılabilmektedir.
PowerView:
Get-NetComputer
Get-NetComputer -OperatingSystem “*Server 2016*”
Get-NetComputer -Ping
Get-NetComputer -FullData
Active Directory Modülü:
Get-ADComputer -Filter * | select Name
Get-ADComputer -Filter ‘OperatingSystem -like “*Server 2016*” -Properties OperatingSystem
| select Name, OperatingSystem
Get-ADComputer -Filter * -Properties DNSHostName | %{Test-Connection -Count 1 -
ComputerName $_.DNSHostName}
Get-ADComputer -Filter * -Properties *
PowerView uygulamasına ait komut kullanıldığında etki alanına ait aşağıdaki ekran görüntüsünde verilen
çıktıları vermektedir.
30. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
29BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Active Directory modülüne ait komut kullanıldığında etki alanına ait aşağıdaki ekran görüntüsünde verilen
çıktıları vermektedir.
Bu komutlara ait çıktılar etki alanında bulunan sistemleri göstermektedir. Ancak sistem yöneticileri
tarafından saldırıları tespit edebilmek amacıyla etki alanında sistem olarak görünebilen ve fiziki veya sanal
sistemlerin de yalnızca obje olarak etki alanına dahil edilebileceği unutulmamalıdır.
İlgili komut aşağıdaki ekran görüntüsünde örnek olarak verilen bir parametre ile kullanılabileceği gibi
özelleştirilmiş powershell komutları ile de farklı sorgular gerçekleştirilebilmektedir.
31. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
30BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Etki alanı içerisinde bulunan sistemlerin hangi işletim sistemlerine sahip olduğu aşağıdaki ekran
görüntüsünde verilen komut ile sorgulanabilmektedir.
İşletim sistemleri için gerçekleştirilecek sorgu powershell modülü içerisinde aşağıdaki ekran görüntüsünde
verilen komut ile gerçekleştirilebilmektedir.
Get-ADComputer -Filter ‘OperatingSystem -like “*Server 2016*” -Properties OperatingSystem
| select Name,OperatingSystem
32. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
31BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Grupların Tespit Edilmesi
Etki alanında bulunan grupların ve gruplara ait bilgiler ilgili uygulamalar ile tespit edilebilmektedir.
Bu şekilde elde edilebilecek bilgiler ile kullanıcılara ait önemli sayılabilecek bilgilere erişim elde
edilebilmektedir.
İlgili tespit için aşağıdaki komut kullanılabilmektedir.
PowerView:
Get-NetGroup
Get-NetGroup -Domain <hedef-domain>
Get-NetGroup -FullData
Get-NetGroup *admin*
Active Directory Modülü:
Get-ADGroup -Filter * | select Name
Get-ADGroup -Filter * -Properties *
Get-ADGroup -Filter ‘Name -like “*admin*”’ | select Name
PowerView uygulamasına ait komut kullanıldığında etki alanına ait aşağıdaki ekran görüntüsünde verilen
çıktıları vermektedir.
33. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
32BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Powershell Active Directory modülüne ait komut ile gerçekleştirilen sorgularda ise aşağıdaki ekran
görüntüsünde verilen çıktı elde edilebilmektedir.
AD modülü ile yalnızca grup isimlerini tespit edebilmek amacıyla daha insancıl bir çıktı aşağıdaki ekran
görüntüsünde verilen komut kullanılabilmektedir.
34. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
33BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
PowerView komutu ile “Domain Admins” grubuna dahil kullanıcıların listelenmesine ait ekran görüntüsü
aşağıda verilmiştir.
Sistem yöneticisi tarafından oluşturulan özelleştirilmiş grupların tespit edilebilmesi için wildcard yöntemi
kullanılabilmektedir.
İlgili ekran görüntüsü aşağıda verilmiştir.
İlgili yöntem AD modülünde aşağıdaki ekran görüntüsünde verilen şekilde kullanılabilmektedir.
35. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
34BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Yukarıdaki ekran görüntülerinde “admin” kelimesi için gerçekleştirilen wildcard sorgularda “Enterprise
Admins” grubu görünmemektedir. Bunun sebebi sorguyu gerçekleştirmiş sistemin child domain üzerinde
bulunuyor olmasıdır.
Child domain üzerinde bulunan sistem üzerinden PowerView kullanılarak Forest etki alanında da
sorgulamalar gerçekleştirilebilmektedir.
İlgili ekran görüntüsü aşağıda verilmiştir.
Gruplara dahil edilen kullanıcılar için aşağıda verilmiş komutlar kullanılabilmektedir.
PowerView:
Get-NetGroupMember -GroupName “Domain Admins” -Recurse
Get-NetGroup -UserName “student1”
Active Directory Modülü:
Get-ADDGroupMember -Identity “Domain Admins” -Recursive
Get-ADPrincipalGroupMembership -Identity student1
36. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
35BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
PowerView uygulamasına ait komut kullanıldığında aşağıdaki ekran görüntüsünde verilen çıktıları
vermektedir.
Sorgu gerçekleştirilen sistem üzerinde farklı bir etki alanında bulunan bir gruba ait kullanıcılar aşağıdaki
ekran görüntüsünde verilen komut ile sorgulanabilmektedir.
Etki alanında bir grup oluşturulurken grubun üyeleri kullanıcı, sistem veya başka bir grup olabilir.
“Administrator” adı ile oluşturulan bir grubun üyeleri aşağıdaki şekilde olabilir.
• Enterprise Admins (Grup)
• Domain Admins (Group)
• Administrator (Built-in kullanıcı)
PowerView ile gerçekleştirilebilen sorgular ile bu durum hakkında da bilgi edinilebilmektedir.
37. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
36BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
İlgili ekran görüntüsü aşağıda verilmektedir.
Ekran görüntüsünde verilen “IsGroup” olarak ifade edilen alan belirtilen grup üyesinin bir grup mu yoksa
bir kullanıcı mı olduğunu belirtmektedir.
Bir kullanıcının hangi gruplara dahil olduğunu sorgulamak için aşağıdaki komut kullanılabilmektedir.
Get*ADPrincipalGroupMembership -Identity studentadmin
38. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
37BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Bir sistem üzerinde bulunan yerel grupları powerview uygulamasına ait komut ile görüntülenebileceği gibi
farklı bir sistem üzerinde bulunan yerel gruplar da görüntülenebilmektedir. Bu işlemin
gerçekleştirilebilmesi için hedef sistem üzerinde yerel yönetici haklarına sahip olmak gerekmektedir.
Bu işlem için aşağıdaki komutlar kullanılabilmektedir.
PowerView:
Get-NetLocalGroup -ComputerName dcorp-dc.dollarcorp.moneycorp.local -ListGroups
Active Directory Modülü:
Get-NetLocalGroup -ComputerName dcorp-dc.dollarcorp.moneycorp.local -Recurse
PowerView uygulamasına ait komut kullanıldığında etki alanına ait aşağıdaki ekran görüntüsünde verilen
çıktıları vermektedir.
39. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
38BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Aktif Oturumların Tespit Edilmesi
Etki alanında bulunan sistemler üzerinde aktif oturumu bulunan kullanıcılar (hedef sistem üzerinde yerel
yönetici haklarına sahip olunmasu durumunda) ilgili araçlarla tespit edilebilmektedir.
İlgili tespit için aşağıdaki komut kullanılabilmektedir.
PowerView:
Get-NetLoggedon -ComputerName <hedef_sistem>
Get-LoggedonLocal -ComputerName dcorp-dc.dollarcorp.moneycorp.local
Get-LastLoggedon -ComputerName <hedef_sistem>
PowerView uygulamasına ait komut kullanıldığında etki alanına ait aşağıdaki ekran görüntüsünde verilen
çıktıları vermektedir.
40. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
39BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Sisteme Ait Paylaşımlar ve Hassas Dosyaların Tespit Edilmesi
Etki alanında bulunan sistemler üzerinde paylaşıma açık dosyalar ve sorguyu gerçekleştiren kullanıcı
hakları ile erişilebilecek hassas dosyalar ilgili araçlar kullanılarak tespit edilebilmektedir.
İlgili tespit için aşağıdaki komut kullanılabilmektedir.
#Sistem üzerinde paylaşıma açık dosyaların tespit edilmesi
Invoke-ShareFinder -Verbose
#Sistem üzerinde paylaşıma açık dosyaların tespit edilmesi (Ön Tanımlı Paylaşımlar Hariç)
Invoke-ShareFinder -Verbose -ExcludeStandart -ExcludePrint -ExcludeIPC
#Etki alanına dahil sistemlerde mevcut kullanıcı hakları ile erişilebilen hassas dosyalar
Invoke-FileFinder -Verbose
#Dosya sunucularının tespit edilmesi
Get-NetFileServer
Sistem üzerinde paylaşıma açık dosyaların tespit edilmesine ait ekran görüntüsü aşağıda verilmiştir.
41. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
40BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Öntanımlı olarak bulunan paylaşımlar haricinde özel tanımlanmış paylaşımlar ilgili komut kullanarak
aşağıdaki ekran görüntüsündeki şekilde görüntülenmiştir.
42. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
41BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Erişim Kontrol Listeleri (Access Control Lists -ACLs)
Kullanıcı, grup veya sistemler gibi objelerin başka bir obje üzerinde belirlenen haklarını tanımlamak için
kullanılır. ACLs kullanılarak objelere erişim ve erişim tanımlayıcıları kontrol edilebilmektedir.
Access control list, erişim kontrol kayıtlarının listesine verilen addır. Her bir erişim kontrol kaydı (Access
Control Entries – ACEs) obje üzerinde izin ve kısıtlamaları ya da denetimi gerçekleştirir.
Güvenlik tanımlayıcıları, SID sahibi, Discretionary ACL (DACL) ve System ACL (SACL) olarak
tanımlanabilmektedir.
• SID : Objenin sahibini,
• DACL : Kimin bu obje üzerinde ne hakkı olduğunu belirler,
• SACL : Olay günlüğü oluşturulmasını sağlar.
Güvenli bir nesnenin güvenlik tanımlayıcısı iki tür ACL içerebilir: bir DACL ve bir SACL.
DACL
İsteğe bağlı bir erişim denetim listesi (DACL), güvenli bir nesneye erişimine izin verilen veya reddedilen
kayyumları tanımlar. Bir işlem güvenilir bir nesneye erişmeye çalıştığında, sistem nesneye DACL'deki
ACE'leri denetleyerek ona erişim izni verip vermeyeceğini belirler. Nesnenin bir DACL'si yoksa, sistem
herkese tam erişim izni verir. Nesnenin DACL'sinde ACE yoksa, sistem nesneye erişim girişimlerini
reddeder çünkü DACL herhangi bir erişim hakkına izin vermez. Sistem, istenen tüm erişim haklarına izin
veren bir veya daha fazla ACE bulana veya istenen erişim haklarından herhangi biri reddedilene kadar
ACE'leri sırayla kontrol eder.
43. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
42BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
İlgili ekran görüntüsü aşağıda verilmiştir.
Yukarıdaki ekran görüntüsünde “Owner” olarak belirtilen objenin sahibini belirtir. Her bir satır ise ACE
(Access control entry) olarak adlandırılır. Her bir ACE ile farklı objelere farklı seviyede erişim izni
verilebilir veya kısıtlanabilmektedir.
SACL
Sistem erişim denetim listesi (SACL), yöneticilerin güvenli bir nesneye erişim girişimlerini günlüğe
kaydetmelerini sağlar. Her ACE, sistemin güvenlik olay günlüğünde kayıt oluşturmasına neden olan,
belirtilen bir mütevelli tarafından yapılan erişim girişimi türlerini belirtir. SACL'deki bir ACE, bir erişim
girişimi başarısız olduğunda, başarılı olduğunda veya her ikisinde birden denetim kayıtları oluşturabilir.
44. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
43BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
ACLs sorgulamaları için ilgili uygulamalar kullanılabilmektedir.
PowerView:
#Spesifik bir obje için tanımlanan ACLs görüntülenmesi
Get-ObjectAcl -SamAccountName student1 -ResolveGUIDs
#Spesifik bir obje için prefix belirtilerek ACLs görüntülenmesi
Get-ObjectAcl -ADSprefix ‘CN=Administrator,CN=Users’ -Verbose
Active Directory Modülü:
(Get-Acl ‘AD:CN=Administrator,CN=Users,DC=dollarcorp,DC=moneycorp,DC=local’).Access
PowerView uygulamasına ait komut kullanıldığında etki alanına ait aşağıdaki ekran görüntüsünde verilen
çıktıları vermektedir.
Yukarıdaki ekran görüntüsünde “ObjectDN” belirtilen obje üzerinde hangi objenin ne şekilde yetkisinin
bulunduğu sorgulanmıştır.
“IdentityReference” adı ile belirtilen obje ise “ObjectDN” ile belirtilen obje üzerinde bulunan yetkiliyi
belirlemektedir. “ActiveDirectoryRights” adı ile belirtilen kısımda ise yetki türü belirtilmektedir.
45. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
44BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Yukarıdaki ekran görüntüsü yorumlandığı zaman, “student1” kullanıcısı üzerinde “BUILTINAdministrator”
kullanıcısının “Create Child, WriteProperty, ExtendedRight, Delete, GenericRead, WriteDacl, WriteOwner”
haklarına sahip olduğu görüntülenebilmektedir. “AccessControlType” ile belirtilen kısımda ise bu hakların
“Allow” yani “İzin Verilmiş” olduğu görülmektedir.
AD üzerinde bulunan objelere tanımlanan öntanımlı ACLs bulunmaktadır. Özelleştirilmiş ACLs
görüntülenmesi için aşağıdaki komut kullanılabilmektedir.
Invoke-ACLScanner -ResolveGUIDs
Get-PathAcl -Path “dcorp-dc.dollarcorp.moneycorp.localsysvol”
İlgili ekran görüntüsü aşağıda verilmiştir.
Yukarıdaki ekran görüntüsü incelendiğinde, “Support20User” kullanıcısı üzerinde “dcorpRDPUsers”
grubunun “GenericAll” ve “Allow” yetkileri bulunmaktadır. Bu sorguyu gerçekleştiren “studen219”
kullanıcısı ise “dcorpRDPUsers” grubuna dahil olması sebebiyle “Support20User” üzerinde tam yetkiye
sahip olmaktadır.
46. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
45BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Etki Alanları Arasında Güven İlişkisi (Trusts)
Trusts (güven ilişkisi) AD içerisinde, iki etki alanı içerisindeki veya forestlar araındaki güven ilişkisi
kullanıcılara diğer etki alanı veya forest etki alanı kaynaklarına erişim sağlamasına izin verir.
Birden fazla etki alanına sahip AD içerisinde trust ilişkileri (parent-child ilişkisi bulunan ve aynı forest
içerisinde bulunan etki alanları için)otomatik olarak oluşabilmektedir.
Trusted etki alanı objeleri (TDOs) etki alanı içerisindeki güven ilişkisini ifade eder.
Güven Yönü (Trust Direction)
Tek Yönlü Güven İlişkisi (One Way Trust)
İsminden de anlaşılacağı üzere tek yönlü (Unidirectional) güven ilişkisi anlamına gelmektedir. İki etki alanı
arasında güvenilir ve güvenen etki alanı olarak nitelendirilir.
Güveilir (Trusted) etki alanında bulunan kullanıcıların ve grupların güvenen (Trusting) etki alanında
bulunan kaynaklara erişmesine izin veren güven ilişkisidir.
Aşağıdaki ekran görüntüsünde verilen şekilde özetlenebilmektedir.
Trusting etki alanı Trusted etki alanında bulunan kaynaklara ulaşamazken, Trusted domain Trusting
domainde bulunan kaynaklara ulaşabilmektedir.
47. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
46BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Çift Yönlü Güven İlişkisi (Two Way Trust)
İsminden de anlaşılacağı üzere iki yönlü (Bi-directional) güven ilişkisi anlamına gelmektedir.
Bu tür güven ilişkisi içerisinde bulunan etki alanlarının tamamı birbirlerinin kaynaklarına
ulaşabilmektedirler.
Aşağıdaki ekran görüntüsünde verilen şekilde özetlenebilmektedir.
Güven Geçişi (Trust Transitivity)
Transitive
Geçiş (Transitive), iki etki alanı arasında bulunan güven ilişkisinin genişletilerek diğer etki alanlarına da
uygulanabilmesidir.
Bir tree içerisinde root domain, child domain ve child-parent ilişkisine sahip etki alanları birbirleri
arasında iki yönlü güven ilişkisi içerisindedirler.
Burada tree-root domain, diğer domain ve bu domaine bağlı child domainlere özellikle belirtilmemesine
rağmen otomatik olarak transitive tanımlanmış olup aynı tree içerisindeki tüm etki alanı aksi
belirtilmedikçe iki yönlü güven ilişkisi içerisinde bulunmaktadır.
48. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
47BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
İlgili ekran görüntüsü aşağıda verilmiştir.
Nontransitive
Aynı forest içerisinde bulunan diğer etki alanları için genişletilemeyen güven ilişkisidir. İki yönlü veya tek
yönlü olabilmektedir.
Birbirinden farklı iki forest içerisinde bulunan etki alanlarının birbirleriyle olan güven ilişkisidir. Burada
forestlar arasında güven ilişkisi tanımlanmamış olmasına rağmen forestlar içerisindeki herhangi iki etki
alanı arasında bulunan güven ilişkisidir. Kısace external trust olarak adlandırılır.
49. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
48BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
İlgili ekran görüntüsü aşağıda verilmiştir.
Forest Güven İlişkisi (Forest Trusts)
Forest içerisinde bulunan root etki alanlarının birbirleriyle olan ilişkisi olarak adlandırılır. Tek veya iki
yönlü olabilmektedir.
50. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
49BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Etki alanlarının birbirleriyle olan trust ilişkisini ilgili uygulamaları kullanarak sorgulayabiliriz.
Mevcut etki alanının diğer etki alanları ile olan trust yapısı aşağıdaki komut ile sorgulanabilmektedir.
PowerView
Get-NetDomainTrust
Get-NetDomainTrust -Domain us.dollarcorp.moneycorp.local
Active Directory Modülü:
Get-ADTrust
Get-ADTrust -Identity us.dollarcorp.moneycorp.local
İlgili ekran görüntüeri aşağıda verilmiştir.
51. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
50BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Forest ilişkilerini görüntülemek için ise aşağıdaki komutlar kullanılabilmektedir. Mevcut forest için
aşağıdaki komutlar kullanılabilmektedir.
PowerView
Get-NetForest
Get-NetForest -Forest eurocorp.local
Active Directory Modülü:
Get-ADForest
Get-ADForest -Identity eurocorp.local
İlgili ekran görüntüleri aşağıda verilmiştir.
AD modülüne ait komut kullanılarak gerçekleştirilen sorgu aşağıdaki ekran görüntülerinde verilmiştir.
52. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
51BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Forest içerisindeki tüm etki alanları aşağıda verilen komut ile sorgulanabilmektedir.
PowerView
Get-NetForestDomain
Get-NetForestDomain -Forest eurocorp.local
Active Directory Modülü:
(Get-ADForest).Domains
İlgili ekran görüntüleri aşağıda verilmiştir.
53. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
52BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Yukarıdaki ekran görüntüsü incelendiğinde;
Forest : Moneycorp.local
Domain : dollarcorp.moneycorp.local
Child Domain : us.dollarcorp.moneycorp.local
Olmak üzere toplamda 3 farklı etki alanı bulunduğu görülmektedir.
54. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
53BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Kullanıcı Avcılığı (User Hunting)
Mevcut kullanıcının etki alanında bulunan hangi sistem üzerinde yerel yönetici olduğu ve belirli bir grup
ve grup üyelerinin mevcut oturumlarının tespiti ile etki alanı yöneticisinin (domain admin) hangi sistem
üzerinde oturumunun bulunduğunun tespitidir.
Mevcut kullanıcının yerel yönetici haklarına sahip olduğu sistemleri tespit edebilmek için powerview
uygulamasının aşağıda verilen komutu kullanılabilmektedir.
Find-LocalAdminAccess -Verbose
#Spesifik bir sistem için
Invoke-CheckLocalAdminAccess
İlgili komut DC üzerinden etki alanında bulunan sistemlerin bilgilerini almakta ve hepsi için “Invoke-
CheckLocalAdminAccess” komutunu çalıştırmaktadır.
Sistem yöneticileri için tanımlanmış WMI ve PowerShell remoting yöntemleri ile de bir sisteme uzaktan
erişim (eğer Win-RM açık ise) mümkündür.
#WMI için
Find-WMILocalAdminAccess.ps1
İlgili ekran görüntüsü aşağıda verilmiştir.
55. AKTIF DIZIN(ACTIVE DIRECTORY) GÜVENLIK TESTLERI - I: BILGI TOPLAMA
54BGA Bilgi Güvenliği | www.bgasecurity.com | @BGASecurity
Etki alanında bulunan sistemlerin hangisinde domain admins grubuna dahil olan kullanıcıların aktif
oturumunun bulunduğu aşağıdaki komut ile sorgulanabilmektedir.
#Domain Admins grubu üyesi oturum avı
Invoke-UserHunter
Invoke-UserHunter -Stealth
Invoke-UserHunter -GroupName “RDPUsers”
#Domain admin kullanıcısına ait oturum tespit edilen sisteme admin hakları ile oturum açma
hakkının sorgulanması
Invoke-UserHunter -CheckAccess