PT-2026-94344 · Vendure · Vendure
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
Vendure versões anteriores a 3.6.5
Description
Existe uma Negação de Serviço por Expressão Regular (ReDoS) não autenticada na API pública Shop GraphQL. O problema ocorre quando o filtro
StringOperators.regex é utilizado, pois o padrão bruto é passado para uma função definida pelo usuário (UDF) do SQLite síncrona que é executada dentro do loop de eventos do Node.js. Um invasor pode fornecer um padrão de retrocesso catastrófico — como um contendo quantificadores aninhados — para bloquear o loop de eventos, tornando a vitrine e a API de administração indisponíveis. Isso afeta especificamente implantações que utilizam os drivers de banco de dados better-sqlite3 ou sqljs. O resolver ShopProductsResolver.products é publicamente acessível, permitindo que este ataque seja disparado sem autenticação. Implantações PostgreSQL, MySQL e MariaDB não são afetadas, pois não executam esta expressão regular no loop de eventos do Node.js.Recommendations
Atualize para a versão 3.6.5.
Como mitigação temporária, restrinja o acesso ao resolver
ShopProductsResolver.products apenas a usuários autenticados, caso a navegação anônima não seja um requisito de negócio.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
Vendure