CVE-2021-33621: HTTP response splitting in CGI

We have released the cgi gem version 0.3.5, 0.2.2, and that has a security fix for a HTTP response splitting vulnerability. This vulnerability has been assigned the CVE identifier CVE-2021-33621.


If an application that generates HTTP responses using the cgi gem with untrusted user input, an attacker can exploit it to inject a malicious HTTP response header and/or body.

Also, the contents for a CGI::Cookie object were not checked properly. If an application creates a CGI::Cookie object based on user input, an attacker may exploit it to inject invalid attributes in Set-Cookie header. We think such applications are unlikely, but we have included a change to check arguments for CGI::Cookie#initialize preventatively.

Please update the cgi gem to version 0.3.5, 0.2.2, and, or later. You can use gem update cgi to update it. If you are using bundler, please add gem "cgi", ">= 0.3.5" to your Gemfile.

Affected versions

  • cgi gem 0.3.3 or before
  • cgi gem 0.2.1 or before
  • cgi gem 0.1.1 or or 0.1.0


Thanks to Hiroshi Tokumaru for discovering this issue.


  • Originally published at 2022-11-22 02:00:00 (UTC)