PT-2026-67715
CVE-2026-18401
·
Publicado
2026-02-28
·
Atualizado
2026-10-10
Descrição por
CVSS 3.1
9.8
CríticaMétricasAV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Nome do Software Vulnerável e Versões Afetadas
jackson-core versões 2.15.0 through 2.18.5
jackson-core versões 2.19.0 through 2.21.0
jackson-core versões 3.0.0 through 3.0.x
Description
O analisador JSON não bloqueante (assíncrono) no jackson-core não impõe a restrição
maxNumberLength definida em StreamReadConstraints. Isso ocorre porque o caminho de análise assíncrona em NonBlockingUtf8JsonParserBase e classes relacionadas não invoca os métodos de validação de comprimento de número. Especificamente, métodos como finishNumberIntegralPart() acumulam dígitos no TextBuffer sem verificações, e o valueComplete() não chama resetInt() ou resetFloat(), onde validateIntegerLength() e validateFPLength() são executados. Um invasor pode enviar um documento JSON contendo um token numérico de comprimento arbitrário, levando à alocação excessiva de memória no TextBuffer e a um possível OutOfMemoryError. Além disso, se a aplicação chamar getBigIntegerValue() ou getDecimalValue(), a JVM pode sofrer exaustão de CPU devido ao processamento de BigInteger em O(n^2), resultando em negação de serviço.Recommendations
Para as versões 2.15.0 through 2.18.5 do jackson-core, atualize para uma versão onde a restrição
maxNumberLength seja imposta no analisador assíncrono.
Para as versões 2.19.0 through 2.21.0 do jackson-core, atualize para uma versão onde a restrição maxNumberLength seja imposta no analisador assíncrono.
Para as versões 3.0.0 through 3.0.x do jackson-core, atualize para uma versão onde a restrição maxNumberLength seja imposta no analisador assíncrono.Explorabilidade
Exploit
Correção
Impactos
Pesquisadores
Fornecedores
Produtos afetados
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