SMB (Server Message Block) Dosya Paylaşımı


Server Message Block (SMB), ağ üzerindeki bilgisayarların dosya, yazıcı ve diğer iletişim noktalarını paylaşmasını sağlayan temel bir ağ protokolüdür. Modern Windows ortamlarında varsayılan olarak TCP 445 portunu (eski sistemlerde NetBIOS üzerinden TCP 139) kullanır.


Kurumsal ağların belkemiği olmasına rağmen, tarihsel olarak siber saldırganların kurumsal ağlara sızdıktan sonra kullandıkları "bir numaralı" protokoldür.


İşte siber güvenlik perspektifinden SMB protokolünün anatomisi, barındırdığı riskler ve sıkılaştırma (hardening) yöntemleri.


SMB Sürümlerinin Evrimi

SMB'nin güvenliğini anlamak için sürümler arasındaki farkı bilmek kritik bir öneme sahiptir. Saldırganlar genellikle eski sürümlerin zafiyetlerini hedefler.


Sürüm

Çıkış

Güvenlik Durumu

Açıklama

SMBv1

1983

Kritik Risk

Şifreleme yok. Kimlik doğrulama mekanizmaları zayıf. Ağda yanal hareket (lateral movement) için sayısız zafiyet (örn. EternalBlue) barındırır. Kesinlikle kapatılmalıdır.

SMBv2

2006

Orta Risk

Windows Vista ile geldi. Performansı artırdı ve mesaj imzalama (SMB Signing) yeteneğini geliştirdi ancak varsayılan şifreleme sunmaz.

SMBv3

2012

Güvenli

Windows 8 ve Server 2012 ile tanıtıldı. Uçtan uca şifreleme (AES) ve gelişmiş kimlik doğrulama mekanizmaları (Kerberos desteği) sunar.


En Yaygın SMB Saldırı Vektörleri

Saldırganlar bir ağa sızdıklarında, ayrıcalıklarını yükseltmek (privilege escalation) ve diğer makinelere sıçramak için SMB'yi suistimal ederler.

1. NTLM Relay Saldırıları

Bir saldırganın ağdaki trafiği dinleyerek (veya zehirleyerek) kurbanın kimlik doğrulama isteklerini araya girdiği ve bu yetkileri başka bir sunucuda (genellikle Domain Controller veya kritik bir dosya sunucusu) kullandığı saldırı türüdür.

  • Nasıl Çalışır? Kurban cihaz (A), saldırganın cihazına kimlik doğrulaması yapmaya çalışır. Saldırgan bu isteği alır ve hedef cihaza (B) yansıtır (relay). Doğrulama başarılı olursa, saldırgan B cihazı üzerinde kurbanın yetkileriyle kod çalıştırabilir.

  • Savunma: SMB Signing (İmzalama) zorunlu hale getirilerek paketlerin yolda değiştirilmesi veya yansıtılması engellenir.

2. Fidye Yazılımı (Ransomware) Solucanları ve EternalBlue

SMBv1'in barındırdığı zafiyetler, siber güvenlik tarihinin en yıkıcı saldırılarına zemin hazırlamıştır. Bunların en bilineni WannaCry ve NotPetya krizleridir.

  • Nasıl Çalışır? NSA tarafından geliştirilen ve sonradan sızdırılan EternalBlue (MS17-010) exploit'i, SMBv1 protokolündeki bir bellek bozulması (buffer overflow) hatasını kullanır. Bu sayede saldırgan, hedefe hiçbir kimlik bilgisi (parola vs.) olmadan doğrudan uzaktan kod yürütebilir (RCE).

  • Sonuç: Bir makine enfekte olduğunda, ağdaki diğer 445 portu açık SMBv1 makinelerini tarar ve saniyeler içinde tüm şirketi şifreler.

3. Null Session ve Ağ Keşfi (Enumeration)

Eski SMB yapılandırmaları, anonim (kimlik doğrulaması yapmamış) kullanıcıların ağ hakkında bilgi toplamasına izin verir. Buna "Null Session" denir.

  • Bir saldırgan sadece ağa bağlanarak kullanıcı listelerini, paylaşılan klasörleri, parola politikalarını ve sistem yöneticisi hesaplarının isimlerini çekebilir. Bu veriler, daha sonra yapılacak Brute-Force (kaba kuvvet) saldırıları için harita görevi görür.

SMB Sıkılaştırma (Hardening) En İyi Uygulamaları

