CVE-2022-3252
Açıklama
HTTP gövdesi sıkıştırmasının tamamlandığının hatalı tespiti; SwiftNIO Extras, alınan HTTP istek veya yanıt gövdelerini şeffaf bir şekilde açmak için bir çift yardımcı araç sağlar. Bu iki nesne (HTTPRequestDecompressor ve HTTPResponseDecompressor), sıkıştırılmış gövdenin ne zaman tamamlandığını tespit etmede başarısız olmuştur. HTTP mesaj gövdesine ek olarak gereksiz veriler eklendiğinde, kod bu verileri tekrar tekrar açmaya çalışacak ve başarısız olacaktır. Bu durum, herhangi bir ilerleme kaydedilmeyen sonsuz bir döngüye yol açarak sistemin kilitlenmesine (livelock) ve hizmet reddine (DoS) neden olur. Bu sorun, sıkıştırılmış bir HTTP mesajı gönderebilen herhangi bir saldırgan tarafından tetiklenebilir. Sıkıştırılmış HTTP mesajları HTTP istekleri için müzakere edilemediğinden, bu durum en yaygın olarak HTTP sunucularında görülür ancak kullanıcıların HTTP istekleri için de sıkıştırma açmayı yapılandırmış olması mümkündür. Saldırı düşük çaba gerektirir ve muhtemelen herhangi bir ayrıcalık veya sistem erişimi gerektirmeden gerçekleştirilebilir. Kullanılabilirlik üzerindeki etkisi yüksektir: işlem anında kullanılamaz hale gelir ancak hemen çökmez; yani işlemin, bir yönetici müdahale edene veya otomatik bir devre kesici çalışana kadar bu durumda kalması mümkündür. Kontrol edilmezse, bu sorun tekrarlanan tampon bellek tahsisleri nedeniyle bellek kaynaklarını çok yavaş bir şekilde tüketecektir, ancak tamponlara veri yazılmadığı için işlemlerin uzun bir süre boyunca sonlanmaması mümkündür. Bu risk, şeffaf HTTP mesajı sıkıştırması kaldırılarak hafifletilebilir. Sorun, zlib tarafından bildirilen sıkıştırılmış gövde sonlandırmasının doğru şekilde tespit edilmesi ve daha fazla verinin sıkıştırmayı reddetmesiyle düzeltilmiştir. Sorun Vojtech Rylko (https://github.com/vojtarylko) tarafından bulunmuş ve GitHub üzerinden kamuoyuna bildirilmiştir.
Nasıl düzeltilir
- apple swift-nio-extras1.9.2, 1.10.3, 1.14.0 ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| apple swift-nio-extras | v < 1.9.2, 1.10.0 ≤ v < 1.10.3, 1.11.0 ≤ v < 1.14.0 | 1.9.2, 1.10.3, 1.14.0 |
Sürümünüzü kontrol edin
Ürünü seçin ve kullandığınız sürümü yazın; sürümün etkilenen aralıkta olup olmadığını görün.
Attack Surface Management
Alan adlarınıza bağlı varlıkları, bu varlıklarda çalışan teknolojileri ve bilinen zafiyetleri tek listede görün.