PT-2026-44156 · Git+2 · Liquidjs
CVSS v3.1
7.5
Alta
| Vetor | AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
Nome do Software Vulnerável e Versões Afetadas
LiquidJS versões anteriores a 10.26.0
Description
O filtro integrado
strip html utiliza uma expressão regular que contém quatro alternativas de quantificação preguiçosa (lazy-quantified) falhas. Ao processar entradas com inúmeros tokens de abertura <script, <style ou <!-- que não possuem fechamentos correspondentes, o mecanismo de regex V8 executa um backtracking quadrático. Isso leva a uma Negação de Serviço por Expressão Regular (ReDoS), onde o loop de eventos do Node.js é bloqueado, causando uma severa amplificação de CPU. Por exemplo, uma única requisição não autenticada de aproximadamente 350 KB pode travar o processo por cerca de 10 segundos. A configuração padrão memoryLimit: Infinity não limita o uso de CPU da regex e, mesmo quando configurada, o filtro cobra apenas o comprimento da string do limite, permitindo que a regex seja executada sem restrições.Recommendations
Atualize para a versão 10.26.0.
Como medida paliativa temporária, restrinja ou evite o uso do filtro
strip html em entradas de usuários não confiáveis até que a atualização seja aplicada.Exploit
Correção
DoS
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Enumeração de Fraquezas
Identificadores relacionados
Produtos afetados
Liquidjs