JVNDB-2026-020296 | |
CarrierWave projectのCarrierWaveにおける複数の脆弱性 | |
| 概要 | |
CarrierWaveはRubyアプリケーションからファイルをアップロードするためのフレームワークです。バージョン2.2.7および3.1.3より前のバージョンでは、content_type_denylistチェックが文字列エントリ内の正規表現メタ文字をエスケープしないため、denylistが意図したコンテンツタイプに静かにマッチしなくなる問題があります。lib/carrierwave/uploader/content_type_denylist.rbの57行目では、denylistエントリがRegexp.quoteやアンカーなしで直接正規表現に補間されます。そのため、例えばimage/svg+xmlというエントリは+/が量指定子として扱われ、実際のMIMEタイプimage/svg+xmlとはマッチしません。これはRegexp.quoteと\Aアンカーの両方を正しく適用しているallowlistの実装と矛盾しています。application/xhtml+xmlのように正規表現メタ文字を含む他のコンテンツタイプも影響を受けます。その結果、content_type_denylistに依存してimage/svg+xmlをブロックしているアプリケーションは、通常ストアドXSSを防ぐために使われますが、静かに保護されていません。攻撃者は任意のJavaScriptを含むSVGファイルをアップロードでき、アプリケーションがそのSVGを自分のオリジンからインラインで提供すると、そのスクリプトが被害者のブラウザで実行されてストアドXSSを引き起こします。この問題はバージョン2.2.7および3.1.3で修正されました。 | |
| CVSS による深刻度 (CVSS とは?) | |
|
CVSS v3 による深刻度
基本値: 6.1 (警告) [NVD値]
| |
| 影響を受けるシステム | |
|
| |
CarrierWave project | |
本脆弱性の影響を受ける製品の詳細については、ベンダ情報および参考情報をご確認ください。 | |
| 想定される影響 | |
・当該ソフトウェアが扱う情報の一部が外部に漏れる可能性があります。 | |
| 対策 | |
ベンダ情報を参照して適切な対策を実施してください。 | |
| ベンダ情報 | |
GitHub | |
| CWEによる脆弱性タイプ一覧 CWEとは? | |
| |
| 共通脆弱性識別子(CVE) CVEとは? | |
|
| |
| 参考情報 | |
| |
| 更新履歴 | |
|
| 公表日 | 2026/06/17 |
| 登録日 | 2026/06/22 |
| 最終更新日 | 2026/06/22 |



