Amazon Linux 2023:jackson-core (ALAS2023-2026-2067)

high Nessus Plugin ID 337219

概要

遠端 Amazon Linux 2023 主機缺少一個安全性更新。

說明

因此,它會受到 ALAS2023-2026-2067 公告中所提及的多個弱點影響。

jackson-core 中的非封鎖 (非同步) JSON 剖析器不會強制執行 StreamReadConstraints 中定義的 maxNumberLength 條件約束 (預設值:1000 個字元)。能夠將 JSON 提交給使用非同步剖析器 API 的應用程式的攻擊者可以提供任意長度的數字權杖,從而導致過多的記憶體配置和潛在的 CPU 耗盡,進而導致拒絕服務。



同步剖析器會正確執行此限制,因此根據應用程式使用的剖析 API 而套用限制不一致。



根本原因:NonBlockingUtf8JsonParserBase 和相關類別中的非同步剖析路徑永遠不會叫用數字長度驗證方法。數字剖析方法 (例如 _finishNumberIntegralPart() ) 會將數字累積到 TextBuffer 中,而不進行任何長度檢查,然後呼叫 _valueComplete() 來完成權杖。
_valueComplete() 不呼叫 resetInt() 或 resetFloat(),這是 ParserBase 中執行 validateIntegerLength() 和 validateFPLength() 的方法。因為會略過該驗證步驟,所以絕不會在非同步程式碼路徑上強制執行 maxNumberLength。



影響:攻擊者若使用非同步剖析器將包含任意長數字的 JSON 文件傳送至應用程式 (例如 Spring WebFlux 或其他反應式應用程式),可導致 TextBuffer 中出現無限分配,並造成 OutOfMemoryError。如果應用程式隨後呼叫 getBigIntegerValue() 或 getDecimalValue(),則 JVM 可能還會被綁定在 O(n^2) BigInteger 剖析中,從而造成基於 CPU 的拒絕服務。



除了提交資料進行剖析的能力之外,不需要任何權限或使用者互動。



此問題會影響 com.fasterxml.jackson.core:jackson-core 從版本 2.15.0 到 2.18.5 和從 2.19.0 到 2.21.0,以及 tools.jackson.core:jackson-core 從 3.0.03.0.x到 。



之前 2.15.0 的版本不會受到影響,因為定義 maxNumberLength 設定的 StreamReadConstraints 是首次在 jackson-core 2.15.0中引入的,因此在早期版本中不存在此類約束可以繞過。請注意,GHSA-qq72hv-8253-57 將受影響 2.x 範圍的下限記錄為 2.0.0。(CVE-2026-18401)

在 jackson-core 2.18.6 和 2.21.1CVE-2026-18401 for (GHSA-qq72hv-8253-57,非阻塞剖析器中的數字長度約束繞過) 中發布的修正不完整。此記錄涵蓋剩餘的旁路。



先前的修正將 validateIntegerLength() 連線到新的 _setIntLength() 協助程式中,並在決定數字的整數部分時呼叫它:終止字元位元組到達,一個 .或看到 e/E,或輸入在完全緩衝的值內結束。它未在與攻擊者相關的路徑上叫用,其中剖析器在仍處於MINOR_NUMBER_INTEGER_DIGITS次要狀態時用盡輸入,並將NOT_AVAILABLE傳回給呼叫端。



因此,攻擊者如果將 JSON 分許多小區塊串流到非封鎖剖析器,而無需傳送終止符位元組,就會無限期地將剖析器保留在MINOR_NUMBER_INTEGER_DIGITS內。
_textBuffer.expandCurrentSegment() 會在每個區塊上增加累加器,而 validateIntegerLength() 永遠不會呼叫。累加器僅以 maxStringLength (預設為 20 MiB) 而非 maxNumberLength (預設為 1000) 為界,比記錄的限制放大大約 20,000 倍。由於 Java 字元值佔用兩個位元組,因此在值完成時驗證器最終觸發之前,可以將單一連線驅動至大約 40 MiB 的堆積。



