Ruby on RailsのActive Storageにおける任意ファイル読み取り・リモートコード実行につながる脆弱性(JPCERT/CC Weekly Report)

出典: Weekly Report: Ruby on Railsにリモートコード実行につ / 参照日: 2026年8月8日

JPCERT/CCは、Ruby on RailsのActive Storageにおいて、認証なしでサーバ上の機密ファイルを読み取られ、場合によってはリモートコード実行(RCE)につながる脆弱性が公表された。影響を受ける版はactivestorage7.2.3.2未満、8.0.5.1未満、8.1.3.1未満で、修正版への更新が求められている。

脆弱性の詳細

この脆弱性は、Ruby on RailsのActive Storageに存在し、攻撃者が認証なしで細工した操作を行うことで、サーバ上の任意のファイルを読み取れる可能性があるとされる。さらに、条件がそろうとリモートコード実行に発展するおそれがある。記事で確認できる範囲では、脆弱性はCVE-2026-66066として扱われている。

攻撃が成功した場合、機密情報の漏えい、認証情報の取得、設定ファイルの流出、そこからの権限拡大や二次侵害につながる可能性がある。ruby-vipsを利用する構成では、ライブラリ側の設定やバージョン条件も影響し、libvips8.13以上が安全な構成の目安とされる。

影響を受ける製品・バージョン

  • Ruby on Rails Active Storage7.2.3.2未満、8.0.5.1未満、8.1.3.1未満)
  • ruby-vipsを利用する構成では追加の確認が必要
  • libvips8.13以上が推奨

推奨される対策

  • Active Storageを修正版へ更新する。
  • libvips8.13以上へ更新し、必要に応じてVIPS_BLOCK_UNTRUSTEDを有効化する。
  • ruby-vips 2.2.1以降を利用できる場合は、初期化処理でVips.block_untrusted(true)を設定する。
  • libvips8.13より前の場合、抜本的な回避策は限定的であり、Active Storageやruby-vipsの利用見直しが必要になる。
  • 更新後も、既に情報が漏えいしている可能性を前提に、認証情報や秘密情報の再発行・再設定を行う。

日本の中小企業が今すぐ取るべき行動

  • 最優先:RailsアプリでActive Storageを使っているか確認し、対象バージョンに該当するか棚卸しする。
  • 次に優先:該当する場合は、修正版へ更新し、本番・検証・一時公開環境を含めて反映する。
  • 並行してruby-vipslibvipsの利用有無とバージョンを確認し、必要なら設定変更と更新を実施する。
  • 運用面:更新前後のログを保全し、不審なファイルアクセス、画像処理の異常、未知の外部通信がないかを確認する。
  • 再発防止:Rails本体だけでなく、Active Storageや画像処理系の依存ライブラリも定期的に更新する運用を整備する。

CSRIセキュリティ専門家の見解

今回の脆弱性は、Webアプリ本体の脆弱性だけでなく、Active Storageや画像処理ライブラリのような周辺依存が攻撃面になる点が重要である。中小企業では、機能追加の過程で導入した画像処理やファイル変換の設定が残り続け、更新対象から漏れることが多い。特に、外部公開されたRailsアプリでは、脆弱な依存関係を放置すると認証前の攻撃で機密情報が失われるおそれがあるため、依存ライブラリまで含めた継続的な棚卸しが必要である。

参照: Weekly Report: Ruby on Railsにリモートコード実行につながる脆弱性

参考:公式情報・アドバイザリ

上記は本記事に関連する公式セキュリティ情報です。詳細は各機関の公式サイトをご確認ください。

NO IMAGE
最新情報をチェックしよう!