Every CVE Search/ Get API key

CVE-2021-22885

Action Pack contains Information Disclosure / Unintended Method Execution vulnerability

7.5 HighFix available

A possible information disclosure / unintended method execution vulnerability in Action Pack >= 2.0.0 when using the redirect_to or polymorphic_urlhelper with untrusted user input.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
High
Integrity
None
Availability
None

Exploit likelihood

4.05%Up 3.3 points since May 28, 2021
90%50%10%1%

What each source reports

NVD Score used 7.5

A possible information disclosure / unintended method execution vulnerability in Action Pack >= 2.0.0 when using the redirect_to or polymorphic_urlhelper with untrusted user input.

Record
CVE-2021-22885
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
CVSS 2.0
5.0 MediumAV:N/AC:L/Au:N/C:P/I:N/A:N
Weakness
CWE-209
Updated
2026-11-02
CVE List No score

A possible information disclosure / unintended method execution vulnerability in Action Pack >= 2.0.0 when using the redirect_to or polymorphic_urlhelper with untrusted user input.

Record
CVE-2021-22885
Weakness
CWE-209
Updated
2026-11-02
EUVDEUVD-2021-1104 No score

A possible information disclosure / unintended method execution vulnerability in Action Pack >= 2.0.0 when using the redirect_to or polymorphic_urlhelper with untrusted user input.

Record
EUVD-2021-1104
Updated
2026-11-03
GitHub AdvisoriesGHSA-hjg4-8q5f-x6fm 7.5

Action Pack contains Information Disclosure / Unintended Method Execution vulnerability

Impact

There is a possible information disclosure / unintended method execution vulnerability in Action Pack when using the redirect_to or polymorphic_url helper with untrusted user input.

Vulnerable code will look like this.

redirect_to(params[:some_param])

All users running an affected release should either upgrade or use one of the workarounds immediately.

Releases

The FIXED releases are available at the normal locations.

Workarounds

To work around this problem, it is recommended to use an allow list for valid parameters passed from the user. For example,

private def check(param)
  case param
  when "valid"
    param
  else
    "/"
  end
end

def index
  redirect_to(check(params[:some_param]))
end

Or force the user input to be cast to a string like this,

def index
  redirect_to(params[:some_param].to_s)
end

Patches

To aid users who aren't able to upgrade immediately we have provided patches for the two supported release series. They are in git-am format and consist of a single changeset.

  • 5-2-information-disclosure.patch - Patch for 5.2 series
  • 6-0-information-disclosure.patch - Patch for 6.0 series
  • 6-1-information-disclosure.patch - Patch for 6.1 series

Please note that only the 5.2, 6.0, and 6.1 series are supported at present. Users of earlier unsupported releases are advised to upgrade as soon as possible as we cannot guarantee the continued availability of security fixes for unsupported releases.

Credits

Thanks to Benoit Côté-Jodoin from Shopify for reporting this.

Record
GHSA-hjg4-8q5f-x6fm
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Weakness
CWE-200, CWE-209
Updated
2026-11-02
OSV 7.5

A possible information disclosure / unintended method execution vulnerability in Action Pack >= 2.0.0 when using the redirect_to or polymorphic_urlhelper with untrusted user input.

Record
CVE-2021-22885
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Updated
2026-11-02
OSVDEBIAN-CVE-2021-22885 7.5

A possible information disclosure / unintended method execution vulnerability in Action Pack >= 2.0.0 when using the redirect_to or polymorphic_urlhelper with untrusted user input.

Record
DEBIAN-CVE-2021-22885
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Updated
2026-11-02
Show 12 moreShow less
OSVGHSA-hjg4-8q5f-x6fm 7.5

Action Pack contains Information Disclosure / Unintended Method Execution vulnerability

Impact

There is a possible information disclosure / unintended method execution vulnerability in Action Pack when using the redirect_to or polymorphic_url helper with untrusted user input.

Vulnerable code will look like this.

redirect_to(params[:some_param])

All users running an affected release should either upgrade or use one of the workarounds immediately.

Releases

The FIXED releases are available at the normal locations.

Workarounds

To work around this problem, it is recommended to use an allow list for valid parameters passed from the user. For example,

private def check(param)
  case param
  when "valid"
    param
  else
    "/"
  end
end

