Active Directory Güvenlik Serisi – Bölüm 2: SMBv1’i Kaldırma

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