CVE-2026-33916 in Handlebars
Сводка
по VulDB • 11.06.2026
Handlebars обеспечивает необходимую мощность для создания пользователями семантических шаблонов. В версиях от 4.0.0 до 4.7.8 функция `resolvePartial()` в среде выполнения Handlebars разрешает имена частичных шаблонов (partials) посредством обычного поиска свойств в объекте `options.partials` без защиты от обхода цепочки прототипов (prototype-chain traversal). Если свойство `Object.prototype` было загрязнено строковым значением, ключ которого совпадает с ссылкой на частичный шаблон в шаблоне пользователя, это загрязненная строка используется в качестве тела частичного шаблона и выводится без HTML-экранирования, что приводит к отраженному (reflected) или сохраненному (stored) XSS. Версия 4.7.9 устраняет данную уязвимость. Доступны некоторые обходные пути. Для предотвращения загрязнения прототипа (prototype pollution) рекомендуется применять `Object.freeze(Object.prototype)` на ранней стадии запуска приложения. Примечание: это может нарушить работу других библиотек, и/или следует использовать сборку Handlebars только для среды выполнения (`handlebars/runtime`), которая не компилирует шаблоны и снижает поверхность атаки.
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.