Ağınızı SMB tabanlı saldırılardan korumak için aşağıdaki adımları ağ mimarinizin standart bir parçası haline getirmelisiniz:

  1. SMBv1'i Tamamen Kapatın: Bu bir tercih değil, zorunluluktur. Eski işletim sistemleri (Windows XP, Server 2003) barındıran izole sistemleriniz varsa, bunları ağın geri kalanından fiziksel veya katı VLAN kurallarıyla ayırın.

  2. Çevre Güvenlik Duvarında 445'i Engelleyin: İnternetten (WAN) iç ağınıza veya iç ağınızdan dışarıya doğru 445 (TCP) ve 137-139 (UDP) portları kesinlikle kapalı olmalıdır. SMB sadece yerel ağ (LAN) veya VPN üzerinden kullanılmalıdır.

  3. SMB Signing (İmzalama) Zorunluluğu Getirin: NTLM Relay saldırılarını engellemek için, özellikle Domain Controller ve kritik dosya sunucularında Group Policy (GPO) üzerinden Require Security Signature ayarını aktif edin.

  4. SMB Şifrelemeyi (SMBv3 Encryption) Açın: Hassas verilerin ağ üzerinde düz metin (clear-text) olarak okunmasını engellemek için PowerShell üzerinden Set-SmbServerConfiguration -EncryptData $true komutu ile paylaşımları şifreleyin.

  5. Least Privilege (En Az Ayrıcalık) İlkesini Uygulayın: "Everyone" grubuna asla tam yetki (Full Control) vermeyin. Sadece okuması/yazması gereken spesifik Active Directory gruplarına izin tanımlayın.

  6. İzleme ve Loglama: Windows Olay Günlüklerinde (Event Viewer) SMB erişim loglarını aktif edin. Özellikle Event ID 4624 (Başarılı Logon) ve 4625 (Başarısız Logon) olaylarını merkezi bir SIEM sistemine aktararak anomali tespiti yapın.




1. SMB Nedir?

SMB (Server Message Block), ağ üzerindeki bilgisayarların;

  • Dosya paylaşımı

  • Yazıcı paylaşımı

  • Named Pipe iletişimi

  • Uzak dosya erişimi

  • Kimlik doğrulama

  • IPC (Inter Process Communication)

işlemlerini gerçekleştiren istemci-sunucu mimarisine sahip bir ağ protokolüdür.

Linux tarafında SMB hizmeti çoğunlukla Samba yazılımı ile sağlanır.

Windows işletim sistemlerinde ise SMB yerleşik olarak bulunmaktadır.


Kullanım Alanları

Kurumsal ağlarda

  • Ortak klasörler

  • NAS cihazları

  • Active Directory

  • Domain Controller

  • Dosya Sunucuları

  • Yedekleme Sunucuları

  • Yazıcı Sunucuları


Çalıştığı Portlar

PortProtokolAçıklama
137UDPNetBIOS Name Service
138UDPNetBIOS Datagram
139TCPNetBIOS Session
445TCPDirect SMB

Modern sistemlerde esas kullanılan port:

TCP/445


2. SMB Tarihçesi

1983

IBM tarafından geliştirildi.

1987

Microsoft tarafından genişletildi.

Windows NT

SMB standart dosya paylaşım protokolü oldu.

2006

SMB2 geliştirildi.

2012

SMB3 geliştirildi.


3. SMB Nasıl Çalışır?

İstemci

DNS veya NetBIOS çözümleme

TCP 445 bağlantısı

NTLM veya Kerberos Kimlik Doğrulama

Tree Connect

Dosya erişimi

Read / Write

Disconnect


Kimlik Doğrulama

SMB;

  • NTLMv2

  • Kerberos

  • Active Directory

ile çalışabilir.


4. SMB Sürümleri

SMB1

En eski sürüm.

Özellikleri

  • Çok yavaş

  • Güvensiz

  • Şifreleme yok

  • Signing zayıf

Mutlaka kapatılmalıdır.


SMB2

Avantajları

  • Daha hızlı

  • Paket sayısı azaltıldı

  • Daha güvenli


SMB3

Güncel sürümdür.

Özellikleri

  • Encryption

  • Signing

  • Multi Channel

  • Failover

  • AES


Siber Güvenlik Açısından

SMB1 kullanımı ciddi risktir.

Sebepleri

  • EternalBlue

  • WannaCry

  • NotPetya

  • SMB Relay

  • Null Session


5. Samba Nedir?

Linux üzerinde SMB sağlayan açık kaynak yazılımdır.

Başlıca servisleri

smbd

Dosya paylaşımı

nmbd

NetBIOS

winbind

Active Directory entegrasyonu


Kurulum (Pardus)

sudo apt update
sudo apt install samba

Kontrol

smbd --version

Servis Kontrolü

sudo systemctl status smbd
sudo systemctl enable smbd
sudo systemctl restart smbd

6. Samba Yapılandırması

Dosya

/etc/samba/smb.conf

Kontrol

testparm

Örnek Global Ayarlar

[global]
workgroup = WORKGROUP
server string = File Server
security = user
map to guest = never
server min protocol = SMB2
server max protocol = SMB3
disable netbios = yes

7. Paylaşım Oluşturma

sudo mkdir /srv/paylasim
sudo chown root:users /srv/paylasim
sudo chmod 2770 /srv/paylasim

smb.conf

[Dosyalar]
path=/srv/paylasim
browseable=yes
read only=no
guest ok=no
valid users=@users

Servisi yeniden başlat

sudo systemctl restart smbd

8. Samba Kullanıcısı Oluşturma

Linux kullanıcısı

sudo adduser ali

SMB kullanıcısı

sudo smbpasswd -a ali

Etkinleştir

sudo smbpasswd -e ali

Listele

sudo pdbedit -L

9. ACL Kullanımı

ACL sayesinde daha ayrıntılı yetki verilebilir.

setfacl

Örnek

sudo setfacl -m u:ali:rwx /srv/paylasim

Kontrol

getfacl

10. İstemciden Bağlanma

Linux

smbclient

Paylaşımları listele

smbclient -L //192.168.1.20 -U ali

Bağlan

smbclient //192.168.1.20/Dosyalar -U ali

Mount

sudo mount -t cifs
sudo mount -t cifs //192.168.1.20/Dosyalar /mnt/share

Windows

Explorer

\\192.168.1.20\Dosyalar

11. SMB Signing

Man-in-the-Middle saldırılarını engeller.

Kontrol

server signing = mandatory

veya

server signing = required

12. SMB Encryption

SMB3 ile gelir.

smb encrypt = required

Şifreleme

AES-128

AES-256


13. Siber Güvenlik Açısından Riskler

Null Session

Kimlik doğrulaması olmadan bilgi alınabilir.

Önlem

restrict anonymous = 2

Guest Access

guest ok = no

SMB1

Mutlaka kapat.

server min protocol = SMB2

Weak Password

Brute Force

Password Spraying

Credential Stuffing


Anonymous Share

public = yes

kullanılmamalıdır.


14. Pentest Perspektifi

Port Tespiti

nmap -Pn -p445 HEDEF

Versiyon

nmap -sV -p445 HEDEF

Script

nmap --script smb-protocols HEDEF

Signing

nmap --script smb2-security-mode HEDEF

Enumeration

nmap --script smb-enum-shares HEDEF

Kullanıcılar

nmap --script smb-enum-users HEDEF

OS

nmap --script smb-os-discovery HEDEF

Vulnerability

nmap --script smb-vuln* HEDEF

smbclient

smbclient -L
smbclient //IP/share

rpcclient

rpcclient

Komutlar

enumdomusers
enumdomgroups
queryuser

enum4linux-ng

Modern araçtır.

enum4linux-ng

CrackMapExec / NetExec

netexec smb

Yetki kontrolü

Hash doğrulama

SMB Signing

Domain

Shares

Sessions


15. Yaygın SMB Saldırıları

Pass the Hash

NTLM hash kullanılır.


SMB Relay

Signing kapalıysa mümkündür.


NTLM Relay

Kimlik doğrulama yönlendirilir.


EternalBlue

MS17-010

SMB1 açığını kullanır.


WannaCry

SMB1 üzerinden yayıldı.


Lateral Movement

Saldırgan

Bir makineden

Başka makinelere

SMB ile geçiş yapar.


16. Hardening

SMB1 kapat

server min protocol = SMB2

Signing

server signing = mandatory

Encryption

smb encrypt = required

Guest kapat

guest ok = no

Anonymous kapat

restrict anonymous = 2

Firewall

Sadece gerekli IP'lere izin ver.

Örneğin UFW ile:

sudo ufw allow from 192.168.1.0/24 to any port 445 proto tcp
sudo ufw deny 445/tcp

Yetkilendirme

  • En az ayrıcalık (Least Privilege)

  • Ayrı kullanıcı grupları

  • Paylaşım bazlı erişim


ACL kullan

setfacl

Güncellemeleri yükle

sudo apt update
sudo apt upgrade

Logları izle

journalctl -u smbd
tail -f /var/log/samba/log.smbd

Fail2ban kullan

SMB brute force saldırılarına karşı yapılandırılabilir.


17. Olay Günlükleri (Log)

Başlıca log dosyaları:

/var/log/samba/log.smbd
/var/log/samba/log.nmbd
/var/log/samba/log.winbindd

Gerçek zamanlı izleme:

sudo tail -f /var/log/samba/log.smbd

Şüpheli durumlar:

  • Aynı IP'den çok sayıda başarısız oturum açma

  • Kısa sürede çok sayıda dosya silme veya yeniden adlandırma (fidye yazılımı belirtisi olabilir)

  • Bilinmeyen istemcilerden bağlantılar

  • Mesai dışı saatlerde yoğun erişim


18. SOC ve DFIR Açısından SMB

Bir Güvenlik Operasyon Merkezi (SOC) analisti SMB olaylarını incelerken şu göstergelere odaklanmalıdır:

  • Çok sayıda STATUS_LOGON_FAILURE

  • Farklı hesaplarla tek IP'den kimlik doğrulama denemeleri (Password Spraying)

  • SMB Signing devre dışı sistemler

  • Beklenmeyen yönetim paylaşımlarına (ADMIN$, C$, IPC$) erişim

  • Ağ içerisinde ani ve yoğun SMB trafiği (Lateral Movement)

SIEM platformlarında izlenebilecek örnek olaylar:

  • Başarısız oturum açma sayısı

  • Başarılı yönetici oturumları

  • Yeni oluşturulan SMB oturumları

  • Yetkisiz dosya erişimleri


19. En İyi Güvenlik Uygulamaları

  • ✅ SMB1'i tamamen devre dışı bırakın.

  • ✅ SMB3 ve mümkünse şifrelemeyi kullanın.

  • ✅ SMB Signing'i zorunlu hale getirin.

  • ✅ Misafir (Guest) erişimini kapatın.

  • ✅ Anonim oturumları engelleyin.

  • ✅ Güçlü parola ve çok faktörlü kimlik doğrulamayı (uygulanabildiği yerlerde) tercih edin.

  • ✅ Yönetim paylaşımlarına erişimi sınırlandırın.

  • ✅ Düzenli güvenlik yamalarını yükleyin.

  • ✅ Ağ segmentasyonu uygulayın.

  • ✅ SMB erişimlerini merkezi log yönetimi ile izleyin.

  • ✅ Yetkileri düzenli olarak gözden geçirin.

  • ✅ Yedeklemeleri çevrimdışı veya değiştirilemez (immutable) olarak saklayın.


Sonuç

SMB, kurumsal ağlarda en yaygın kullanılan dosya paylaşım protokollerinden biridir. Ancak geçmişte MS17-010 (EternalBlue) gibi kritik güvenlik açıkları ve WannaCry, NotPetya gibi fidye yazılımlarının SMB üzerinden yayılması, yanlış yapılandırılmış SMB servislerinin ne kadar büyük risk oluşturabileceğini göstermiştir.

Siber güvenlik açısından güvenli bir SMB altyapısı oluşturmak için:

  • Modern protokol sürümleri (SMB2/SMB3) kullanılmalı,

  • SMB1 kesinlikle devre dışı bırakılmalı,

  • Kimlik doğrulama ve yetkilendirme sıkılaştırılmalı,

  • SMB Signing ve şifreleme etkinleştirilmeli,

  • Günlük kayıtları sürekli izlenmeli,

  • Düzenli zafiyet taramaları ve yapılandırma denetimleri yapılmalıdır.

Bu yaklaşım, hem kurumsal veri güvenliğini artırır hem de ağ içerisinde yanal hareket (lateral movement), kimlik bilgisi ele geçirme ve fidye yazılımı saldırıları gibi tehditlere karşı önemli ölçüde koruma sağlar.

Yorumlar

Bu blogdaki popüler yayınlar

Android Telefon/Tablet Ekranını Pardus ETAP 23 Yüklü Akıllı Tahtaya Yansıtma

Pardus Etap 23’de Unutulmuş Etap Yetkili Parolasını Sıfırlama

Pardus Etap 23 Yazıcı Kurulumu