Spring Frameworkにおける「Reflected File Download(RFD)」の脆弱性(CVE-2025-41234)

2025年6月、Spring Frameworkにて**中程度のセキュリティ脆弱性(CVE-2025-41234)**が報告されました。本脆弱性は、HTTPレスポンスに含まれるContent-Dispositionヘッダにおいて、ユーザー入力を含むファイル名の処理に不備がある場合、RFD(Reflected File Download)攻撃を受ける可能性があるというものです。

CVSSスコアは**6.5(中程度)**で、該当バージョンを使用している場合は注意が必要です。


1. RFD攻撃とは?

RFD(Reflected File Download)攻撃とは、ユーザーに悪意あるファイルを意図せずダウンロード・実行させる手法です。見た目は通常のファイルに見えるため、ユーザーが警戒せず開いてしまう可能性があります。

本脆弱性では、以下の条件がすべて満たされると、RFD攻撃のリスクが生じます:

  • org.springframework.http.ContentDispositionクラスでContent-Dispositionヘッダを生成している
  • ContentDisposition.Builder#filename(String, Charset)非ASCII文字を含むファイル名を指定
  • ファイル名がユーザー入力に依存し、かつサニタイズ処理されていない
  • HTTPレスポンスの本文に、悪意あるコードやコマンドが含まれている

2. 影響対象のバージョンと修正状況

影響バージョン修正済バージョン
6.2.0 ~ 6.2.76.2.8(OSS)
6.1.0 ~ 6.1.206.1.21(OSS)
6.0.5 ~ 6.0.286.0.29(商用)

※6.0.4以前の未サポートバージョンは対象外とされています。


3. 影響を受けないケース

以下のいずれかに該当する場合は、本脆弱性の影響を受けません:

  • Content-Dispositionヘッダを使用していない
  • ContentDisposition.Builderを使用していない
  • filename(String)もしくは filename(String, ASCII) を使っている
  • ファイル名がユーザー入力に依存していない、あるいは適切にサニタイズされている
  • レスポンスに含まれるファイルの内容が、攻撃者により改ざんされない

4. システム管理者への対応指針

影響バージョンを使用している場合は、速やかに以下の対応を推奨します:

  • Spring Framework 6.2.x → 6.2.8にアップグレード
  • Spring Framework 6.1.x → 6.1.21にアップグレード
  • 商用版6.0.xを使用中の場合 → 6.0.29へアップグレード

アップグレードにより、ユーザー入力を元に生成されるファイル名を通じたRFD攻撃のリスクを排除できます。

引用元記事:https://rocket-boys.co.jp/security-measures-lab/spring-framework-rfd-vulnerability-unintended-file-download-risk/