NTLM v1 Audit Kontrol

NTLM temel Microsoft kimlik doğrulama protokollerinden birisidir. Windows NT’den beri uzun süredir kullanılmaktadır. Microsoft, Windows 2000’de daha güvenli olan Kerberos kimlik doğrulama protokolü uygulamasına rağmen, bir çok yapıda NTLM v1 ve NTLM v2 protokolleri kimlik doğrulama için hala yaygın olarak kullanılıyor.

NTLM v2, hem kimlik doğrulama hem de oturum güvenliği mekanizmaları açısından NTLM’ye kıyasla daha güvenlidir.

Yapımızda her zaman öncelikli hedefimiz Kerberos kimlik doğrulama protokolünü kullanmak olmalıdır. Ancak uygulama bağımlılıkları ve diğer sebeplerden dolayı NTLM ve NTLM v2 gibi kimlik doğrulama protokollerini de kullanmaya devam etmek zorunda kalabiliriz. Yapımızda eski ve NTLM v2’ye kıyasla daha güvensiz olan NTLM v1 protokolünü kullanarak kimlik doğrulaması yapanları tespit etmek, bu protokolleri kapatmadan önce büyük önem arz etmektedir.

NTLMv1 kullanmanın oluşturmuş olduğu riskler;

  • Zayıf şifreleme kullanılması, şifreleme için AES, SHA-256 gibi güçlü teknikler kullanılmaz.
  • Farklı araçlar (mimikatz gibi) kullanılarak LSA servisine ulaşılabilir.
  • Bir sunucu ile bir istemci arasında data interception saldırılarına ve ağ kaynaklarına yetkisiz erişime neden olan karşılıklı kimlik doğrulaması bulunmaz. Responder gibi bazı araçlar ağ üzerinden gönderilen NTLM verilerini alabilir ve bunları ağ kaynaklarına erişmek için kullanabilir.

Security Auditler içerisinden NTLM v1 kullanımını tespit etmek için aşağıdaki komut kullanılır.

Get-WinEvent -FilterHashtable @{logname=’Security’ ; ID=4624} | where {$_.message -match “ntlm v1”} | fl > C:\Volsys\NTLMv1.txt

Yukarıdaki komut çalıştırıldığında bizlere C:\volsys\ altında oluşturacağı dosya içerisinde, aşağıdakine benzer logları gösterecektir. Bu çıktı üzerinden NTLM v1 kimlik doğrulama protokolünü kullananları tespit edebiliriz.