13 Kasım 2013 Çarşamba

İpucu: hashdump Hatası: priv_passwd_get_sam_hashes

hashdump Hatası: priv_passwd_get_sam_hashes

Meterpreter kabuğuna SYSTEM hakları ile düşüldükten sonra, yerel kullanıcı parola özetlerini almak için Meterpreter kabuğunda hashdump komutunu çalıştırmak gerekir. Meterpreter hashdump komutu, LSASS prosesine kod enjekte eder, CreateThread() fonksiyonunu çağırır ve enjekte edilen kod da LSASS içerisinden parola özetlerini alıp ekrana bastırır. Ancak artık bir çok AV ve HIPS gibi güvenlik mekanizmaları bahsedilen API çağrılarını önlerler. Bu sebeple Meterpreter hashdump çalışmayabilir. Bu ve benzer sebepelerle aşağıdaki gibi bir hata alınabilir:
meterpreter > hashdump
[-] priv_passwd_get_sam_hashes: Operation failed: The parameter is incorrect.

Bu durumlarda aşağıdaki işlemler denenebilir:

1) getsystem çalıştırılır. Örnek:

Kaynak: http://www.offensive-security.com/metasploit-unleashed/Pivoting
"getsystem" komutu ile ilgili ayrıntılı bilgi için bakınız.

2) Modül olarak hashdump kullanılır.

Not: Bu modül kayıt defterindeki SAM/SYSTEM anahtarlarını kullanır. Bu modülün çalışması için yönetici hakkı yetmez, SYSTEM haklarını ele geçirmek gereklidir.

Kaynak:
http://securityweekly.com/2014/10/post-exploitation-metasploit-and-windows-hashes.html

3) priv eklentisi yüklendikten sonra SYSTEM hakkı alınır.

Kaynak: http://www.offensive-security.com/metasploit-unleashed/Privilege_Escalation

4) getprivs komutu çalıştırılır. Daha sonra da Meterpreter hashdump veya diğer teknikler denenebilir.


5) MSF bypassuac modülü ile UAC kapatılır (Çalıştığını hiç görmedim)


6) Kayıt defterinden SAM ve SYSTEM dosyası alınır ve BT makinesine indirilir.

Kaynak:
http://ertugrulbasaranoglu.blogspot.com/2013/07/ipucu-kayt-defterinden-sam-ve-system.html

7) Prosesler listelendikten sonra başka bir prosese atlanır. Atlanan prosesin SYSTEM hakları ile çalışan ama winlogon’dan büyük olmayan bir proses olması tavsiye edilir. Svchost.exe dosyası sıçramak için iyi bir proses sayılır. (Aşağıdaki örnekte DA olan kullanıcının prosesine sıçranmıştır.)
Proseslerin listelenmesi: ps

Prosese sıçranması: migrate ProsesID

8) Modül olarak migrate kullanılır.

Kaynak: http://www.offensive-security.com/metasploit-unleashed/Windows_Post_Manage_Modules#migrate

9) Prosese sıçramak için Incognito da kullanılabilir.
Bu amaçla önce tokenlar listelenir:

Sonra da jeton alınır.

Kaynak: http://www.offensive-security.com/metasploit-unleashed/Fun_With_Incognito

10) SYSTEM hakları varken Windows kabuğuna düşülerek yerel bir yönetici oluşturulur.

Daha sonra da psexec ile o kullanıcı hesabı ile bağlantı kurulur.
RHOST: ms08_067 zafiyetinin bulunduğu bilgisayarın IP bilgisi
SMBPass: Yeni oluşturulan kullanıcının parolası (TestP@ss123)
SMBUser: Yeni oluşturulan kullanıcının adı (TestYerelKullanici)
LHOST: Kendi bilgisayarımızın IP bilgisi

Kaynak: http://ertugrulbasaranoglu.blogspot.com/2013/10/ipucu-psexec-modulu-ile-yeni.html
Daha sonra da hashdump denenir.

11) SYSTEM hakları varken Windows kabuğuna düşülerek yerel bir yönetici oluşturulur.

Daha sonra da o bilgisayara RDP ile girilip, Cain&Abel ile alınabilir. Veya SAM ve SYSTEM dosyası alınabilir. Online olarak almak için aşağıdaki işlemler uygulanabilir:
http://ertugrulbasaranoglu.blogspot.com/2013/08/ipucu-yerel-hesap-bilgilerinin.html
http://ertugrulbasaranoglu.blogspot.com/2013/07/ipucu-kayt-defterinden-sam-ve-system.html

12) MSF smart_hashdump post modülü kullanılır.

