• 11-10-2023, 11:25:49
    #1
    Yaklaşık 1 gün önce CloudFlare blogunda http2 protokolü ile ilgili bir zero day açığı bilgisi verildi. (İlgili Blog >)

    Blogda, cloudflare, google ve aws tarafından tespit edilen bir zero day açığından bahsediliyor. http2 versiyonu kullanarak, hızlı Sıfırlama adı bir yöntemle, bir istek gönderip bunu defalarca iptal ederek HTTP/2'nin akış iptal etme özelliğinden yararlanıyor. Cloudflare'in dediğine göre bugüne kadar karşılaştıkları en büyük saldırı olma özelliği taşıyor (saniyede 201 milyon istek!) ve bu isteği görece küçük bir rakam kabul edilen 20000 botnetlik bir sistem tarafından yapıldığını söylüyor. milyonlarca makinelik botnetlerin olduğunu düşünürsek bu açığın ne kadar çok sorun çıkarabileceğini varın siz düşünün.

    Şimdi bu açığı nasıl kapatacağız?

    Eğer plesk kullanıyorsanız:
    plesk bin http2_pref disable
    nginx kullanıyorsanız config'e
    ssl:
    http2: False
    apache içn
    a2dismod http2
  • 11-10-2023, 11:56:12
    #2
    HTTP/2'nin devre dışı bırakılmasına gerek yok. Sunucuda bir takım sınırlamalar uygulanarak saldırıdan korunabilirsiniz.

    Saldırı tek bir HTTP bağlantısıyla birden fazla istek gönderilmesine olanak sağlıyor. Bu zaten HTTP/2'nin önemli bir özelliği. Ancak her istek için yeni bir bağlantı başlatmak ve istek göndermek maliyetli olduğu için, tek bağlantı ile birden fazla veri talep edilmesi saldırgan için daha az maliyetli oluyor ve saldırının etkisini artırabiliyor.

    Nginx kullananlar güvenlik açığını azaltacak şekilde konfigürasyonlarını (limit_req kullanarak) yapılandırabilirler.

    Aşağıdaki örnek yapılandırma tek bir IP adresinden saniyede en fazla 100 isteğe izin verir.

    http {
        limit_req_zone $binary_remote_addr zone=rate100rps:10m rate=100r/s;
    
        ...
    
        server {
            ...
            limit_req zone=rate100rps;
        }
    }
  • 13-10-2023, 09:31:51
    #3
    aponkral adlı üyeden alıntı: mesajı görüntüle
    HTTP/2'nin devre dışı bırakılmasına gerek yok. Sunucuda bir takım sınırlamalar uygulanarak saldırıdan korunabilirsiniz.

    Saldırı tek bir HTTP bağlantısıyla birden fazla istek gönderilmesine olanak sağlıyor. Bu zaten HTTP/2'nin önemli bir özelliği. Ancak her istek için yeni bir bağlantı başlatmak ve istek göndermek maliyetli olduğu için, tek bağlantı ile birden fazla veri talep edilmesi saldırgan için daha az maliyetli oluyor ve saldırının etkisini artırabiliyor.

    Nginx kullananlar güvenlik açığını azaltacak şekilde konfigürasyonlarını (limit_req kullanarak) yapılandırabilirler.

    Aşağıdaki örnek yapılandırma tek bir IP adresinden saniyede en fazla 100 isteğe izin verir.

    http {
        limit_req_zone $binary_remote_addr zone=rate100rps:10m rate=100r/s;
    
        ...
    
        server {
            ...
            limit_req zone=rate100rps;
        }
    }
    30k'lık bir botnet saldırısı altındaysam ve ip başına 100 isteği kabul edecek şekilde yapılandırdıysam bu saniyede 3 milyonluk request demek. Bence çoğu makineyi down etmeye yeter. Kapatın daha iyi. Performanstaki kaybınız %2 hadi bilemedim 3 olsun. önemli değil.