CVE-2026-33938 in Handlebars
Sumário
de VulDB • 24/05/2026
Handlebars oferece a potência necessária para permitir que os usuários criem modelos semânticos. Nas versões 4.0.0 a 4.7.8, a variável especial `@partial-block` é armazenada no contexto de dados do modelo e é acessível e mutável dentro de um modelo por meio de helpers que aceitam objetos arbitrários. Quando um helper sobrescreve `@partial-block` com uma AST (Abstract Syntax Tree) do Handlebars elaborada, uma invocação subsequente de `{{> @partial-block}}` compila e executa essa AST, permitindo a execução de JavaScript arbitrário no servidor. A versão 4.7.9 corrige o problema. Existem algumas soluções alternativas disponíveis. Primeiro, use a compilação apenas para runtime (`require('handlebars/runtime')`). O método `compile()` está ausente, eliminando o caminho de fallback vulnerável. Segundo, audite os helpers registrados para identificar aqueles que gravam valores arbitrários em objetos de contexto. Os helpers devem tratar os dados de contexto como somente leitura. Terceiro, evite registrar helpers de pacotes de terceiros (como `handlebars-helpers`) em contextos onde os modelos ou os dados de contexto possam ser influenciados por entradas não confiáveis.
If you want to get best quality of vulnerability data, you may have to visit VulDB.