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

high Nessus プラグイン ID 337219

概要

リモートの Amazon Linux 2023 ホストに、セキュリティ更新プログラムがありません。

説明

したがって、ALAS2023-2026-2067 のアドバイザリに記載されている複数の脆弱性の影響を受けます。

jackson-core の非ブロック (非同期) JSON パーサーは、StreamReadConstraints で定義された maxNumberLength 制約 (デフォルト: 1000 文字) を強制しません。非同期パーサーAPIを使用するアプリケーションにJSONを送信できる攻撃者が、任意の長さの数値トークンを提供し、過剰なメモリ割り当てと潜在的なCPU枯渇を引き起こし、サービス拒否を引き起こす可能性があります。



同期パーサーはこの制限を正しく適用するため、アプリケーションが使用する解析 API によって制約の適用に一貫性がありません。



根本原因:NonBlockingUtf8JsonParserBase および関連するクラスの非同期解析パスが、数値長検証メソッドを決して呼び出しません。_finishNumberIntegralPart() などの数値解析メソッドは、長さチェックなしで TextBuffer に数字を集積し、_valueComplete() を呼び出してトークンをファイナライズします。
_valueComplete() は、validateIntegerLength() および validateFPLength() が実行される ParserBase のメソッドである resetInt() や resetFloat() を呼び出しません。この検証ステップはスキップされるため、maxNumberLength が非同期コードパスで強制されることはありません。



影響:攻撃者が、任意の長い数字を含むJSONドキュメントを非同期パーサーを使用するアプリケーション(たとえば、Spring WebFluxまたはその他のリアクティブアプリケーション)に送信すると、TextBufferで無制限の割り当てとOutOfMemoryErrorが発生する可能性があります。その後、アプリケーションが getBigIntegerValue() または getDecimalValue() を呼び出すと、JVM がさらに O(n^2) BigInteger 解析に拘束され、CPU ベースのサービス拒否が引き起こされる可能性があります。



解析のためにデータを送信できる以外の権限やユーザー操作は必要ありません。



この問題は、バージョン 2.15.0 から 2.18.5 までおよび 2.19.0 から 2.21.0 までの com.fasterxml.jackson.core:jackson-core に、 3.0.0 から 3.0.x までの tools.jackson.core:jackson-core に影響を与えます。



maxNumberLength 設定を定義する StreamReadConstraints は jackson-core 2.15.0で最初に導入されたため、以前のリリースではそのような制約が存在しないために、2.15.0 より前のバージョンは影響を受けません。GHSA-72hv-8253-57qqは、影響を受ける 2.x 範囲の下限を 2.0.0として記録します。(CVE-2026-18401)

jackson-core 2.18.6 および 2.21.1 for CVE-2026-18401 でリリースされた修正(GHSA-72hv-8253-57qq、ノンブロッキングパーサーにおける数値長制約のバイパス)は不完全です。このレコードは残りのバイパスをカバーします。



以前の修正では、validateIntegerLength() を新しい _setIntLength() ヘルパーに配線し、数値の整数部分が決まる場所(終端バイト到着、.または e/E が確認されるか、入力が完全にバッファされた値内で終了します。これは、MINOR_NUMBER_INTEGER_DIGITSマイナーな状態のままパーサーが入力を使い果たし、呼び出し元にNOT_AVAILABLEを返す、攻撃者関連のパスでは呼び出されませんでした。



その結果、ターミネータバイトを一度も送信せずにJSONを多くの小さなチャンクでノンブロッキングパーサーにストリーミングする攻撃者は、パーサーをいつまでもMINOR_NUMBER_INTEGER_DIGITS内部に留めておくことになります。
_textBuffer.expandCurrentSegment() は各チャンクでアキュムレータを増大しますが、validateIntegerLength() は決して呼び出されません。アキュムレータは、maxNumberLength(デフォルトで 1000)ではなく maxStringLength(デフォルトで 20 MiB)によってのみバウンドされ、ドキュメント化されている制限の約 20,000 倍の増幅になります。Java 文字の値は 2 バイトを占めるため、値の完了時にバリデーターが最終的に起動する前に、1 つの接続を約 40 MiB のヒープに駆動できます。



同等の fraction-path コードは正しいです: _finishFloatFraction() は、その NOT_AVAILABLE が返される前に _setFractLength() を呼び出します。欠落している呼び出しは、_startPositiveNumber() の整数パスに影響します。
NonBlockingUtf8JsonParserBase の _startNegativeNumber() および _finishNumberIntegralPart()。



影響:Spring WebFlux/Reactor、Quarkus、Helidon、Vert.x などのリアクティブフレームワークは、インバウンドの HTTP または gRPC バイトが到着したときに、非同期パーサーにフィードします。これはまさに必要なチャンクフィード形状です。
StreamReadConstraints.maxNumberLength を設定し、数値ごとにメモリを制限することを期待する演算子は、その保証を受けません。同時接続ごとにメモリが蓄積され、攻撃者が制御する同時実行性が JVM ヒープを使い果たす可能性があります。同期パーサー(UTF8StreamJsonParser、ReaderBasedJsonParser)と完全な入力で動作する非同期パーサーは影響を受けません。



悪用に必要なのは、解析エンドポイントにデータをストリーミングする機能のみです。特権やユーザー操作は必要ありません。



この問題は、バージョン 2.15.0 から 2.18.7 まで、 2.19.0 から 2.21.3 まで、 2.22.0 から 2.22.0 までの com.fasterxml.jackson.core:jackson-core、 3.0.0 から 3.1.3 、 3.2.0 から 3.2.0 までの tools.jackson.core:jackson-core に影響を与えます。maxNumberLength 設定を定義する StreamReadConstraints は jackson-core 2.15.0で最初に導入されたため、以前のリリースではそのような制約が存在しないために、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

プラグインの詳細

深刻度: High

ID: 337219

ファイル名: al2023_ALAS2023-2026-2067.nasl

バージョン: 1.4

タイプ: Local

エージェント: unix

公開日: 2026/8/18

更新日: 2026/9/30

サポートされているセンサー: 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.61

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

IAVA: 2026-A-0998