CVE-2026-33916
Təsvir
Handlebars istifadəçilərə semantik şablonlar qurmaq üçün zəruri imkanları təmin edir. 4.0.0 və 4.7.8 versiyaları arasında Handlebars runtime daxilindəki `resolvePartial()` funksiyası, prototip zənciri keçidlərinə (prototype-chain traversal) qarşı qoruma tətbiq etmədən `options.partials` üzərində sadə xüsusiyyət axtarışı vasitəsilə partial adlarını müəyyən edir. `Object.prototype` şablondakı partial istinadı ilə uyğunlaşan açara malik sətir dəyəri ilə çirkləndirilmiş olduqda, həmin çirklənmiş sətir partial gövdəsi kimi istifadə olunur və HTML escape edilmədən render edilir ki, bu da əks olunan (reflected) və ya saxlanılan (stored) XSS ilə nəticələnir. Versiya 4.7.9 problemi aradan qaldırır. Bəzi alternativ həll yolları mövcuddur. Prototip çirklənməsinin qarşısını almaq üçün tətbiqin işə düşməsi zamanı erkən mərhələdə `Object.freeze(Object.prototype)` tətbiq edin. Qeyd: bu, digər kitabxanaların işini poza bilər və/və ya şablonları kompilyasiya etməyən və hücum səthini azaldan Handlebars runtime-only build (`handlebars/runtime`) versiyasından istifadə edin.
Necə düzəltmək olar
- handlebarsjs handlebars4.7.9 və ya daha yeni versiya
- handlebars4.7.9 və ya daha yeni versiya
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| handlebarsjs handlebars | 4.0.0 ≤ v < 4.7.9 | 4.7.9 |
| handlebarsnpm | 4.0.0 ≤ v < 4.7.9 | 4.7.9 |
Versiyanızı yoxlayın
Məhsulu seçin və istifadə etdiyiniz versiyanı yazın; versiyanın təsirlənən aralıqda olub-olmadığını görün.
Attack Surface Management
Domenlərinizə bağlı aktivləri, onlarda işləyən texnologiyaları və məlum zəiflikləri bir siyahıda görün.