CVE-2023-54404
Açıklama
Zod schema-validation kütüphanesi, açık bir boyut sınırlaması olmaksızın container şeması kullanan bir uygulamaya büyük bir dizi (array), küme (set) veya eşleme (map) göndererek saldırganların belleği tüketmesine olanak tanıyan kontrolsüz kaynak tüketimi zafiyeti içermektedir. $ZodArray içerisindeki handleArrayResult ayrıştırma mantığı (ve eşdeğer set ve map yolları), herhangi bir sınırlandırma veya erken sonlandırma olmaksızın başarısız olan her öğe için tüm doğrulama sorunlarını biriktirmekte, bu da işlemin her öğe başına bir sorun nesnesi tahsis etmesine ve bellek yetersizliği (out-of-memory) koşulları altında çökmesine neden olmaktadır. Bu durum, z.array() gibi bir container şemasının boyut sınırı olmadan tanımlandığı varsayılan yapılandırmada erişilebilirdir. e06a510 commit'indeki (pull request 6652, ilk olarak 4.6.6 sürümünde yayınlandı) üst akış değişikliği, yalnızca .max(), .length() ve .size() boyut kontrollerini öğe ayrıştırmasından önce çalışacak şekilde taşıyarak açık bir üst sınır tanımlayan şemalar için aşırı boyutlu girdileri reddetmektedir; geliştiriciye göre, sınırsız container'lar değişmemiştir. Yayınlanan hiçbir sürüm burada açıklanan sınırsız (varsayılan) durumu gidermemektedir ve toplam biriken hataları sınırlandırmak için isteğe bağlı bir ayar önerilmiş ancak birleştirilmemiştir.
Nasıl düzeltilir
- zod4.6.6 ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| zodnpm | v < 4.6.6 | 4.6.6 |
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.