| Title | Rackにおける解釈の競合に関する脆弱性 |
|---|---|
| Summary | Rackはモジュール式のRubyウェブサーバーインターフェースです。バージョン3.0.0.beta1から3.1.21未満および3.2.0から3.2.6未満の間、Rack::Utils.forwarded_valuesはRFC 7239のForwardedヘッダーをセミコロンで分割してから引用符付き文字列の値を処理していました。引用符付きの値は合法的にセミコロンを含む場合があるため、Rackは単一のquoted for値ではなく複数のForwardedディレクティブとしてヘッダーを解釈する可能性があります。上流プロキシ、WAF、または仲介者が引用符付きForwarded値を異なる方法で検証または保持する環境では、この不一致により攻撃者が単一のヘッダー値を通じてhost、proto、for、またはbyパラメータをすり抜けて送信できる可能性があります。この問題はバージョン3.1.21および3.2.6で修正されました。 |
| Possible impacts | 当該ソフトウェアが扱う情報の一部が外部に漏れる可能性があります。 また、当該ソフトウェアが扱う情報の一部が書き換えられる可能性があります。 さらに、当該ソフトウェアは停止しません。 そして、この脆弱性を悪用した攻撃の影響は、他のソフトウェアには及びません。 |
| Solution | 正式な対策が公開されています。ベンダ情報を参照して適切な対策を実施してください。 |
| Publication Date | April 2, 2026, midnight |
| Registration Date | April 22, 2026, 10:09 a.m. |
| Last Update | April 22, 2026, 10:09 a.m. |
| CVSS3.0 : 警告 | |
| Score | 6.5 |
|---|---|
| Vector | CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N |
| Rack |
| Rack 3.0.0 以上 3.1.21 未満 |
| Rack 3.2.0 以上 3.2.6 未満 |
| No | Changed Details | Date of change |
|---|---|---|
| 1 | [2026年04月22日] 掲載 |
April 22, 2026, 10:09 a.m. |
| Summary | Rack is a modular Ruby web server interface. From versions 3.0.0.beta1 to before 3.1.21 and 3.2.0 to before 3.2.6, Rack::Utils.forwarded_values parses the RFC 7239 Forwarded header by splitting on semicolons before handling quoted-string values. Because quoted values may legally contain semicolons, a header can be interpreted by Rack as multiple Forwarded directives rather than as a single quoted for value. In deployments where an upstream proxy, WAF, or intermediary validates or preserves quoted Forwarded values differently, this discrepancy can allow an attacker to smuggle host, proto, for, or by parameters through a single header value. This issue has been patched in versions 3.1.21 and 3.2.6. |
|---|---|
| Publication Date | April 3, 2026, 3:16 a.m. |
| Registration Date | April 27, 2026, 12:21 p.m. |
| Last Update | April 21, 2026, 9:57 a.m. |
| Configuration1 | or higher | or less | more than | less than | |
| cpe:2.3:a:rack:rack:*:*:*:*:*:ruby:*:* | 3.0.0 | 3.1.21 | |||
| cpe:2.3:a:rack:rack:*:*:*:*:*:ruby:*:* | 3.2.0 | 3.2.6 | |||