Responder - LLMNR, NBT-NS ve mDNS Servisleri Üzerinden Kullanıcı Bilgileri Elde Etme

Yüklenme Tarihi: 2020-03-31


Bu makalede, kimlik doğrulama bilgilerini çalmak için Microsoft Windows'un ad çözümleme hizmetlerinin nasıl kötüye kullanılabileceğini göstereceğim. LLMNR, NBT-NS ve mDNS zehirlemesi Microsoft Windows sistemlerde olan bir özelliğin sömürülmesine dayalı bir saldırı şeklidir. Genellikle yerel ağlarda veya domain yapılarında karşımıza gelir. 

Örnek verecek olursak bir kullanıcının ağ ortamında dosya sunucusuna (veya ağda paylaşılan herhangi bir yere) bağlanmak istediğini düşünelim. Eğer kullanıcının yazdığı adres doğruysa makine dosya sunucusuna bağlanabilecektir. Peki, yanlış ise ne oluyor? 

Öncelikle bağlanmak istediği cihazın ismini çözümlerken (yani IP adresini bulurken) hangi yolu izler ona bakalım.

1 DNS Cache’de arar.   (Önceden yapılan sorgulardan kalan bilgiler)
2 Hosts dosyasında arar. (C:\Windows\System32\drivers\etc\hosts)
3 DNS sorgusu yapar. 
4 LLMNR (Link Local Multicast Name Resolution) sorgusu yapar.
5 NetBios-NS (Name Service) sorgusu yapar.

Windows istemcisi DNS kullanarak ulaşmak istediği makine adını çözümleyemezse komşu makinelere sormak için LLMNR protokolünü kullanır. LLMNR, hem IPv4 hem de IPv6 adreslerini çözümlemek için kullanılabilir.

Bu başarısız olursa NetBios Ad Hizmeti (NBT-NS) kullanılır. NBT-NS, aynı amaca hizmet eden LLMNR'ye benzer bir protokoldür. İkisi arasındaki temel fark NBT-NS'nin broadcast çalışmasından dolayı sadece IPv4 üzerinden çalışmasıdır. Bir isteği çözmek için LLMNR veya NBT-NS kullanıldığında, ağda sorulan cihazın IP'sini bilen tüm cihazlar yanıt verebilir.

Bu durumda biz saldırgan taraf olarak araya girip, aradığı adresin kendimiz olduğunu söyleyerek hedef makinenin üzerimize bağlantı kurmasını sağlıyoruz.  
Microsoft Windows sistemlerin birbirleri ile haberleşme mimarisinden ötürü hedef makine bağlantı sırasında bize NTLMv2 Hash değerini veriyor. Hangi bilgisayar kullanıcısı ile oturum açılmış ise o kullanıcıya ait NTLMv2 Hash bilgisini alacağız. Yerel admin yada domain admin oturumunun hash bilgilerini elde ettiğimizi düşünürsek oldukça tehlikeli bir yöntem. 

responder

Responder uygulaması ile LLMNR ve NetBIOS isteklerine sahte bir cevap (kendi IP adresimizi) gönderiyoruz. Hedef makinede bize kullanıcı adını ve kullanıcı parolasının hash halini gönderiyor. Biz bu hash bilgilerini kimi zaman kırıyoruz (john the ripper, hashcat) kimi zaman doğrudan yönlendirerek ağdaki diğer cihazlar üzerinde oturum elde etme yoluna gidiyoruz.

Uygulamaya geçecek olursak öncelikle Responder aracını Kali makinemize kuralım.

https://github.com/SpiderLabs/Responder.git adresinden uygulamayı indiriyoruz.

 python Responder.py -h  parametresiyle uygulamanın alabileceği komutları inceleyebilirsiniz.

responder help

Uygulamanın bulunduğu dizinde Responder.conf ayar dosyası bulunmakta. Uygulama çalıştırıldığında hangi servislerin başlatılıp başlatılmayacağını buradan ayarlayabilirsiniz.

responder conf

 python Responder.py -i 192.168.42.131 -I eth0 -w -r -f  komutu ile uygulamayı çalıştırıyoruz.

-i     : Ip adresimizi belirttik.
-I    : Ağ adaptörümüzü belirttik. ( eth0, gns33, wifi0 vs.)
-w   : WPAD Proxy sunucusunu başlatır. Default olarak kapalı gelir.
-r    : NetBIOS’un wredir sorgularına cevap verir
-f    : Makine parmak izlerini izlememizi sağlar.    

Uygulama LLMNR, NBT-NS ve mDNS saldırılarına hazır şekilde bulunduğu ağı dinlemekte

Hedef makine üzerinden dosya sunucuya bağlanmaya çalışalım.

Böyle bir ad olmadığı için (yada yanlış yazılacağından dolayı) bağlantı kuramadı.

Responder aracı araya girerek hedefi kendine yönlendirdi ve hedef makinedeki oturum bilgilerini aldı. 

Yakalanan bu bilgiler responder/logs dizini altında tutulmakta. 

Elde ettiğimiz txt uzantılı dosyayı Johnny adlı uygulamaya vererek hash değerini çözmeye çalışalım.

Görüldüğü üzere kullanıcı adı “ITECH” ve parola “boş” olarak elde etmiş olduk.

Bu zafiyeti önlemek için LLMNR/NetBIOS isim çözümleme özelliğini kapatabiliriz.

Gpedit.msc’den Yerel Bilgisayar İlkesi -> Bilgisayar Yapılandırması -> Yönetim Şablonları -> Ağ -> DNS İstemcisi yolu izlenerek en altta yer alan “Çok noktaya ad çözümlemesini kapat” seçeneği “Enabled” konuma getirilirse, Windows üzerinde LLMNR devre dışı bırakılmış olur. 

NetBIOS Name servisi ise Ağ Bağdaştırıcı Ayarları’ndan, Adaptör Ayarları -> TCP/IPv4 ayarları -> Gelişmiş seçeneği altında yer alan WINS  sekmesi altındaki “TCP/IP üzerinde NetBIOS'u devre dışı bırak"  kutucuğu aktif edilerek devre dışı bırakılabilmektedir.

Başka bir yazımda görüşmek üzere…
 

UYARI

Bu sitede anlatılanlar tamamen eğitim ve korunma amaçlıdır.

Anlatılan yöntemlerin yasa dışı ve kanuna aykırı şekilde kullanılması durumunda şahsım ve sitem sorumlu tutulamaz.

Buradaki bilgiler kullanılarak herhangi bir şahsın veya kurumun uğrayabileceği ya da uğradığını iddaa edebileceği kayıp ya da zararlara karşı sorumluluk kabul edilemez!

SİTEDE ARAMA YAP
SOSYAL MEDYA
social-medya-icon social-medya-icon social-medya-icon social-medya-icon
REKLAM ALANI
Vatan İnşaat

Aytekin UZUN | System Network Administrator

info@siberguvenlikportali.com
Copyright © 2020