PT-2026-49529 · Npm · I18Next-Fs-Backend+1
CVSS v3.1
9.1
Crítica
| Vetor | AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H |
Nome do Software Vulnerável e Versões Afetadas
i18next-http-middleware versões anteriores a 3.9.7
i18next-fs-backend versões 2.6.5 e anteriores
Descrição
O
missingKeyHandler no i18next-http-middleware não rejeita variantes pontuadas de chaves restritas, como proto .polluted, bloqueando apenas chaves literais do corpo da requisição como proto, constructor e prototype. Quando utilizado com backends downstream que dividem a string de chave ausente usando um keySeparator configurado, como o i18next-fs-backend, essas chaves são passadas para um walker setPath() desprotegido que escreve no Object.prototype. Isso resulta em poluição de protótipo (prototype pollution), uma condição onde um invasor pode modificar o protótipo de objetos base, potencialmente causando travamentos da aplicação, comportamento de tradução corrompido, envenenamento de configuração ou a evasão de verificações de segurança baseadas em propriedades.Recomendações
Atualize para a versão 3.9.7 ou posterior.
Atualize o i18next-fs-backend para uma versão posterior a 2.6.5.
Não exponha o
missingKeyHandler a usuários não confiáveis, montando-o atrás de autenticação ou removendo a rota.
Implemente um filtro de corpo de requisição antes do handler para rejeitar qualquer chave de nível superior que contenha proto, constructor ou prototype após a divisão pelo keySeparator configurado.
Desative a persistência de chaves ausentes definindo saveMissing: false ao aceitar gravações de entradas não confiáveis.Exploit
Correção
Prototype Pollution
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Enumeração de Fraquezas
Identificadores relacionados
Produtos afetados
I18Next-Fs-Backend
I18Next-Http-Middleware