Token etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
Token etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

18 Ekim 2013 Cuma

İpucu: Domainde Yetkili Kullanıcının Haklarına ve Şifresine Sahip Olma

Domainde Yetkili Kullanıcının Haklarına ve Şifresine Sahip Olma

Amaç

  • Hedef makinelerde oturum elde edildikten sonra, bu makinelere dosya (wce.exe adlı uygulama dosyası veya başka dosyalar) aktarılacaktır ve çalıştırılacaktır.
  • Hedef makinelerde program çalıştırılacaktır. Bu program ile ele geçirilen oturumda aktif prosesi olan hesapların kimliğine bürünülecek ve bu hesapların şifreleri açık halde (clear text) elde edilecektir.


Yöntem
Önceki yazıda belirtildiği gibi, sisteme sızıldıktan sonra, yüksek yetkili kullanıcının sahip olduğu ve daha kararlı yapıdaki bir prosese sıçranabilir. Yüksek yetkili kullanıcının çalıştırdığı daha kararlı yapıda olan explorer.exe adlı prosese (748 numaralı proses) sıçranması aşağıda gösterilmiştir:
getuid
getpid
migrate 748
getuid
getpid

Hedef makinede yüksek yetkili kullanıcının sahip olduğu kararlı bir prosese geçme

Yetkili kullanıcının haklarına, o kullanıcının prosesine sıçramak yerine, Kerberos biletini elde ederek de gerçekleştirilebilir:
load incognito
list_tokens -u
getuid
getpid
impersonate_token DOJO\\sisyon
getuid
getpid
shell
whoami

Hedef makinede yüksek yetkili kullanıcının biletine sahip olunması

Not: Eski bilete geri dönmek için rev2self komutu kullanılabilir. Ayrıntılı bilgi için:
http://pentestlab.wordpress.com/2012/08/07/token-stealing-and-incognito/

SYSTEM hakları ile bir yerel kullanıcı eklenebilir veya çıkarılabilir, yerel yönetici grubuna eklenebilir:
whoami
net user TestYerelKullanici TestP@ss123 /add
net localgroup administrators TestYerelKullanici /add
net localgroup administrators

Hedef makineye yetkili bir kullanıcı ekleme

Domain Admin hakları ile bir yerel veya domain kullanıcısı eklenebilir veya çıkarılabilir. Daha sonra bu kullanıcı yerel veya domain admin grubuna eklenebilir, çıkarılabilir:
net user TestGenelKullanici /del /domain
net user TestGenelKullanici TestP@ss12345 /add /domain
net group "Domain Admins" TestGenelKullanici /add /domain
net group "Domain Admins" /domain

Domaine yetkili bir kullanıcı ekleme

WCE (veya mimikatz) uygulaması hakkında ayrıntılı bilgi için bakınız:
https://www.bilgiguvenligi.gov.tr/microsoft-guvenligi/bellekten-parolalarin-elde-edilmesi-1.html 
https://www.bilgiguvenligi.gov.tr/microsoft-guvenligi/bellekten-parolalarin-elde-edilmesi-2.html 
https://www.bilgiguvenligi.gov.tr/microsoft-guvenligi/bellekten-parolalarin-elde-edilmesi-3.html

Not: Sızılan makine domain controller ise, domain admin yetkisindeki bir kullanıcı ile yukarıda belirtildiği gibi kullanıcı oluşturup, domain admins grubuna atanamaz. Bu sebeple, domain controller makinesine sızıldığında bu işlemler SYSTEM rolündeyken yapılmalıdır.

Elimizde domain admin kullanıcısının prosesi / bileti bulunmaktadır. Bu prosesi / bileti kullanarak, kullanıcının şifresinin açık halini elde edebiliriz. Bu amaçla hedef bilgisayara “wce.exe” adlı bir uygulama yüklenecek, çalıştırılacak ve kullanıcı şifresi elde edilecektir:
sysinfo
upload /wce.exe “C:\\”
shell
cd C:\
wce.exe -–w
'wce.exe' uygulaması ile yetkili kulalnıcının şifresinin elde edilmesi

