LLMNR ve NBT-NS Poisoning




LLMNR (Link Local Multicast Name Resolution) ve NetBIOS-NS, Windows işletim sistemlerinin isim çözümlemesi ve iletişim için kullandığı iki bileşendir. LLMNR, Windows Vista işletim sisteminde ilk kez kullanılmıştır ve NetBIOS-NS servisinin devamı olarak bilinmektedir. 

Bir Windows istemcisi DNS kullanarak isim çözmede başarısız olduğu durumda komşu istemcilere bu isteği LLMNR protokolünü kullanarak çözümlenmesini bekler. LLMNR, DNS protokolüne bir alternatif değildir. DNS sorgularının başarısız olduğu durumlar için gelişmiş bir çözümdür.

İsim çözümlenmesi başarısız olduğu durumda, NetBios Name Service (NBT-NS/NetBIOS-NS) kullanılacaktır. NBT-NS, aynı amaca hizmet eden LLMNR'ye benzer bir protokoldür. İkisi arasındaki temel fark NBT-NS sadece IPv4 ile çalışır, LLMNR, hem IPv4 hem de IPv6 adreslerini çözmek için kullanılabilir.

Windows işletim sisteminin aynı ağda birbirleriyle iletişimi ve isim çözümlemesi işlem adımları;

1. Hosts dosyasının kontrolü

Erişilen cihazın kendisi olup olmadığı control edilir ve konfigürasyon dosyasında ulaşmak istediği sistemin bilgilerini araştırır. Konfigürasyon dosyaları C:\Windows\System32\drivers\etc dizinindedir.

2. DNS Cache (DNS Önbelleği) kontorol edilir.

Erişilecek cihaz bilgisi mevcutsa, bu bilgiler kullanılır. (ipconfig/displaydns komutuyla bu kayıtlara bakılabilir)


3. DNS Query (DSN Sorguları)

Yapılandırma dosyası ve DNS önbelleğinde istenilen bilgi elde edilemediği durumda DNS sunucusuna sorarak ismin çözümlenmesini bekler.


4. LLMNR Query (LLMNR sorgusu) 

DNS sunucusunun da  isim çözümlemesinde başarısız olduğunda bu protokol kullanılır.


5. NetBIOS-NS Query (NetBIOS-NS sorgusu)

OSI Modelinin “Oturum” (Session)  katmanında çalışır. NetBIOS, Windows işletim sistemleri arasında iletişim kurmak için kullanılan bir protokol değil, bir API'dir.

Bilgisayarın NetBIOS adı, bilgisayar adıyla aynıdır.


Üç farklı NetBIOS servisi vardır.

Name Service  (UDP 137)
Datagram Distribution Service (UDP 138)
Session Service (TCP 139)



LM ve NT Hash

LM ve NT Hash bilgileri windows sistemlerde SAM dosyasında tutulur. AD (Active Directory) sunucularında bu değerler NTDS.dit dosyasında bulunur. LM hash Windows Vista ve Windows Server 2008 işletim sistemleri ile kullanılmaya başlanmıştır, daha önce NT Hash kullanılmaktaydı.


NTLM


NTLMv1 ve NTLMv2 versiyonları bulunmaktadır. Bu iki versiyon da aynı şeyi ifade etmektedir.  NTLM(yani NTLMv1, NTLMv2, NetNTLMv1, NetNTLMv2) Yerel network ağ iletişim ve erişimi için kullanılmaktadır. LM ve NT hash özetleri gibi SAM veya NTDS.dit dosyalarında tutulmamaktadır. İstemci ve sunucu arasında Challange/Reponse tekniği ile kimlik doğrulaması yapılmaktadır. Bu yöntem basitce şu şekilde açıklanabilir.

1. İstemci sunucuya erişim talebinde bulunur.

2. Sunucu cevap olarak istemcinin kimliğini doğrulaması için 16 Byte lık rasgele bir değer yollar (challenge).

3. İstemci bu cevabı (challenge) özel anahtarı ile şifreleyerek tekrar Sunucuya cevap olarak yollar.

4. Sunucu Domain Controller a kullanıcı adı ile birlikte 3. Adımda şifrelenmiş olan (challenge) verisini gonderir ve doğrulama talep eder. Eğer Domain Controller bulunmuyorsa 4,5,6 adımları bu sunucu üzerinde yapılır.

5. Domain Controller İstemcinin özel anahtar değeri ile 3 adımdan iletilen değeri (challenge) ile şifreleyerek doğruluğunu kontrol eder ve Doğru veya yanlış olarak cevap döner.

6. Sonuç istemciye bildirilir.






Zayıflık

Zayıflığın sebebi, NBT-NS ve LLMNR'nin, komşu bilgisayarlardan gelen istek için herhangi bir doğrulama ölçütü sunmamasıdır. Böylece, istemci herhangi bir ismi çözmek için ağa broadcast yayın yaptığında saldırgan bu mesajı dinleme ve kurban bilgisayara yanıltıcı bir yanıt verme fırsatına sahip olmaktadır.

Ağ trafiğini zehirleyerek NTLMv2 hash özetinin yakalanması senaryosu

Hedef istemci o an ağda olmayan ve ya hiç bulunmayan bir paylaşıma erişmek istediği durumda, kendisi bu ismi çözemediği için DNS Sunucusuna ve tüm ağa paylaşımın sahibini öğrenmek için istek gönderecektir. O anda LLMNR poisoning (zehirleme) yapan kişi bu isteğe kendisiymiş gibi cevap verir. Bu aşamadan sonra istemci bilgisayar paylaşıma ulaşmak için kullanıcı adı ve şifre gibi bilgileri saldırgan a gönderecektir. Tüm bu aşamada elde edilen bilgiler NTLMv2 olmasına rağmen bu hash'i  kırmak çok uzun sürmemektedir.



Makale: Erhan YAZAN

Hiç yorum yok: