DOS SMBLoris NBSS Length Mem Exhaustion Attempt (PoC Based)
mbgokce	Genel	 12 Eylül 2019 12 Eylül 2019 1 Minute
SMBLoris atağı ismini SlowLoris atağından almış.
SlowLoris atağında, hazırlanan script ile farklı TCP portlarından sunucunun 80 portuna sürekli bağlantı açılır. Time out olan bağlantıların yerine hemen yenisi açılarak çok kısa bir sürede sunucu maksimum bağlantı sayısına ulaşır ve artık başka bağlantı kabul edemez, hizmet dışı kalır.
SMBLoris, Microsoft Windows işletim sistemlerine yönelik DoS saldırısıdır. SMB protokolündeki eski bir bellek kullanımı hatası nedeniyle oluşur. Güvenlik açığı SMB paketlerinin işlenmesi ve bellek alanının ayrılma biçiminden kaynaklanmaktadır. SMBLoris Windows 2000’den Win10’a kadar bütün sürümleri etkilemektedir.
SMB servisi 445 numaralı port üzerinde çalışır. Herhangi bir SMB oturumu için başlangıçta NetBIOS Oturum Hizmeti (NBSS) header’ı gönderilir ve bu header herhangi bir SMB kimlik doğrulaması yapılmadan önce işlenir. NBSS header’ı bellekte 4 bayt yer kaplar.
NBSS header yapısı şu şekildedir:
SMB servisini çalıştıran bir bilgisayar NBSS header’ını aldığında ‘Length’ kısmında belirtilen alanı bellekten hemen tahsis eder. 17 bit NBSS uzunluğu için SMB servisi maksimum 2^17 = 131072 bit (128 KiB) alan tahsis eder. Kernel her bağlantıyı 30 saniye açık tutar ve daha sonra kapatır. Yani her bağlantı için 30 saniye boyunca bellekten 128 KiB yer tahsis edilir.
Saldırgan mümkün olan bütün TCP portları (65535 adet port) ile SMB bağlantısı açarsa 30 saniyede 8 GiB ((65535 * 128 ) / 1024) RAM yer. Bu da makinenin performansını olumsuz yönde etkiler. Bu durum hassas makinelerin çökmesine neden olabilir.
SMBLoris saldırısını önlemenin iki yolu var:
SMB servisini çalıştıran bilgisayarı, gelen SMB bağlantı isteklerini küçük bir değerle sınırlayan bir Firewall’un arkasına koymak
SMB bağlantılarını engellemek
Yayımlanmış 12 Eylül 2019 12 Eylül 2019
Previous Post x86 Assembly Instructions