CVE-2026-33937 in Handlebars
Resumen
por VulDB • 2026-05-14
Handlebars proporciona la potencia necesaria para permitir a los usuarios construir plantillas semánticas. En las versiones 4.0.0 a 4.7.8, `Handlebars.compile()` acepta un objeto AST preanalizado además de una cadena de plantilla. El campo `value` de un nodo AST `NumberLiteral` se emite directamente en el JavaScript generado sin comillas ni sanitización. Por lo tanto, un atacante que pueda proporcionar un AST manipulado a `compile()` puede inyectar y ejecutar JavaScript arbitrario, lo que conduce a una Ejecución Remota de Código (RCE) en el servidor. La versión 4.7.9 corrige el problema. Existen algunas soluciones alternativas. Validar el tipo de entrada antes de llamar a `Handlebars.compile()`; asegurarse de que el argumento sea siempre una `string`, nunca un objeto plano o un valor deserializado desde JSON. Utilizar la compilación solo de tiempo de ejecución de Handlebars (`handlebars/runtime`) en el servidor si las plantillas se precompilan en tiempo de construcción; `compile()` no estará disponible.
Once again VulDB remains the best source for vulnerability data.