Varnish の脆弱性 CVE-2025-47905 が FIX:HTTP リクエスト・スマグリングの恐れ

Varnish Vulnerability Exposes Cache to HTTP Request Smuggling

2025/05/14 SecurityOnline — Varnish Software が公開したのは、Varnish Cache と Varnish Enterprise のクライアント・サイドにおける、非同期化に関連する脆弱性 CVE-2025-47905 の存在である。この脆弱性を悪用する攻撃者は、特定の不正な HTTP/1 チャンク・リクエストという条件下で、HTTP リクエスト・スマグリング攻撃の可能性を得るという。この脆弱性の深刻度は Low〜Medium と評価されているが、パッチを適用せずに放置すると、キャッシュ・ポイズニング/WAFバイパスなどに加えて、下流におけるセキュリティ・リスクにつながる可能性がある。

このアドバイザリでは、「Varnish のチャンク転送エンコーディングの処理における脆弱性を悪用する攻撃者は、追加のリクエストをスマグリングする可能性を手にする」と説明されている。

この脆弱性は、HTTP/1 リクエストにおけるチャンク転送エンコーディングの不適切な処理に起因する。具体的に言うと、Varnish が CRLF 文字のスキップを誤って許可するため、HTTP リクエスト・ボディの適切なフレーミングが損なわれ、リクエスト・スマグリング攻撃が発生し得る。

Varnish は、チャンクの境界を区切る際に、誤って CRLF のスキップを許可している。それを悪用する攻撃者は、細工したペイロードを介して、追加の隠れたリクエストを紛れ込ませることが可能になる。

この非同期化の問題は、下流に複数の脅威をもたらす。

  • キャッシュ・ポイズニング:下流のキャッシュが不正なリクエストを受け入れると、意図しないコンテンツや悪意のあるコンテンツがキャッシュされ、他のユーザーに対して操作されたページが提供される可能性がある。
  • WAF バイパス:WAF において、リクエスト本文を無視するコンフィグが設定され、不正なチャンク・リクエストを適切に解析しない場合に、攻撃者はセキュリティ・フィルターをバイパスする可能性を手にする。
影響を受けるバージョン
  • Varnish Cache:バージョン 7.7.0 以下
  • Varnish Cache 6.0 LTS:バージョン 6.0.13 以下
  • Varnish Enterprise:バージョン 6.0.13r13 以下
修正バージョン
  • Varnish Cache:7.7.1/7.6.3/6.0.14
  • Varnish Enterprise:6.0.13r14

すでに、すべての修正バージョンが、2025年4月〜5月の間にリリースされている。このアドバイザリが強く推奨するのは、Varnish をアップグレードして再起動し、この修正を適用することである。

なお、速やかなアップグレードが不可能な環境では、VCL (Varnish Configuration Language) ベースの回避策が推奨されている。

sub vcl_recv {
if (req.http.transfer-encoding ~ "(?i)chunked") {
        return (fail);
   }
}