CDN Nedir?
CDN, İngilizce Content Delivery Network’ün kısaltmasıdır ve Türkçesi “içerik dağıtım ağı” olarak bilinir. CDN, terim anlamı olarak, bir web sitesine ait statik içeriklerin (sürekli değişmeyen ve çoğunlukla veritabanı bağlantılı olmayan içerikler) ziyaretçiye en yakın CDN sunucusundan verilerek, web sitesinin daha hızlı açılmasını sağlamaya yarayan, içerik dağıtım sunucularından oluşan bir networkdür.
CDN Cache Saldırısı
Bir grup Alman siber güvenlik araştırmacısı, web önbellek sistemine sahip sitelere yeni cache poisoning(önbellek zehirleme) saldırı sayesinde web sitesini ziyaret edenlere içerik yerine hata mesajı verdiren bir saldırı keşfetti.
Bu sorun arka planında proxy önbellek sistemi bulunduran Varnish gibi ve Content Distribution Networks (CDNs) servisleri, Amazon CloudFront, Cloudflare, Fastly, Akamai, and CDN77 içeren siteleri etkiledi.
Peki Bu CPDoS Saldırısı Nasıl Gerçekleşiyor?
CPDoS’un açılımı Cache Poisoned Denial of Service(Servis Dışı Bırakmak için Bellek Zehirleme) olan bu saldırı orta düzey CDN sunucularının yanlış konfigüre edilmesi sonucu bellek web sayfalarının veya kaynaklarının kaynak sunucudan hata mesajı göndermesini sağlıyor.
3 Alman akademisyen Hoai Viet Nguyen, Luigi Lo Iacono, and Hannes Federrath göre CPDoS saldırısı kusurlu başlık içeren websitenin web kaynaklarına HTTP isteği göndermek tehdit oluşturmak için yeterli.
CPDoS attağının çalışma mantığı:
- Saldırgan hedef siteye kusurlu başlık içeren HTTP isteği gönderir.
- Eğer orta düzey CDN sunucusu istenen kaynağın kopyasını içermiyorsa istek kaynağa iletildiğinde hatalı biçimlendirilmiş başlık yüzünden çökecek.
- Sonuç olarak kaynak sunucu hata sayfasını çağırır. Nihayetinde istenen kaynak yerine önbellek sunucusu depolanır.
- Şimdi sayfayı ziyaret eden kişi hedef kaynağa ulaşmaya denediğinde orjinal içerek yerine önbelleğe alınmış hata sayfasına ulaşacak.
- CDN sunucusu aynı hata sayfasını CDN ağındaki kenar düğümlere yayarak kurbanın websitesini kullanılamaz hale getirir.
Önbellekteki orjinal içeriğin basit bir istekle hata sayfasıyla değiştirilmek istendiğine dikkat etmek gerek. Bunun anlamı web uygulama güvenliği firewall’ları ve DDoS koruması yapan güvenlik uygulamaları bu saldırıyı yakalayamaz hale geliyor çünkü onlar büyük tehditler veya düzensiz ağ trafiğini izlemek için yapılmış.
Dahası CPDoS önbelleklerle dağıtılan yamalar, donanım yazılımı güncellemelerini yapan güvenlik yazılımlarını engelleyebilir. Saldırganlar ayrıca çevrimiçi bankacılık veya resmi resmi web siteleri gibi kritik görevli web sitelerinde önemli güvenlik uyarılarını veya mesajlarını devre dışı bırakabilir.
Cache-Poisoned DoS Attack Against CDN Protected Sites
- HTTP Header Oversize(HHO) – Bir web uygulamasının kaynak sunucudan daha büyük bir üstbilgi boyutu sınırını kabul eden bir önbellek kullandığı senaryolarda çalışan büyük boyutlu bir başlık içeren HTTP isteği gönderdiğinde
- HTTP Meta Character(HMC) – Büyük boy başlık göndermek yerine, bu saldırı satır sonu / satır başı (\ n), satır besleme (\ r) veya zil (\ a) gibi zararlı bir meta karakter içeren istek başlığına sahip bir önbelleği atlamaya çalışır.
- HTTP Method Override (HMO) – DELETE isteklerini yasaklayan güvenlik politikasını atlamak için HTTP geçersiz kılma başlığını kullanma.
CPDoS Saldırılarına Karşı Hassas CDN Hizmetleri
Araştırmacılar, farklı web önbellek sistemleri kombinasyonlarına ve HTTP uygulamalarına karşı üç saldırı gerçekleştirdi ve Amazon’un CloudFront CDN’sinin CPDoS saldırısına karşı en savunmasız olduğunu buldular.
Testlerinin tam sonuçları aşağıdaki gibidir:
Ekip, bulgularını etkilenen HTTP uygulama satıcılarına ve önbellek sağlayıcılarına 19 Şubat 2019’da bildirdi. Amazon Web Servisleri (AWS) ekibi CloudFront’taki güvenlik açıklarını doğruladı ve hata sayfalarının 400 Kötü İstek tarafından durum kodu ile önbelleğe alınmasını yasaklayarak sorunu ele aldı.
Microsoft ayrıca bildirilen sorunları onayladı ve Haziran 2019’daki aylık güvenlik güncelleştirmelerinde CVE-2019-0941 olarak atanan bu güvenlik açığını azaltmak için bir güncelleştirme yayımladı.
Geniş Kapsamlı Etki
CDN’ler büyük coğrafi konumlarda çalışır ve bir CPDoS saldırısı tarafından oluşturulan hata sayfası birden fazla önbellek sunucusu konumuna erişebilir.
Ancak, araştırmacılar tüm uç sunucuların bu tehditten etkilenmediğini ve bazı müşterilerin geçerli sayfaları kaynak sunucudan alacağını belirledi.
Test için TurboBytes Pulse’u (global DNS, HTTP ve traceroute test aracı) ve bir web sitesi hız ölçüm hizmetini kullandılar.
Almanya (Frankfurt) ‘dan aynı ülkede (Köln) bir hedefe karşı düzenlenen bir saldırı, Avrupa ve Asya’nın bazı bölgelerinde önbellek sunucularını etkiledi.