CVE-2026-33937
Handlebars.js tem Injeção de JavaScript via Confusão de Tipo de AST
- Publicado
- 27 de mar. de 2026
- Atualizado
- 4 de set. de 2026
- Atribuindo CNA
- GitHub_M
- Evidência observada
- 25 de ago. de 2026
CVSS primário
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HBaixo · próximos 30 dias
- Percentil
- 75,9%
- Data do modelo
- 21 de set. de 2026
EPSS é uma estimativa estatística, não uma certeza ou uma medida de impacto. Combine-o com CVSS, status KEV, exposição e seu ambiente.
Resumo
Handlebars fornece o poder necessário para permitir que usuários criem templates semânticos. Nas versões 4.0.0 a 4.7.8, `Handlebars.compile()` aceita um objeto AST pré-analisado além de uma string de template. O campo `value` de um nó AST `NumberLiteral` é emitido diretamente no JavaScript gerado sem aspas ou sanitização. Um atacante que possa fornecer um AST manipulado para `compile()` pode, portanto, injetar e executar JavaScript arbitrário, levando à Execução Remota de Código no servidor. A versão 4.7.9 corrige o problema. Algumas soluções alternativas estão disponíveis. Valide o tipo de entrada antes de chamar `Handlebars.compile()`; garanta que o argumento seja sempre uma `string`, nunca um objeto simples ou um valor desserializado de JSON. Use a compilação somente em tempo de execução do Handlebars (`handlebars/runtime`) no servidor se os templates forem pré-compilados no momento da construção; `compile()` ficará indisponível.
Fontes
4- CVE-2026-33937Exploit
POC em Python, Exploit para RCE por injeção de AST no Handlebars.js, as versões 4.0.0 a 4.7.8 do Handlebars.js são afetadas. Pontuação CVSS: 9.8 Crítico.
Prova de conceito de exploit para CVE-2026-33937, uma vulnerabilidade de injeção de AST no Handlebars que leva à execução remota de código no Node.js. Demonstra payloads de AST elaborados e fornece orientações de mitigação.
Uso responsável
Use informações de vulnerabilidade apenas em sistemas que você possui ou está autorizado a testar. O Kitploit vincula-se a metadados de pesquisa pública e não armazena código de exploração ou cargas maliciosas.