def index
  redirect_to(check(params[:some_param]))
end

Or force the user input to be cast to a string like this,

def index
  redirect_to(params[:some_param].to_s)
end

Patches

To aid users who aren't able to upgrade immediately we have provided patches for the two supported release series. They are in git-am format and consist of a single changeset.

  • 5-2-information-disclosure.patch - Patch for 5.2 series
  • 6-0-information-disclosure.patch - Patch for 6.0 series
  • 6-1-information-disclosure.patch - Patch for 6.1 series

Please note that only the 5.2, 6.0, and 6.1 series are supported at present. Users of earlier unsupported releases are advised to upgrade as soon as possible as we cannot guarantee the continued availability of security fixes for unsupported releases.

Credits

Thanks to Benoit Côté-Jodoin from Shopify for reporting this.

Record
GHSA-hjg4-8q5f-x6fm
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Weakness
CWE-200, CWE-209
Updated
2026-11-02
OSVOESA-2021-1236 7.5

rubygem-actionpack security update

Eases web-request routing, handling, and response as a half-way front, half-way page controller. Implemented with specific emphasis on enabling easy unit/integration testing that doesn't require a browser.

Security Fix(es):

A possible information disclosure/unintended method execution vulnerability in Action Pack >= 2.0.0 when using the redirect_to or polymorphic_urlhelper with untrusted user input.(CVE-2021-22885)

Record
OESA-2021-1236
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Updated
2026-11-02
OSVRHSA-2021:4702 9.8

Red Hat Security Advisory: Satellite 6.10 Release

Record
RHSA-2021:4702
CVSS 3.1
9.8 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVUBUNTU-CVE-2021-22885 7.5

A possible information disclosure / unintended method execution vulnerability in Action Pack >= 2.0.0 when using the redirect_to or polymorphic_urlhelper with untrusted user input.

Record
UBUNTU-CVE-2021-22885
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Updated
2026-11-02
OSVopenSUSE-SU-2021:0797-1 No score

Security update for rubygem-actionpack-5_1

