CVE-2026-33939 in Handlebarsinformación

Resumen

por VulDB • 2026-05-20

Handlebars proporciona la potencia necesaria para permitir a los usuarios construir plantillas semánticas. En las versiones 4.0.0 a 4.7.8, cuando una plantilla de Handlebars contiene sintaxis de decorador que hace referencia a un decorador no registrado (por ejemplo, `{{*n}}`), la plantilla compilada llama a `lookupProperty(decorators, "n")`, lo que devuelve `undefined`. El tiempo de ejecución invoca inmediatamente el resultado como una función, provocando un `TypeError: ... is not a function` no controlado que hace que el proceso de Node.js se bloquee. Cualquier aplicación que compile plantillas proporcionadas por el usuario sin envolver la llamada en un bloque `try/catch` es vulnerable a un Denegación de Servicio (DoS) mediante una única solicitud. La versión 4.7.9 corrige el problema. Existen algunas soluciones alternativas. Envuelva la compilación y la representación en un bloque `try/catch`. Valide la entrada de la plantilla antes de pasarla a `compile()`; rechace las plantillas que contengan sintaxis de decorador (`{{*...}}`) si los decoradores no se utilizan en su aplicación. Utilice el flujo de trabajo de precompilación; compile las plantillas en tiempo de construcción y sirva únicamente plantillas precompiladas; no llame a `compile()` en el momento de la solicitud.

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

Responsable

GitHub M

Reservar

2026-03-24

Divulgación

2026-03-28

Moderación

aceptado

Artículo

VDB-354041

CPE

listo

EPSS

0.00616

KEV

no

Actividades

muy bajo

Fuentes

Interested in the pricing of exploits?

See the underground prices here!