等效的分數路徑程式碼是正確的:_finishFloatFraction() 在其NOT_AVAILABLE傳回之前呼叫 _setFractLength()。遺漏的呼叫會影響 _startPositiveNumber() 中的整數路徑,
_startNegativeNumber() 和 _finishNumberIntegralPart() 在 NonBlockingUtf8JsonParserBase 中。



影響:Spring WebFlux/Reactor、Quarkus、Helidon 和 Vert.x 等反應式架構會在傳入 HTTP 或 gRPC 位元組到達時將其饋送至非同步剖析器,這正是所需的區塊摘要形狀。
設定 StreamReadConstraints.maxNumberLength 並預期其限制每個數字值記憶體的運算子不會獲得該保證;每個並行連線都會累積記憶體,而攻擊者控制的並行可能會耗盡 JVM 堆積。同步剖析器 (UTF8StreamJsonParser、ReaderBasedJsonParser) 和在完整輸入上運作的非同步剖析器不受影響。



利用只需要能夠將資料串流至剖析端點;不需要任何權限或使用者互動。



此問題影響 com.fasterxml.jackson.core:jackson-core 從版本到 、 到 、 從 2.22.0 和 到 2.22.0,以及 tools.jackson.core:jackson-core 從 3.2.03.1.33.2.03.0.0 到 。2.21.32.19.02.18.72.15.0 之前 2.15.0 的版本不會受到影響,因為定義 maxNumberLength 設定的 StreamReadConstraints 是首次在 jackson-core 2.15.0中引入的,因此在早期版本中不存在此類約束可以繞過。請注意,GHSA-r7wm-3cxj-wff9 會指出受影響 2.x 的範圍,但沒有下限。(CVE-2026-68494)

Tenable 已直接從所測試產品的安全公告擷取前置描述區塊。

請注意,Nessus 並未測試這些問題,而是僅依據應用程式自我報告的版本號碼作出判斷。

解決方案

執行「dnf update jackson-core --releasever 2023.12.20260817」或「dnf update --advisory ALAS2023-2026-2067 --releasever 2023.12.20260817」來更新您的系統。

另請參閱

https://alas.aws.amazon.com//AL2023/ALAS2023-2026-2067.html

https://alas.aws.amazon.com/faqs.html

https://explore.alas.aws.amazon.com/CVE-2026-18401.html

https://explore.alas.aws.amazon.com/CVE-2026-68494.html

Plugin 詳細資訊

嚴重性: High

ID: 337219

檔案名稱: al2023_ALAS2023-2026-2067.nasl

版本: 1.2

類型: Local

代理程式: unix

已發布: 2026/8/18

已更新: 2026/8/25

支援的感應器: Agentless Assessment, Continuous Assessment, Frictionless Assessment Agent, Frictionless Assessment AWS, Nessus Agent, Tenable Cloud Security, Tenable Self-Hosted Container Security, Nessus

風險資訊

VPR

風險因素: Low

分數: 3

百分位數: 23.67

CVSS v2

風險因素: High

基本分數: 7.8

時間性分數: 5.8

媒介: CVSS2#AV:N/AC:L/Au:N/C:N/I:N/A:C

CVSS 評分資料來源: CVE-2026-68494

CVSS v3

風險因素: High

基本分數: 7.5

時間性分數: 6.5

媒介: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

時間媒介: CVSS:3.0/E:U/RL:O/RC:C

CVSS v4

風險因素: High

Base Score: 8.7

Threat Score: 6.6

Threat Vector: CVSS:4.0/E:U

Vector: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N

弱點資訊

CPE: cpe:/o:amazon:linux:2023, p-cpe:/a:amazon:linux:jackson-core

必要的 KB 項目: Host/local_checks_enabled, Host/AmazonLinux/release, Host/AmazonLinux/rpm-list

可輕鬆利用: No known exploits are available

修補程式發佈日期: 2026/8/17

弱點發布日期: 2026/8/4

參考資訊

CVE: CVE-2026-18401, CVE-2026-68494