Kurumsal ortamlarda Active Directory güvenliğini artırmanın en önemli adımlarından biri, modern olmayan protokolleri devre dışı bırakmaktır. Bu kapsamda NTLMv1’in ardından ele alınması gereken bir diğer kritik konu ise SMBv1 (Server Message Block v1) protokolünün tamamen kaldırılmasıdır. Microsoft ekibinden Jerry Devore’un tecrübelerine dayanan bu makale, SMBv1’in neden acilen devre dışı bırakılması gerektiğini, üretim ortamında nasıl tespit edilip kaldırılacağını ve karşılaşılabilecek durumları pratik şekilde ele alır.
Protokol Sıkılaştırma Projesi İçin Öneriler
SMBv1’in kaldırılması yalnızca teknik bir işlem değildir; bir proje gibi ele alınması gerekir. Bu süreçte başarılı olan kurumların ortak birkaç yaklaşımı bulunuyor:
1. Uygulama Sahipleriyle İş Birliği Yapın
Zayıf protokollere bağımlı olan eski uygulamalar, sıkılaştırma projelerinin en büyük engelidir.
- Bazı uygulama sahipleri riskleri tam bilemez veya yapılandırma alternatiflerinden haberdar olmayabilir.
- Hangi cihaz veya hesapların SMBv1 kullandığını gösteren raporlar paylaşmak çok yardımcı olacaktır.
- Sadece “kapatın” demek yerine, teknik yönlendirme sağlamak gerekir.
2. Proje İçin Takım Çalışması
Active Directory’nin kompromize olması, tüm kurum için ciddi bir felakettir.
- Bu nedenle proje yalnızca AD ekibinin değil, siber güvenlik biriminin de sorumluluğunda olmalıdır.
3. SIEM ve Otomasyon ile Çalışın
- SIEM üzerinde özel dashboard’lar oluşturarak SMBv1 bağlantılarını izlemek mümkündür.
- Gerekli olaylar log olarak toplanmıyorsa güvenlik sponsorluğu büyük avantaj sağlar.
- Tüm logları almak yerine sadece gerekli event’lerin toplanması ortamı yormaz.
4. Eski Sistemleri Hedef Alın
Çoğu kurumda hala Windows XP, 2003 gibi cihazlara rastlanabiliyor.
- Bu cihazlara tam çözüm üretilemiyor olsa bile geçici mitigasyonlar uygulanabilir.
- Yine de bu cihazların ortam için sürekli risk oluşturduğunu unutmamak gerekir.
Neden SMBv1 Derhal Kaldırılmalı?
SMBv1, bugün kullanılan Windows ekosistemi için tamamen riskli ve modası geçmiş bir protokoldür.
• Çok eski:
OS/2 döneminden kalma bir protokoldür. Modern güvenlik beklentilerinin hiçbirini karşılamaz.
• Güvenlik açıklarına çok açık:
EternalBlue gibi kritik açıklıkların temelindedir. WannaCry gibi büyük saldırılara kapı açmıştır.
• Geriye dönüş saldırılarına açık:
Windows her ne kadar SMB 2.x ve 3.x kullanmaya çalışsa da, açık olduğunda saldırgan SMBv1’e düşmeye zorlayabilir.
• XP ve 2003 gibi cihazlar mecburen SMBv1 kullanır:
Bu cihazların günümüz ağlarına bağlanması başlı başına risk oluşturur.
SMBv1 Bağımlılıklarının Tespiti (Auditing)
Windows Server 2008 R2 ve üzeri sistemlerde SMBv1 kullanımını loglamak mümkündür.
Event ID 3000
Microsoft-Windows-SMBServer/Audit logunda SMBv1 bağlantıları görülebilir.
Ancak burada yalnızca istemci IP adresi görünür; kullanıcı adı görünmez.
Bu nedenle tam analiz için ek adımlar gerekir.
SMBv1 Kullanan Cihazların Çıkarılması
Öncelikle Event ID 3000 loglarını CSV’ye aktarmak için örnek bir işlem:
$logName = ‘Microsoft-Windows-SMBServer/Audit’ $outputFile = ‘C:tempSMBv1_Connections.csv’ $events = Get-WinEvent -LogName $logName -FilterXPath “*[System[EventID=3000]]” $eventData = @() foreach ($event in $events) { $clientAddress = $event.Properties[0].Value $timeCreated = $event.TimeCreated $eventObject = New-Object PSObject -Property @{ ‘ClientAddress’ = $clientAddress ‘TimeCreated’ = $timeCreated } $eventData += $eventObject } $eventData | Export-Csv -Path $outputFile -NoTypeInformation
Bu liste iyi bir başlangıçtır ancak yeterli değildir çünkü:
- Kullanıcı adı yok
- Cihaz ismi yok
- AD nesnesiyle eşleşmiyor
Bu nedenle daha akıllı bir yöntem gerekir.
Gelişmiş SMBv1 Tespit Metodu
1. Aktif SMB Oturumlarını Analiz Etme
Get-SmbSession komutu sayesinde:
- ClientUserName
- Dialect (SMB sürümü)
- ClientComputerName
görülebilir.
2. IP Adresini Cihaz Adına Çevirme
Event 3000 loglarında sadece IP geldiği için cihaz adını çözmek gerekir.
Kullanılabilecek yöntemler:
- nbtstat -A > En pratik yöntem
- Reverse DNS
- RPC & RDP Client Hello (ileri düzey)
Bulduğunuz cihaz adını Get-ADComputer ile eşleştirip:
- OS sürümü
- OU bilgisi
- Donanım tipi
gibi kritik veriler elde edebilirsiniz.
3. Event Tetiklemeli Çalışma
Dinamik IP ortamında IP değişebileceğinden, scriptin:
“Event ID 3000 loglandığında çalıştırılması”
gereklidir.
Windows Görev Zamanlayıcı (Task Scheduler) bunu destekler.
SMBv1 Kaldırıldığında Eski Cihazlara Ne Olur?
Grup ilkelerini okuyamaz
SYSVOL SMBv1 ile ulaşılamaz olduğundan yeni GPO’lar uygulanmaz.
Domain join işlemi yapılamaz
Eski cihazı domaine almak için geçici olarak SMBv1 açmanız gerekir.
AD site farkındalığı olmayan cihazlar yanlış DC’ye gidebilir
Özellikle PDC Emulator hedef alınır ve loglar şişmeye başlar.
Uygulamalar “Network path not found” gibi hatalar verir
Özetle:
SMBv1’in açık kalması sadece eski cihazları değil tüm domaini riske atar.
SMBv1 Kaldırma Süreci İçin Doğru ve Yanlışlar
Doğrular
Auditing aktif edin
Network capture yapmayı öğrenin
SIEM dashboard’ları kullanın
Eski protokolleri tespit etmek için PowerShell otomasyonları hazırlayın
Yanlışlar
Tüm eski cihazların emekli olmasını beklemek
Sadece AD ekibinin omuzlaması
Eski sistemleri görmezden gelmek
Kapsamlı bir analiz yapmadan direkt kapatmak