This update for rubygem-actionpack-5_1 fixes the following issues:

  • CVE-2021-22885: Fixed possible information disclosure / unintended method execution in Action Pack (bsc#1185715).

This update was imported from the SUSE:SLE-15:Update update project.

Record
openSUSE-SU-2021:0797-1
Updated
2026-11-02
OSVopenSUSE-SU-2021:1759-1 No score

Security update for rubygem-actionpack-5_1

This update for rubygem-actionpack-5_1 fixes the following issues:

  • CVE-2021-22885: Fixed possible information disclosure / unintended method execution in Action Pack (bsc#1185715).
Record
openSUSE-SU-2021:1759-1
Updated
2026-11-02
OSVopenSUSE-SU-2024:11317-1 No score

ruby2.7-rubygem-actionpack-5.2-5.2.6-1.2 on GA media

These are all security issues fixed in the ruby2.7-rubygem-actionpack-5.2-5.2.6-1.2 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2024:11317-1
Updated
2026-11-02
OSVopenSUSE-SU-2024:11318-1 No score

ruby2.7-rubygem-actionpack-6.0-6.0.4-1.2 on GA media

These are all security issues fixed in the ruby2.7-rubygem-actionpack-6.0-6.0.4-1.2 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2024:11318-1
Updated
2026-11-02
OSVopenSUSE-SU-2024:11821-1 No score

ruby3.1-rubygem-actionpack-6.0-6.0.4.4-1.1 on GA media

These are all security issues fixed in the ruby3.1-rubygem-actionpack-6.0-6.0.4.4-1.1 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2024:11821-1
Updated
2026-11-02
OSVSUSE-SU-2021:1650-1 No score

Security update for rubygem-actionpack-4_2

This update for rubygem-actionpack-4_2 fixes the following issues:

  • CVE-2021-22885: Fixed possible information disclosure / unintended method execution in Action Pack (bsc#1185715).
Record
SUSE-SU-2021:1650-1
Updated
2026-11-02
OSVSUSE-SU-2021:1759-1 No score

Security update for rubygem-actionpack-5_1

This update for rubygem-actionpack-5_1 fixes the following issues:

  • CVE-2021-22885: Fixed possible information disclosure / unintended method execution in Action Pack (bsc#1185715).
Record
SUSE-SU-2021:1759-1
Updated
2026-11-02
OSVSUSE-SU-2022:15116-1 No score

Security update for rubygem-actionpack-3_2

This update for rubygem-actionpack-3_2 fixes the following issues:

  • CVE-2021-22885: Fixed Possible Information Disclosure / Unintended Method Execution in Action Pack (bsc#1185715).
  • CVE-2016-2097: Fixed Possible Information Leak Vulnerability in Action View (bsc#968850).
Record
SUSE-SU-2022:15116-1
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
actionpack
RubyGems
6.0.0 to 6.0.3.6
6.0.3.7
actionpack
RubyGems
6.1.0 to 6.1.3.1
6.1.3.2
actionpack
RubyGems
5.2.5 up to 5.2.6
5.2.6
actionpack
RubyGems
2.0.0 to 5.2.4.5
5.2.4.6
rails
Debian:12
before 2:6.0.3.7+dfsg-1
2:6.0.3.7+dfsg-1
rails
Debian:13
before 2:6.0.3.7+dfsg-1
2:6.0.3.7+dfsg-1
rails
Debian:14
before 2:6.0.3.7+dfsg-1
2:6.0.3.7+dfsg-1
rails
Debian:9
From an advisory covering 2 CVEs
before 2:4.2.7.1-1+deb9u5, plus listed versions
2:4.2.7.1-12:4.2.7.1-1+deb9u12:4.2.7.1-1+deb9u22:4.2.7.1-1+deb9u32:4.2.7.1-1+deb9u4
2:4.2.7.1-1+deb9u5
rails
Debian:10
From an advisory covering 3 CVEs
before 2:5.2.2.1+dfsg-1+deb10u3, plus listed versions
2:5.2.2.1+dfsg-12:5.2.2.1+dfsg-1+deb10u12:5.2.2.1+dfsg-1+deb10u2
2:5.2.2.1+dfsg-1+deb10u3
actionpack
RubyGems
6.0.0 up to 6.0.3.7, plus listed versions
6.0.16.0.1.rc16.0.26.0.2.16.0.2.2
Show 10 moreShow less
6.0.2.rc16.0.2.rc26.0.36.0.3.16.0.3.26.0.3.36.0.3.46.0.3.56.0.3.66.0.3.rc1
6.0.3.7
Show 51 moreShow less
Affected packages
PackageAffectedFixed
actionpack
RubyGems
6.1.0 up to 6.1.3.2, plus listed versions
6.1.16.1.26.1.2.16.1.36.1.3.1
6.1.3.2
actionpack
RubyGems
2.0.0 up to 5.2.4.6, plus listed versions
2.0.12.0.22.0.42.0.52.1.0
Show 45 moreShow less
2.1.12.1.22.2.22.2.32.3.102.3.112.3.122.3.142.3.152.3.162.3.172.3.182.3.22.3.32.3.42.3.52.3.62.3.72.3.82.3.8.pre12.3.92.3.9.pre3.0.03.0.0.beta3.0.0.beta23.0.0.beta33.0.0.beta43.0.0.rc3.0.0.rc23.0.13.0.103.0.10.rc13.0.113.0.123.0.12.rc13.0.133.0.13.rc13.0.143.0.153.0.163.0.173.0.183.0.193.0.23.0.20
5.2.4.6
rubygem-actionpack
openEuler:20.03-LTS-SP1
before 5.2.4.4-2.oe1
5.2.4.4-2.oe1
python-ecdsa
Red Hat:satellite_capsule:6.10::el7
From an advisory covering 21 CVEs
before 0:0.13.3-2.el7pc
0:0.13.3-2.el7pc
python3-ecdsa
Red Hat:satellite_capsule:6.10::el7
From an advisory covering 21 CVEs
before 0:0.13.3-2.el7pc
0:0.13.3-2.el7pc
python-ecdsa
Red Hat:satellite:6.10::el7
From an advisory covering 21 CVEs
before 0:0.13.3-2.el7pc
0:0.13.3-2.el7pc
python3-ecdsa
Red Hat:satellite:6.10::el7
From an advisory covering 21 CVEs
before 0:0.13.3-2.el7pc
0:0.13.3-2.el7pc
tfm-rubygem-activerecord-session_store
Red Hat:satellite:6.10::el7
From an advisory covering 21 CVEs
before 0:2.0.0-1.el7sat
0:2.0.0-1.el7sat
satellite
Red Hat:satellite_capsule:6.10::el7
From an advisory covering 21 CVEs
before 0:6.10.0-3.el7sat
0:6.10.0-3.el7sat
satellite
Red Hat:satellite:6.10::el7
From an advisory covering 21 CVEs
before 0:6.10.0-3.el7sat
0:6.10.0-3.el7sat
candlepin
Red Hat:satellite:6.10::el7
From an advisory covering 21 CVEs
before 0:4.0.9-1.el7sat
0:4.0.9-1.el7sat
python-pyyaml
Red Hat:satellite_capsule:6.10::el7
From an advisory covering 21 CVEs
before 0:5.4.1-1.el7pc
0:5.4.1-1.el7pc
python3-pyyaml
Red Hat:satellite_capsule:6.10::el7
From an advisory covering 21 CVEs
before 0:5.4.1-1.el7pc
0:5.4.1-1.el7pc
python-pyyaml
Red Hat:satellite:6.10::el7
From an advisory covering 21 CVEs
before 0:5.4.1-1.el7pc
0:5.4.1-1.el7pc
python3-pyyaml
Red Hat:satellite:6.10::el7
From an advisory covering 21 CVEs
before 0:5.4.1-1.el7pc
0:5.4.1-1.el7pc
tfm-rubygem-nokogiri
Red Hat:satellite_capsule:6.10::el7
From an advisory covering 21 CVEs
before 0:1.11.3-2.el7sat
0:1.11.3-2.el7sat
tfm-rubygem-nokogiri
Red Hat:satellite:6.10::el7
From an advisory covering 21 CVEs
before 0:1.11.3-2.el7sat
0:1.11.3-2.el7sat
satellite-capsule
Red Hat:satellite_capsule:6.10::el7
From an advisory covering 21 CVEs
before 0:6.10.0-3.el7sat
0:6.10.0-3.el7sat
foreman
Red Hat:satellite_capsule:6.10::el7
From an advisory covering 21 CVEs
before 0:2.5.2.17-2.el7sat
0:2.5.2.17-2.el7sat
foreman
Red Hat:satellite:6.10::el7
From an advisory covering 21 CVEs
before 0:2.5.2.17-2.el7sat
0:2.5.2.17-2.el7sat
python-aiohttp
Red Hat:satellite_capsule:6.10::el7
From an advisory covering 21 CVEs
before 0:3.7.4-1.el7pc
0:3.7.4-1.el7pc
python-aiohttp
Red Hat:satellite:6.10::el7
From an advisory covering 21 CVEs
before 0:3.7.4-1.el7pc
0:3.7.4-1.el7pc
tfm-rubygem-actionpack
Red Hat:satellite:6.10::el7
From an advisory covering 21 CVEs
before 0:6.0.3.7-1.el7sat
0:6.0.3.7-1.el7sat
tfm-rubygem-rails
Red Hat:satellite:6.10::el7
From an advisory covering 21 CVEs
before 0:6.0.3.7-1.el7sat
0:6.0.3.7-1.el7sat
python3-django
Red Hat:satellite_capsule:6.10::el7
From an advisory covering 21 CVEs
before 0:2.2.24-1.el7pc
0:2.2.24-1.el7pc
python3-django
Red Hat:satellite:6.10::el7
From an advisory covering 21 CVEs
before 0:2.2.24-1.el7pc
0:2.2.24-1.el7pc
tfm-rubygem-puma
Red Hat:satellite:6.10::el7
From an advisory covering 21 CVEs
before 0:5.3.2-1.el7sat
0:5.3.2-1.el7sat
tfm-rubygem-addressable
Red Hat:satellite:6.10::el7
From an advisory covering 21 CVEs
before 0:2.8.0-1.el7sat
0:2.8.0-1.el7sat
python-urllib3
Red Hat:satellite_capsule:6.10::el7
From an advisory covering 21 CVEs
before 0:1.26.5-1.el7pc
0:1.26.5-1.el7pc
python3-urllib3
Red Hat:satellite_capsule:6.10::el7
From an advisory covering 21 CVEs
before 0:1.26.5-1.el7pc
0:1.26.5-1.el7pc
python-urllib3
Red Hat:satellite:6.10::el7
From an advisory covering 21 CVEs
before 0:1.26.5-1.el7pc
0:1.26.5-1.el7pc
python3-urllib3
Red Hat:satellite:6.10::el7
From an advisory covering 21 CVEs
before 0:1.26.5-1.el7pc
0:1.26.5-1.el7pc
rubygem-actionpack-4_2
SUSE:OpenStack Cloud 7
before 4.2.9-7.12.1
4.2.9-7.12.1
rubygem-actionpack-4_2
SUSE:OpenStack Cloud Crowbar 8
before 4.2.9-7.12.1
4.2.9-7.12.1
rubygem-actionpack-4_2
SUSE:OpenStack Cloud Crowbar 9
before 4.2.9-7.12.1
4.2.9-7.12.1
rubygem-actionpack-5_1
SUSE:Linux Enterprise High Availability Extension 15
before 5.1.4-3.9.1
5.1.4-3.9.1
rubygem-actionpack-5_1
SUSE:Linux Enterprise High Availability Extension 15 SP1
before 5.1.4-3.9.1
5.1.4-3.9.1
rubygem-actionpack-5_1
SUSE:Linux Enterprise High Availability Extension 15 SP2
before 5.1.4-3.9.1
5.1.4-3.9.1
rubygem-actionpack-5_1
SUSE:Linux Enterprise High Availability Extension 15 SP3
before 5.1.4-3.9.1
5.1.4-3.9.1
rubygem-actionpack-3_2
SUSE:WebYast 1.3
From an advisory covering 2 CVEs
before 3.2.12-0.27.3.1
3.2.12-0.27.3.1
rails
Ubuntu:Pro:16.04:LTS
All versions, plus listed versions
2:4.1.10-12:4.2.5-12:4.2.5.1-12:4.2.5.2-22:4.2.6-12:4.2.6-1ubuntu0.1~esm12:4.2.6-1ubuntu0.1~esm2
None known
rails
Ubuntu:Pro:18.04:LTS
All versions, plus listed versions
2:4.2.9-22:4.2.9-42:4.2.10-0ubuntu42:4.2.10-0ubuntu4+esm12:4.2.10-0ubuntu4+esm2
None known
rails
Ubuntu:Pro:20.04:LTS
All versions, plus listed versions
2:5.2.2.1+dfsg-1ubuntu12:5.2.3+dfsg-32:5.2.3+dfsg-3ubuntu0.1~esm1
None known
rails
Ubuntu:Pro:22.04:LTS
All versions, plus listed versions
2:6.0.3.7+dfsg-22:6.1.4.1+dfsg-8ubuntu22:6.1.4.1+dfsg-8ubuntu2+esm1
None known
rails
Ubuntu:24.04:LTS
All versions, plus listed versions
2:6.1.7.3+dfsg-2build12:6.1.7.3+dfsg-3
None known
rails
Ubuntu:25.10
All versions, plus listed versions
2:6.1.7.3+dfsg-72:7.2.2.1+dfsg-7
None known
rails
Ubuntu:26.10
All versions, plus listed versions
2:7.2.3+dfsg-22:7.2.3.2+dfsg-2
None known
rails
Ubuntu:26.04:LTS
All versions, plus listed versions
2:7.2.2.1+dfsg-72:7.2.2.2+dfsg-22:7.2.3+dfsg-2
None known
rubygem-actionpack-5_1
openSUSE:Leap 15.2
before 5.1.4-lp152.5.6.1
5.1.4-lp152.5.6.1
rubygem-actionpack-5_1
openSUSE:Leap 15.3
before 5.1.4-3.9.1
5.1.4-3.9.1
rubygem-actionpack-6.0
openSUSE:Tumbleweed
From an advisory covering 12 CVEs
before 6.0.4.4-1.1
6.0.4.4-1.1

History

History
RecordedChangedSources
affected, facts
aliases, productsEUVD
first indexedCVE List, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2021-22885 is a high vulnerability (CVSS 7.5) in Debian Linux, published May 5, 2021. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 4.05%, the 90th percentile. Fixed in actionpack 6.0.3.7.

References

Show 194 moreShow less
This page doesn't list everything

Left out here: 269 versions and 423 references. The JSON record has them.

MoveEnter Open