Not: 'sysinfo' komutu ile hedef makinenin sistem mimarisi  (64 bit / 32 bit) hakkında bilgi edinilmektedir. Sistem mimarisine göre uygun uygulama (exe) dosyası yüklenecektir. Daha ayrıntılı sistem bilgisi için 'systeminfo' komutu da kullanılabilir.

Not: Bir çok anti virüs "wce.exe" uygulamasını yakalamakta ve hedef makineye yüklenmesine izin vermemektedir. Bu sebeple packer adı verilen uygulamalar kullanılmaktadır. UPX Packer uygulamasının kullanımı için bakınız. Diğer antivirüs atlatma yöntemleri için bakınız.

Not: wce.exe uygulaması (Windows Credential Editor) aracılığıyla RAM üzerinde kalmış kullanıcıların şifre bilgilerine erişilebilmektedir. Ayrıntılı bilgi için: http://www.ampliasecurity.com/research/wcefaq.html


Önlem

  • Sistem yöneticilerine ve diğer tüm kullanıcılara ait hesapların izinleri belli periyotlarla kontrol edilmelidir. Gereksiz haklar / roller alınmaldır.
  • Domainde etkin olacak servis hesaplarına, sadece gerçekleştirecekleri işlemler için gerekli olan haklar verilmelidir. Bu tür hesapların kullanıcı oluşturma, silme, şifre değiştirme gibi işlemleri veya interaktif oturum açma gibi işlemleri yapmaya hakları olmamalıdır.
  • Gereksiz paylaşımlar kullanıma kapatılmalıdır. Dosya sunucularına, domain üzerinde yüksek haklara sahip kullanıcıların hesabı ile girilmemelidir.


İpucu: Yüksek Yetkili Kullanıcı Haklarının İncelenmesi

Yüksek Yetkili Kullanıcı Haklarının İncelenmesi

Amaç
  • Sızılan sistemdeki prosesler incelenecektir.
  • Domainde bulunan yüksek yetkili kullanıcıların, bu makinede herhangi bir proses çalıştırıp çalıştırmadığı belirlenecektir.


Yöntem
Önceki yazıda belirtildiği gibi elimizdeki kimlik bilgileri ile farklı bilgisayarlarda oturum açılabilmektedir. Böylece. sızılan makinede çalışan prosesler incelenir:
ps

Hedef makinede proseslerin izlenmesi

Daha önceden elde ettiğimiz bilgilere göre “sisyon” kullanıcısı Domain Admins grubunun üyesi olduğu görülmüştü. Bu sebeple bu prosese sıçranabilir. Eğer, bu makinede, domainde yüksek yetkili olan bir kullanıcı prosesi ve/veya bileti bulunamasaydı, başka makinelerde benzer adımlar gerçekleşecektir.

Not: SYSTEM kullanıcının sisteme girmesi de bir proses (svchost.exe) oluşturmuştur.

Önlem
  • Makinelerde yüksek yetkili kullanıcı hakları ile çalıştırılan gereksiz prosesler sonlandırılmalıdır.
  • Makinelere giren kullanıcılar, işlemleri bittikten sonra oturumlarını kapatmaya (log-off) zorlanmalıdır.
  • Domain yöneticileri gibi, önemli gruplardaki kullanıcıların iki tane hesabı olmalıdır. Bu hesaplardan birisi domain üzerinde işlem yapma haklarına sahip oldukları yetkili hesaptır. İkinci hesap ise, domaindeki normal kullanıcılar gibi, yetkisiz hesaptır. Domain yöneticileri yetkili hesaplarını sadece domain işlemlerini yaparken kullanmalıdır, bu hesapla domain controller haricinde gerekmedikçe herhangi bir yere giriş yapılmamalıdır. Farklı sistemlere giriş için yetkisiz hesap kullanılmalıdır.
  • Önemli gruplarda olan yetkili kullanıcılar bu hesaplarını sadece domaine kullanıcı ekleme, domainden kullanıcı çıkarma, grup politikasını güncelleme gibi işlemler için kullanmalıdır. Domain controller gibi, belli ve sınırlı sayıdaki makinelere bu kullanıcı ile giriş yapılmalıdır.