“Amazon Web Services, Cloudflare ve Google bugün koordineli bir şekilde yaptıkları açıklamada, ‘Rapid Reset’ olarak adlandırılan bir zero-day saldırı tekniği kullanarak yapılan HTTP/2 tabanlı DDoS saldırılarını hakkında bilgi paylaştı. Şu ana kadar Amazon saniyede 155 milyon isteği engelledi, Cloudflare 201 milyon isteği, Google ise rekor kıran 398 milyon isteği durdurdu.
HTTP/2 Nedir? Ne İşe Yarar?
HTTP/2, HTTP (Hypertext Transfer Protocol) adlı internet protokolünün ikinci sürümüdür. HTTP, web tarayıcılarının ve sunucularının birbirleriyle iletişim kurmasını ve web sayfalarının tarayıcılara nasıl gönderileceğini düzenleyen bir protokoldür. HTTP/2, önceki sürüm olan HTTP/1.1’e göre bir dizi iyileştirme ve optimize sunar. İşte HTTP/2’nin temel özellikleri ve işlevleri:
Hız ve Performans: HTTP/2, web sayfalarının daha hızlı yüklenmesine olanak tanır. Bu, sayfaların daha hızlı görüntülenmesi ve kullanıcı deneyiminin iyileştirilmesi anlamına gelir. HTTP/2’nin sunduğu çoklu akışlar sayesinde aynı anda birden fazla kaynak indirilebilir, böylece veri transferi daha verimli hale gelir.
Bağlantı Yeniden Kullanımı: HTTP/2, tek bir bağlantı üzerinden birden fazla isteği destekler. Bu, her istek için yeni bir bağlantı kurma gerekliliğini ortadan kaldırır ve sunucu ve istemci arasındaki bağlantının yeniden kullanılmasına olanak tanır. Bu da performansı artırır.
Bağlantı Prioritizasyonu: HTTP/2, isteklerin ve yanıtların öncelik sırasını belirlemenizi sağlar. Bu, daha kritik kaynakların öncelikli olarak indirilmesini ve görüntülenmesini sağlar.
Header Sıkıştırma: HTTP/2, başlık bilgilerini sıkıştırarak veri transferini daha verimli hale getirir. Bu, daha az veri transferi gerektiği ve daha hızlı sayfa yüklemeleri anlamına gelir.
İstemci ve Sunucu Push: HTTP/2, sunucuların istemciye talep etmeksizin kaynakları iletebilmesini sağlar. Bu, sayfa yüklemelerini daha hızlı hale getirir.
HTTP/2’nin temel amacı web sayfalarının daha hızlı yüklenmesini ve daha iyi performans sergilemesini sağlamaktır. Bu nedenle, modern web tarayıcıları ve sunucuları tarafından desteklenir ve daha hızlı, daha verimli ve daha güvenilir bir web deneyimi sunar.
CVE-2023-44487 HTTP/2 Rapid Reset Saldırısı Nedir?
‘Rapid Reset’ tekniği, HTTP/2’nin ‘stream multiplexing’ özelliğini kullanıyor. Bu da çok sayıda istekiş yükü oluşturur. Saldırı, HTTP/2’nin bir özelliğinden yararlanıyor. İstekleri sürekli olarak gönderip iptal etme, hedef web sitesini veya uygulamayı aşırı yükleyerek doğru çalışmasını durduruyor. HTTP/2, DoS saldırılarına karşı koruma sağlamak için aktif akışların sayısını sınırlamaya çalışan bir güvenlik özelliğine sahip ancak her zaman etkili çalışmıyor. Protokol, istemcinin sunucunun onayına ihtiyaç duymadan akışları iptal etmesine izin veriyor ve bu saldırıda kötüye kullanılmakta. Bot ağları büyük istek üretebilir, bu da hedeflenen web altyapısına ciddi bir tehdit oluşturuyor
Organizasyonlar Ne Yapmalı?
HTTP/2 Rapid Reset saldırılarını azaltmada çok yönlü bir yaklaşım gerekiyor. Kapsamlı HTTP sel koruma araçları kullanın ve çeşitli saldırıları engellemek için DDoS savunmalarını güçlendirin. En kritik önleyici önlem, sistemlerin güncel ve yamaların zamanında uygulanması.
Güncelleme yapılamayan sistemler için aşağıdaki mitigate yöntemi uygulanabilir
Disable the HTTP/2 protocol on your web server by using the Registry Editor
Note Using Registry Editor incorrectly can cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that problems resulting from the incorrect use of Registry Editor can be solved. Use Registry Editor at your own risk. For information about how to edit the registry, view the “Changing Keys and Values” Help topic in Registry Editor (Regedit.exe) or view the “Add and Delete Information in the Registry” and “Edit Registry Data” Help topics in Regedt32.exe.
- Click Start, click Run, type Regedit in the Open box, and then click OK.
- Locate and then click the following registry subkey:
HKLM\SYSTEM\CurrentControlSet\Services\HTTP\Parameters
- Set DWORD type values EnableHttp2TIs and EnableHttp2Cleartext to one of the following:
- Set to 0 to disable HTTP/2
- Set to 1 to enable HTTP/2
- Exit Registry Editor.
- Restart the computer.
Include a protocols setting for each Kestral endpoint to limit your application to HTTP1.1
For .NET and Kestral, servers without HTTP/2 enabled are not affected. To limit your application to HTTP1.1 via config, edit your appsettings.json to include a protocols setting for each endpoint:
"Kestrel": {
"Endpoints": {
"http": {
// your existing config
"Protocols": "Http1"
},
"https": {
// your existing config
"Protocols": "Http1"
}
}
}
```