Ilk olarak LLMNR ve NBT-NS protokollerinin ne oldugunu kısa bir şekilde açıklayalım. LLMNR (UDP/5355, Link-Local Multicast Name Resolution) Windows Vista sonrasında IPv4 ve IPv6 isim çözümlemeleri için kullanılan protokoldur.  NetBIOS over TCP/IP veya NBT-NS (UDP/137,138;TCP/139) LLMNR ile beraber çalışan ve local network içerisinde kaynakları yayınlamak ve aramak için kullanılan protokoldur. Varsayılan olarak tüm network kartlarında ve Windows işletim sistemlerinde açık gelmektedir. Her iki protokolde broadcast çalışmaktadır. 

Windows işletim sistemleri isim çözümlemesi için ilk olarak DNS’i kullanır. DNS’den cevap alamaz (network adresini yanlışta yazmış olabilir) ise isim çözmek için LLMNR ve NBT-NS protokollerini kullanır. Bu protokoller brodcast çalıştığı için aynı subnetteki tüm makinalardan talep edilen ismi çözmeye çalışır. Brodcast trafiği dinleyerek araya giren saldırgan kendisini ulaşılmak istenen hedef makina olarak tanıtarak karşı tarafın NLTMv2 hash ve SAM bilgileri üzerinden kullanıcı hesaplarının şifre bilgilerine ulaşır. 

Basit bir örnek ile acıklamak gerekirse; \\nboluk adresine erişmek istiyorsunuz. DNS’den cevap alamaz veya adresi yanlış yazmış (\\nbol gibi) oldugunuz durumda DNS’den cevap alamayacagınız için devreye LLMNR/NBT-NS girerek ağdaki tüm cihazlara sorgu gonderiyor. Saldırgan bu aşamada devreye girerek kendisini ilgili alanın sahibi olarak tanıtıyor ve kurban kendi hash bilgilerini saldırgan ile paylaşıyor.

Bu durumdan korunabilmeniz için LLMNR ve network kartlarından Netbios over TCP/IP’nin kapatılması gerekiyor. LLMNR’nin kapatılması için aşağıdaki GPO’yu aktifleştirebilirsiniz. Netbios over TCP/IP için ise yine GPO yardımıyla reg key’i üzerinden kapatabilirsiniz.

LLMNR kapatılması için, Computer Configuration -> Administrative Templates -> Network -> DNS Client -> Turn off smart multi-homed name resolution -> Enabled

Network kartlarında Netbios over TCP/IP’yi kapatmak için aşağıdaki Powershell script’ini GPO ile gonderebilirsiniz.

Son olarak açıklamalarda sürekli bahsettiğimiz attacker’ın kim oldugunu acıklayalım 🙂 Ilgili phyton script’ini yazan abimiz Laurent Gaffie. Üç kişilik ekip olarak open source security ve hacking araçları yazıyorlar, takip etmenizi tavsiye ederim.

https://porchetta.industries/

https://github.com/SpiderLabs/Responder

https://g-laurent.blogspot.com/ 

Aşağıdaki linkleri ek bilgi olarak paylaşıyorum.

https://www.cynet.com/attack-techniques-hands-on/llmnr-nbt-ns-poisoning-and-credential-access-using-responder/

https://www.rapid7.com/db/modules/auxiliary/spoof/nbns/nbns_response/

Close