PT-2026-36637 · Apache · Apache Opennlp
Subramanian S
·
Publicado
2026-05-02
·
Atualizado
2026-05-04
·
CVE-2026-42440
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
Apache OpenNLP versões anteriores a 2.5.9
Apache OpenNLP versões anteriores a 3.0.0-M3
Description
Existe uma Negação de Serviço por OutOfMemory (OOM) na classe
AbstractModelReader. Os métodos getOutcomes(), getOutcomePatterns() e getPredicates() leem um campo de contagem de número inteiro assinado de 32 bits de um fluxo de modelo binário e o utilizam para a alocação de arrays sem validar se o valor é não negativo ou está dentro de limites razoáveis. Um invasor pode fornecer um arquivo de modelo .bin manipulado com um campo de contagem definido para um valor muito alto, como Integer.MAX VALUE, para esgotar a memória heap disponível e disparar um OutOfMemoryError durante a desserialização. Isso permite que um arquivo malicioso pequeno trave a Java Virtual Machine (JVM) de qualquer processo que carregue arquivos de modelo de origens não confiáveis ou semi-confiáveis.Recommendations
Atualizar para a versão 2.5.9 para usuários da versão 2.x.
Atualizar para a versão 3.0.0-M3 para usuários da versão 3.x.
Tratar todos os arquivos de modelo .bin como entradas não confiáveis e evitar o carregamento de modelos fornecidos por usuários finais ou repositórios de terceiros sem verificações de integridade.
Para implementações que exijam mais de 10.000.000 de entradas, defina a propriedade de sistema
OPENNLP MAX ENTRIES para o número inteiro positivo desejado na inicialização da JVM.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
Apache Opennlp