MSF smart_hashdump post modülü şu şekilde çalışır:

  • Sahip olunan yetki, işletim sistemi, rolü (DC olup olmadığı) belirlenir.
  • SYSTEM hakkına sahip olunmuşsa, kayıt defterinden SAM anahtarının altı okunur.
  • DC ise, LSASS içerisine kod enjekte edilir.
  • İşletim sistemi Windows Server 2008 ise ve yönetici haklarına sahip olunmuşsa, şu 3 adım gerçekleştirilir: Meterpreter getsystem komutu ile SYSTEM hakkı elde edilir. Eğer hata alındı ise, SYSTEM hakkıyla çalışan bir prosese sıçranır. Sonrasında da LSASS prosesine kod enjekte edilir.
  • İşletim sistemi Wİndows 7 ve üzeri bir işletim sistemi, UAC devre dışı ve yönetici haklarına sahip olunmuşsa, Meterpreter getsystem komutu ile SYSTEM hakkı elde edilir ve kayıt defterindeki SAM anahtarı okunur. 
  • İşletim sistemi Wİndows 2000/2003 veya XP ise, Meterpreter getsystem komutu ile SYSTEM hakkı elde edilir ve kayıt defterindeki SAM anahtarı okunur.
Kaynak:

13) Volume Shadow Copy ile SAM/SYSTEM/NTDS.dit dosyası alındıktan sonra bu dosyalar analiz edilir. NTDS.dit ve SYSTEM ile DC üzerinden domain kullanıcılarına parola özetlerinin elde edilmesi için bakınız.


İpucu: smb_enumusers_domain Modülü ile Domain Admin Olma Senaryosu

smb_enumusers_domain Modülü ile Domain Admin Olma Senaryosu

Etki alanı sızma testlerinde en çok kullanılan yöntemlerden biri, aynı gömülü yerel yönetici (Built-in Administrator) parolasını kullanan bilgisayarların tespit edilmesidir. Bu amaçla öncelikle port taraması gerçekleştirilir ve tarama sonucunda 445. portu açık olan bilgisayarlarda smb_login modülü (http://www.offensive-security.com/metasploit-unleashed/SMB_Login_Check) çalıştırılır. Bu modül temel olarak hedef IP adreslerine, kimlik doğrulaması yapılacak kullanıcıya (genelde gömülü yerel yönetici kullanılır) ait etki alanı adına (genelde WORKGROUP kullanılır), kullanıcı adına (genelde Administrator kullanılır) ve parola (genelde parola direk elde edilemediği için parola özeti kullanılır) bilgilerine ihtiyaç duyar. Bu (smb_login) modül ile hedef bilgisayarlara verilen kullanıcı bilgileri ile giriş yapılabilecek bilgisayarların listesi elde edilir. Örnek bir sonuç aşağıdaki gibidir:


Bu modül ile tespit edilen bilgisayarlar için psexec modülü (http://www.offensive-security.com/metasploit-unleashed/PSExec_Pass_The_Hash) çalıştırılarak hedef bilgisayarlara yetkili kullanıcı (SYSTEM) hakları ile giriş yapılmaya çalışılır. Giriş yapılan her bilgisaayrda hem kritik veri aranır hem de Domain Admin kullanıcısına ait jeton (token) araştırması yapılır.
Yukarıda temel olarak belirtilen bu işlemler sırasında Domain Admin jetonuna ulaşmak zahmetli olabilmektedir. Bu amaçla smb_enumusers_domain (http://www.rapid7.com/db/modules/auxiliary/scanner/smb/smb_enumusers_domain) adlı bir modül kullanılır. Bu modül ile bilgisayara giriş yapan kullanıcılar tespit edilebilir. Modülün örnek bir çıktısı aşağıdaki gibidir:

Bu (smb_enumusers_domain) modül, smb_login modülü ile yaklaşık olarak aynı parametreleri (hedef IP adresleri, kullanıcı adı, parola veya parola özeti, etki alanı adı başta olmak üzere diğer parametreler de özelleştirilebilir) alarak ilgili bilgisayarlarda oturumu olan hesapları listeler. Bu modülün çıktısından Domain Admin kullanıcıları seçilirse, hedef olarak bu bilgisayarlar üzerine yoğunlaşılabilir.

Bu modülün çıktısını ve etki alanındaki tüm yöneticilerin hesaplarının bulunduğu dosyayı parametre olarak alan bir betiğin sonucu aşağıdaki gibidir.


Bu modülün yaptığı işi ve daha kapsamlı seçenekler sunan KACAK adı uygulama ile ilgili ayrıntılı bilgi için bakınız.