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

VetorAV: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

CVE-2026-42440
GHSA-659W-93R5-9J6M

Produtos afetados

Apache Opennlp