Ubuntu 20.04 LTS / 22.04 LTS : Puma の脆弱性 (USN-6682-1)

critical Nessus プラグイン ID 191720

概要

リモート Ubuntu ホストに 1 つ以上のセキュリティ更新がありません。

説明

リモートの Ubuntu 20.04 LTS / 22.04 LTS ホストには、USN-6682-1 のアドバイザリに記載された複数の脆弱性の影響を受けるパッケージがインストールされています。

- 4.3.4 および 3.12.5 より前の Puma (RubyGem) では、無効な transfer-encoding ヘッダーを使用することで、攻撃者が HTTP 応答をスマグリングする可能性があります。この問題は、Puma 3.12.5 および Puma 4.3.4 で修正されています。(CVE-2020-11076)

- 4.3.5 および 3.12.6 より前の Puma (RubyGem) では、クライアントがプロキシを介してリクエストをスマグリングし、プロキシが応答を別の不明なクライアントに返信する可能性があります。プロキシが永続的な接続を使用し、クライアントが HTTP パイプラインを通じて別のリクエストを追加する場合、プロキシが誤ってそれを最初のリクエストの本文とみなす可能性があります。
ただし、Puma はこれを 2 つのリクエストと見なし、2 つ目のリクエストを処理するとき、プロキシが予期しない応答を返します。プロキシが Puma への永続的な接続を再利用して別のクライアントに別のリクエストを送信した場合、最初のクライアントの 2 番目の応答が 2 番目のクライアントに送信されます。これは、CVE-2020-11076 と類似しているものの異なる脆弱性です。この問題は、Puma 3.12.6 および Puma 4.3.5 で修正されています。(CVE-2020-11077)

- Puma は、並列処理のために構築された Ruby/Rack Web サーバーです。「puma」バージョン「5.6.2」より前では、「puma」が応答本文で「close」を呼び出さないときがあります。バージョン「7.0.2.2」より前の Rails では、「CurrentAttributes」実装の正しい機能は閉じられている応答本文に依存していました。これら 2 つの動作の組み合わせ (Puma が本文を閉じない + Rails の Executor 実装) により、情報漏洩が発生します。この問題は Puma バージョン 5.6.2 および 4.3.11 で修正されています。この問題は Rails バージョン 7.02.2、6.1.4.6、6.0.4.6、および 5.2.6.2 で修正されています。パッチを適用した Rails _or_ Puma バージョンにアップグレードすると、この脆弱性が修正されます。(CVE-2022-23634)

- Puma は、Ruby / Rack アプリケーション用のシンプルかつ高速なマルチスレッドパラレル HTTP 1.1 サーバーです。受信 HTTP リクエストが RFC7230 標準に一致することを適切に検証しないプロキシの背後で Puma を使用する場合、Puma とフロントエンドプロキシが、リクエストの開始点と終了点で一致しない可能性があります。これにより、リクエストがフロントエンドプロキシを介して Pum にスマグリングされる可能性があります。この脆弱性は 5.6.4 と 4.3.12 で修正されました。ユーザーは、至急アップグレードすることが勧められています。回避策: Puma の前にプロキシを展開する場合、すべての機能をオンにして、リクエストが RFC7230 標準に一致することを確認します。
(CVE-2022-24790)

- Puma は、並列処理のために構築された Ruby/Rack Web サーバーです。バージョン 6.3.1 および 5.6.7 より前の puma は、チャンク転送エンコーディング本体およびゼロレングスの Content-Length ヘッダーを、HTTP リクエストのスマグリングを許す方法で解析する際に、不適切な動作を示しました。この問題の深刻度は、puma を使用している Web サイトの性質に大きく左右されます。これは、チャンク転送エンコーディング本体の末尾のフィールドの不適切な解析、または空白/ゼロレングスの Content-Length ヘッダーの解析によって発生する可能性があります。両方の問題が対処されており、この脆弱性はバージョン 6.3.1 および 5.6.7 で修正されています。ユーザーはアップグレードすることをお勧めします。
この脆弱性に対する既知の回避策はありません。(CVE-2023-40175)

- Puma は、並列処理のために構築された Ruby/Rack アプリケーション用の Web サーバーです。バージョン 6.4.2 より前の puma は、チャンク転送エンコーディング本体を、HTTP リクエストのスマグリングを許す方法で解析する際に、不適切な動作を示しました。修正済みバージョンでは、チャンク拡張のサイズが制限されます。この制限がないと、攻撃者が無制限にリソース (CPU、ネットワーク帯域幅) を消費する可能性があります。この脆弱性は、バージョン 6.4.2、5.6.8 で修正されました。(CVE-2024-21647)

Nessus はこれらの問題をテストしておらず、代わりにアプリケーションが自己報告するバージョン番号にのみ依存していることに注意してください。

ソリューション

影響を受ける puma パッケージを更新してください。

参考資料

https://ubuntu.com/security/notices/USN-6682-1

プラグインの詳細

深刻度: Critical

ID: 191720

ファイル名: ubuntu_USN-6682-1.nasl

バージョン: 1.1

タイプ: local

エージェント: unix

公開日: 2024/3/7

更新日: 2024/8/27

サポートされているセンサー: Frictionless Assessment AWS, Frictionless Assessment Azure, Frictionless Assessment Agent, Nessus Agent, Agentless Assessment, Nessus

リスク情報

VPR

リスクファクター: High

スコア: 7.4

CVSS v2

リスクファクター: Medium

基本値: 5

現状値: 3.7

ベクトル: CVSS2#AV:N/AC:L/Au:N/C:N/I:P/A:N

CVSS スコアのソース: CVE-2022-24790

CVSS v3

リスクファクター: Critical

基本値: 9.8

現状値: 8.5

ベクトル: 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

CVSS スコアのソース: CVE-2023-40175

脆弱性情報

CPE: p-cpe:/a:canonical:ubuntu_linux:puma, cpe:/o:canonical:ubuntu_linux:20.04:-:lts, cpe:/o:canonical:ubuntu_linux:22.04:-:lts

必要な KB アイテム: Host/cpu, Host/Debian/dpkg-l, Host/Ubuntu, Host/Ubuntu/release

エクスプロイトの容易さ: No known exploits are available

パッチ公開日: 2024/3/7

脆弱性公開日: 2020/5/22

参照情報

CVE: CVE-2020-11076, CVE-2020-11077, CVE-2022-23634, CVE-2022-24790, CVE-2023-40175, CVE-2024-21647

USN: 6682-1