CVE-2021-41816: CGI.escape_html 内のバッファオーバーラン

CGI.escape_html 内のバッファオーバーランの脆弱性が発見されました。 この脆弱性は、CVE-2021-41816として登録されています。 Ruby をアップグレードすることを強く推奨します。

詳細

long 型が 4 バイトかかるプラットフォーム(典型的なものは Windows)で非常に大きな文字列(700 MB 以上)を CGI.escape_html に渡すと、バッファオーバーフローを引き起こす脆弱性があります。

cgi gem をバージョン 0.3.1, 0.2.1, 0.1.1 もしくはこれら以上のバージョンに更新してください。gem update cgi を使用して更新できます。bundler を使用している場合は、 Gemfilegem "cgi", "> = 0.3.1" を追加してください。 または、Rubyを 2.7.5 または 3.0.3 に更新してください。

この問題は Ruby 2.7 以降で発見されたので、Ruby 2.6 でバンドルされている cgi バージョンには脆弱性はありません。

影響を受けるバージョン

  • cgi gem 0.1.0 以前(Ruby 2.7.5 より前にバンドルされている Ruby 2.7 系列)
  • cgi gem 0.2.0 以前(Ruby 3.0.3 より前にバンドルされている Ruby 3.0 系列)
  • cgi gem 0.3.0 以前

クレジット

この脆弱性情報は、chamal 氏によって報告されました。

更新履歴

  • 2021-11-24 21:00:00 (JST) 初版