CVE-2026-33916
Açıklama
Handlebars, kullanıcıların anlamsal şablonlar oluşturmasına olanak tanıyan gücü sağlar. 4.0.0 ile 4.7.8 arasındaki sürümlerde, Handlebars çalışma zamanındaki `resolvePartial()` fonksiyonu, prototip zinciri geçişine karşı koruma sağlamadan `options.partials` üzerinde düz bir özellik araması yoluyla partial adlarını çözer. `Object.prototype` üzerine, anahtarı bir şablondaki partial referansıyla eşleşen bir dize değeri kirletildiğinde, kirletilmiş dize partial gövdesi olarak kullanılır ve HTML kaçışı yapılmadan işlenir, bu da yansıtılmış veya kalıcı XSS ile sonuçlanır. Sürüm 4.7.9 sorunu düzeltir. Bazı geçici çözümler mevcuttur. Prototip kirlenmesini önlemek için uygulama başlangıcında erken aşamada `Object.freeze(Object.prototype)` uygulayın. Not: bu diğer kütüphaneleri bozabilir ve/veya şablonları derlemeyen ve saldırı yüzeyini azaltan yalnızca çalışma zamanı Handlebars derlemesini (`handlebars/runtime`) kullanın.
Nasıl düzeltilir
- handlebarsjs handlebars4.7.9 ya da sonraki bir sürüm
- handlebars4.7.9 ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| handlebarsjs handlebars | 4.0.0 ≤ v < 4.7.9 | 4.7.9 |
| handlebarsnpm | 4.0.0 ≤ v < 4.7.9 | 4.7.9 |
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.