i18next-http-middleware ≤ 3.9.6: Prototype Pollution via missingKeyHandler
O missingKeyHandler do i18next-http-middleware ≤ 3.
O que mudou
O missingKeyHandler do i18next-http-middleware ≤ 3.9.6 bloqueava chaves literais __proto__, constructor e prototype, mas não variações com ponto como __proto__.polluted, permitindo poluição remota de protótipo quando usado com i18next-fs-backend ≤ 2.6.5. Corrigido na versão 3.9.7 com um novo helper hasUnsafeKeySegment.
Quem isso afeta
Aplicações que expõem o missingKeyHandler a entrada não confiável E usam i18next-fs-backend ≤ 2.6.5. Outros backends que dividem a string da chave ausente de forma similar também podem ser afetados.
O que fazer hoje
Atualize o i18next-http-middleware para 3.9.7 ou superior. Se não puder atualizar, não exponha o missingKeyHandler a usuários não confiáveis, adicione um filtro no corpo da requisição rejeitando chaves que contenham __proto__, constructor ou prototype após a divisão pelo keySeparator, ou desabilite a persistência de chaves ausentes (saveMissing: false).