Katalog CVE

CVE-2026-89425

WysokieCVSS 7.5
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.49%

Percentyl 40 - wyżej niż 40% wszystkich znanych CVE

Streszczenie

Podatność w FasterXML jackson-core (UTF8DataInputJsonParser) powoduje nieograniczoną akumulację tekstu błędu podczas przetwarzania złośliwego tokenu, co może prowadzić do przepełnienia pamięci (OutOfMemoryError) całej JVM.

Ocena ryzyka

Atakujący może wysłać bardzo długi, złośliwy token do parsera utworzonego przez createParser(DataInput), co może spowodować awarię aplikacji z powodu braku pamięci.

Rekomendacja

Zaleca się aktualizację jackson-core do wersji zawierającej poprawkę, która respektuje maksymalną długość tokenu błędu (ErrorReportConfiguration).

Powiązane podatności

Oryginalny opis (angielski, źródło NVD)

UTF8DataInputJsonParser._reportInvalidToken() in FasterXML jackson-core builds the offending-token text for its error message by appending Java identifier characters to a StringBuilder in a loop that has no upper bound. Unlike the three sibling parser implementations, including UTF8StreamJsonParser, it never consults ErrorReportConfiguration.getMaxErrorTokenLength() (default 256). A malformed token supplied to a parser created through JsonFactory.createParser(DataInput) is therefore accumulated in full. No StreamReadConstraints setting mitigates this: maxDocumentLength cannot be applied to DataInput sources at all, and maxStringLength does not cover this path because the accumulation bypasses ReadConstrainedTextBuffer. The reporter measured a 20,000,109-character exception message from a 20-million-character malformed token on the DataInput path, against 367 characters for identical input on the InputStream path. Scaling the payload drives the StringBuilder, which also incurs byte-to-char expansion and internal array doubling, to many times the raw payload size and can trigger OutOfMemoryError for the whole JVM. UTF8DataInputJsonParser was introduced in 2.8.0 together with createParser(DataInput); releases before 2.8.0 do not contain the affected class.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS