Posted by mame on 24 Nov 2021
Translated by jinroq
CGI :: Cookie.parse 内で Cookie プレフィックスを偽装する脆弱性が発見されました。 この脆弱性は、CVE-2021-41819 として登録されています。 Ruby をアップグレードすることを強く推奨します。
詳細
古いバージョンの CGI :: Cookie.parse
は、Cookie 名 に URL デコード を適用していました。
ところが、悪意を持った攻撃者はこの脆弱性を利用して Cookie 名のセキュリティプレフィックスを偽装し、脆弱なアプリケーションをだます可能性があります。
この修正により、 CGI :: Cookie.parse
は Cookie 名をデコードしなくなりました。
使用している Cookie 名に、URL エンコードされた英数字以外の文字が含まれている場合、これは非互換であることに注意してください。
これは CVE-2020-8184 と同じ問題です。
Ruby 2.7 もしくは 3.0 を使用している場合:
- cgi gem をバージョン 0.3.1, 0.2.1, 0.1.1 もしくはこれら以上のバージョンに更新してください。
gem update cgi
を使用して更新できます。bundler を使用している場合は、Gemfile
にgem "cgi", "> = 0.3.1"
を追加してください。 - または、Ruby を 2.7.5 または 3.0.3 に更新してください。
Ruby 2.6 を使用している場合:
- Rubyを 2.6.9 に更新してください。 Ruby 2.6 以前では
gem update cgi
は使用できません。
影響を受けるバージョン
- ruby 2.6.8 以前(このバージョンでは
gem update cgi
を 使用できません。) - cgi gem 0.1.0 以前(Ruby 2.7.5 より前にバンドルされている Ruby 2.7 系列)
- cgi gem 0.2.0 以前(Ruby 3.0.3 より前にバンドルされている Ruby3.0 系列)
- cgi gem 0.3.0 以前
クレジット
この脆弱性情報は、ooooooo_q 氏によって報告されました。
更新履歴
- 2021-11-24 21:00:00 (JST) 初版