LLMNR (Link-Local Multicast Name Resolution) : Aynı yerel bağlantıdaki bilgisayarlar için isim çözümlemesi yapmalarına olanak tanıyan DNS bazlı bir protokoldür. Sıklıkla TCP&UDP/5355. Portta çalışmaktadır.
mDNS (Multicast DNS) : Yerel bir DNS sunucusunun bulunmadığı küçük ağlarda, isim çözümlemesi görevini üstlenen bir protokoldür.
NBT-NS (NetBIOS Name Server) : Diğerlerine benzer şekilde, host kimliği belirlemede kullanılan Microsoft Windows’un alternatif bir bileşenidir. Sıklıkla TCP&UDP/137. Portta çalışmaktadır.
NTLMv2Hash : Kullanıcı parolaları geri döndürülemez fonksiyonlardan geçirilerek, elde edilen parola özetleri(hash) formatında saklanırlar. NTLMv2 parola hash formatı ise Windows işletim sistemlerinde istemcilere ait parolaların ilgili işlemler sonrası elde edilen özet halidir ve SAM dosyasında saklanmaktadır.
Örnek bir senaryo ile bu LLMNR Zehirlenmesini anlatacak olursam;
** Bir cihaz, bir sunucuya gitmeye çalışıyor diye varsayalım. Gideceği yer aslında “\\ortakalan” sunucusu iken kurbanın erişmek için yazdığı “\\ortak” oluyor. DNS, cihaza böyle bir sunucu bulamadığının yanıtını gönderiyor. Cihaz, yerel ağında bulunan diğer cihazlara “\\ortak” sunucusunun adresini bilen var mı diye istek gönderiyor. Saldırgan bu aşamada, bu “\\ortak” sunucusuna ait diye kurbana bir adres gönderiyor. Kurban ise saldırgana kendi kullanıcı adını ve NTLMv2 hashini gönderiyor. **
LLMNR ve NBT-NS Poisoning : Saldırgan, ağdaki erişim isteklerini dinlemeye başlar ve broadcast olarak ağa paketler gönderir. Kurban, ağda bulunmayan ve DNS sunucusu kayıtlarında olmayan bir cihaza erişim isteğinde bulunur. DNS sunucusundan, böyle bir kayıt olmadığına dair yanıt aldıktan sonra, kurban tarafından tüm ağa bu sunucuyu bilen birinin olup olmadığı sorulur. Tam o sırada saldırgan, bu isteğe yanıt verir. Kurban kimlik bilgilerini ve NTLMv2Hash değerini saldırgana iletir. Bu sayede saldırgan parola hash’ini ele geçirmiş olur.

Şimdi şu zafiyeti bir de biz sömürelim!
Sanal makine olarak kurduğum Windows makineye Kali-Linux ile saldırıyı gerçekleştireceğim. Adım adım anlatacağım ve ekran görüntülerini sizlerle paylaşacağım;
Step 1 : Responder yazılımını çalıştıracağız. Responder başladıktan sonra, aktif olarak seçtiğimiz arayüzü dinlemeye başlayacak.
responder -I eth0 -rdw

Step 2 : Kurban makinede, olmayan bir sunucuya gitmeye çalışacağız.


Step 3 : Kurban cihazda yapılan yanlış sunucuya gitme işlemi sonrasında, responder yazılımımızın sürekli(broadcast) olarak ağa gönderdiği paketleri kurban cihaz alır ve kullanıcı adı, parola hashi bilgilerini saldırgan cihazına yollar.

Step 4 : Default ayar olarak ” /usr/share/responder/logs ” dizini altına, kurban makinenin IP’si ile başlayan bir txt dosyasının içine kurbanın kullanıcı adı ve parola hashi yazılıyor.

Step 5 : Kullanıcı adı ve parola hashini SMB ile başlayan txt içerisinde görüntüleyebiliriz.

Step 6 : John The Ripper yazılımını kullanarak hashi kırmaya çalışacağız.

Zafiyete karşı alınabilecek temel önlemler;
- LLMNR ve NBT-NS servislerinin devre dışı bırakılması,
- Aynı alt ağlarda bulunan cihazların iletişiminin VLAN ile oluşturulması da saldırıya karşı önlem sağlayacaktır.
0x010
Yararlı bilgi için teşekkürler
BeğenLiked by 1 kişi