memcached-logo

Memcached, nesnelerin belleğe kaydedilmesine ve çok sayıda açık bağlantıyla çalışacak şekilde tasarlanmasına olanak tanıyan açık kaynaklı ve kolayca dağıtılabilen dağıtılmış önbelleğe alma sistemidir. Memcached sunucu, TCP veya UDP bağlantı noktası 11211 üzerinden çalışır.

Memcrashed

Yaygın olarak kullanılan Memcached sunucularını orijinal gücünden 51.000 kat fazla güçle DDoS saldırı yapabilmenin bir yolu bulundu ve bu da büyük web sitelerinin ve internet altyapısının devre dışı kalmasına neden olmaya başladı.

24 Şubat 2018 tarihinde Cloudflare, memcashed amplification saldırılarını raporladı. Bildiriden 4 gün önce de memcache sorgularında artışlar olmaya başlıyordu. Bazı sağlayıcılar bu veriler ile network trafiğini incelediğinde hiçbir IPv4’in memcached veri kümesinde olmadığını fark etti.

heis-cloud-mem

memcached-ddosmon

Fark edilmeyen sonuç ise 260 Gbps. 1 haftalık amplification saldırısı için büyük bir skor olarak yorumlayabiliriz. Tabi bunun saldırı sıklığından ziyade paket büyüklüğünden olduğunu tablolardan da görebiliyoruz.

memcached-gpb

TCPDump örnek veri,

$ tcpdump -n -t -r memcrashed.pcap udp and port 11211 -c 10
IP 87.98.205.10.11211 > 104.28.1.1.1635: UDP, length 13
IP 87.98.244.20.11211 > 104.28.1.1.41281: UDP, length 1400
IP 87.98.244.20.11211 > 104.28.1.1.41281: UDP, length 1400
IP 188.138.125.254.11211 > 104.28.1.1.41281: UDP, length 1400
IP 188.138.125.254.11211 > 104.28.1.1.41281: UDP, length 1400
IP 188.138.125.254.11211 > 104.28.1.1.41281: UDP, length 1400
IP 188.138.125.254.11211 > 104.28.1.1.41281: UDP, length 1400
IP 188.138.125.254.11211 > 104.28.1.1.41281: UDP, length 1400
IP 5.196.85.159.11211 > 104.28.1.1.1635: UDP, length 1400
IP 46.31.44.199.11211 > 104.28.1.1.6358: UDP, length 13

Paketlerin büyüklüğü 1400 bayt.  23Mpps x 1400 =  257 Gbps.

15 baytlık talep 134KB yanıt tetikledi. Bu 10.000x büyütme faktörü! Pratikte,  15 byte’lık bir istekte 750 KB yanıt gördük (51,200x’lik bir amplifikasyon).

Memcrashed saldırısı nasıl işliyor?

Amplification saldırılarının etkili olmasında genellikle yanıt paketlerinin talep paketlerinden daha fazla olmasından kaynaklanıyor. 1×5 1×10 katına kadar bir fazlalıkla spoof edilebilir.

spoofing-mem

Nasıl çözeriz?

Local Server

Sadece local server’i dinlemesi için –listen 127.0.0.1 11211 parametresini kullanılabilir. -U 0 ile UDP devre dışı bırakılabilir.

Update 1.5.6

Dün Memcached’e bug fix içeren bir güncelleme yapıldı.
Güncelleme ile UDP portu varsayılan disable olarak değişti.
Doğrudan -U 11211 (UDP Port) parametresini uygulamadıkça Memcached UDP disable olarak çalışacaktır.

Daha fazla release not. Update 1.5.6 Download

Yazar