概要
リモートの Amazon Linux 2023 ホストに、セキュリティ更新プログラムがありません。
説明
したがって、ALAS2023-2026-1524 のアドバイザリに記載されている複数の脆弱性の影響を受けます。
Undici は、HTTP Content-Length ヘッダーが大文字と小文字の異なる配列として渡された場合 (例: Content-Length と content-length)、重複した HTTP ヘッダーを許容してしまいます。これにより、ネットワーク上で複数の矛盾する Content-Length 値を持つ無効な形式の HTTP/1.1 リクエストが生成されます。
影響を受ける対象:
* undici.request()、undici.Client、または同様の低レベル API を使用し、ヘッダーをフラットな配列として渡しているアプリケーション * ユーザーが制御可能なヘッダー名を、大文字小文字の正規化を行わずに受け入れているアプリケーション
想定される影響:
* サービス拒否: 厳格な HTTP パーサー (プロキシやサーバー) は、重複する Content-Length ヘッダーを持つリクエストを拒否します (400 Bad Request) * HTTP リクエストスマグリング: 中間装置とバックエンドで重複ヘッダーの解釈が異なる場合 (例: 一方は最初の値を使用し、もう一方は最後の値を使用する)、リクエストスマグリング攻撃が可能になります。その結果、アクセス制御の回避、キャッシュ汚染、認証情報の乗っ取りなどを引き起こす可能性があります (CVE-2026-1525)
undici WebSocket クライアントは、permessage-deflate の展開中において際限なくメモリを消費するため、サービス拒否攻撃の脆弱性があります。WebSocket 接続が permessage-deflate 拡張をネゴシエートするとき、クライアントは展開されたデータサイズに制限を適用せずに受信した圧縮フレームを展開します。悪意のある WebSocket サーバーが、メモリに非常に大きなサイズで展開される小さな圧縮フレーム (展開爆弾) を送信する可能性があります。これにより、Node.js プロセスが利用可能なメモリを枯渇させてクラッシュしたり、応答不能になったりします。
PerMessageDeflate.decompress() メソッドに存在する脆弱性により、メモリ内のすべての展開されたチャンクが蓄積され、合計サイズが安全なしきい値を超えているかどうかをチェックせずに、それらを単一のバッファに連結します。(CVE-2026-1526)
影響 アプリケーションがユーザーコントロールの入力を client.request() のアップグレードオプションに渡すときに、攻撃者が CRLF シーケンス (\r\n) を挿入する可能性があります。
* 任意の HTTP ヘッダーを挿入* HTTP リクエストを時期尚早に終了させ、生のデータを非 HTTP サービス (Redis、Memcached、Elasticsearch) にスマグリングします。以下に示すように、undici が無効なヘッダー文字を検証せずにアップグレード値をソケットに直接書き込むため、この脆弱性が存在します。
// lib/dispatcher/client-h1.js:1121if (upgrade) {header += `connection: upgrade\r\nupgrade:
${upgrade}\r\n`} (CVE-2026-1527)
影響 サーバーは、64 ビット長のフォームおよび通常ない長さを使用する WebSocket フレームで返信する可能性があります。undici の ByteParser は内部計算をオーバーフローし、無効な状態で終了し、プロセスを終了させる致命的な TypeError をスローします。
パッチ
undici バージョン v7.24.0 および v6.24.0 でパッチが適用されています。ユーザーは、このバージョン以降にアップグレードする必要があります。
(CVE-2026-1528)
影響 undici WebSocket クライアントは、permessage-deflate 拡張機能の server_max_window_bits パラメーターの検証が不適切であるため、サービス拒否攻撃の脆弱性があります。WebSocket クライアントはサーバーに接続するとき、permessage-deflate 圧縮のサポートを自動的にアドバタイズします。悪意のあるサーバーが、範囲外の server_max_window_bits 値 (zlib の有効範囲 8-15 外) で応答する可能性があります。
サーバーがその後、圧縮されたフレームを送信すると、クライアントは無効な windowBits 値で zlib InflateRaw インスタンスを作成しようとし、キャッチされない同期 RangeError 例外を引き起こし、即座にプロセスが終了します。
この脆弱性は、次の理由により存在します。
* isValidClientWindowBits() 関数は、値が ASCII 数字を含むことのみを検証し、有効な範囲 8-15 内にあるかどうかを検証しません。* createInflateRaw() 呼び出しは、try-catch ブロックでラップされません。* 結果として生じる例外は、呼び出しスタックを伝播して、Node.js プロセスをクラッシュさせます (CVE-2026-2229)。
Tenable は、前述の記述ブロックをテスト済み製品のセキュリティアドバイザリから直接抽出しています。
Nessus はこれらの問題をテストしておらず、代わりにアプリケーションが自己報告するバージョン番号にのみ依存していることに注意してください。
ソリューション
「dnf update nodejs20 --releasever 2023.10.20260330」または「dnf update --advisory ALAS2023-2026-1524 --releasever 2023.10.20260330」を実行してシステムを更新してください。
プラグインの詳細
ファイル名: al2023_ALAS2023-2026-1524.nasl
エージェント: unix
サポートされているセンサー: Frictionless Assessment AWS, Frictionless Assessment Agent, Nessus Agent, Agentless Assessment, Continuous Assessment, Nessus
リスク情報
ベクトル: CVSS2#AV:N/AC:L/Au:N/C:C/I:C/A:C
ベクトル: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
現状ベクトル: CVSS:3.0/E:U/RL:O/RC:C
脆弱性情報
CPE: p-cpe:/a:amazon:linux:v8-11.3-devel, p-cpe:/a:amazon:linux:nodejs20-debugsource, p-cpe:/a:amazon:linux:nodejs20-devel, p-cpe:/a:amazon:linux:nodejs20, p-cpe:/a:amazon:linux:nodejs20-npm, p-cpe:/a:amazon:linux:nodejs20-libs, p-cpe:/a:amazon:linux:nodejs20-debuginfo, p-cpe:/a:amazon:linux:nodejs20-full-i18n, p-cpe:/a:amazon:linux:nodejs20-libs-debuginfo, p-cpe:/a:amazon:linux:nodejs20-docs, cpe:/o:amazon:linux:2023
必要な KB アイテム: Host/local_checks_enabled, Host/AmazonLinux/release, Host/AmazonLinux/rpm-list
エクスプロイトの容易さ: No known exploits are available