Unknown · Jackson-Core · CVE-2026-18401
**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.