CVE-2025-27220
In the CGI gem before 0.4.2 for Ruby, a Regular Expression Denial of Service (ReDoS) vulnerability exists in the Util#escapeElement method.
02 Description
In the CGI gem before 0.4.2 for Ruby, a Regular Expression Denial of Service (ReDoS) vulnerability exists in the Util#escapeElement method.
03 Exploitation and scoring
- Exploitation
- Assessed, none found. CISA's assessment recorded neither public exploit code nor evidence of exploitation when it was made.
- SSVC decision
- ExploitationnoneCISA recorded no public exploit code and no evidence of exploitation.
- AutomatablenoAt least one step from reconnaissance to exploitation cannot be reliably automated.
- Technical ImpactpartialSuccessful exploitation gives limited control of the vulnerable component.
- EPSS probability
- 0.76% probability of exploitation activity in the next 30 days.
- EPSS percentile
- Equal to or higher than the score of 55.0% of scored records. A rank, not a probability.
- NVD base score
- 7.5 (CVSS v3.x), scored by the NVD independently of the CNA.
- NVD CVSS vector
- CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
- NVD analysis status
- Modified. NVD last modified this record on 2026-06-17.
- Red Hat severity
- Moderate. Red Hat's rating for its own products, not a CVSS rating.
Exploit-prediction scores from FIRST. Independent scoring and analysis status from the NVD. Vendor severity from Red Hat. Exploitation assessment and catalog membership from CISA.
04 Metadata
- Published
- 2025-03-03 00:00Z1 YR AGO
- Last updated
- 2025-11-03 21:13Z12 MO AGO
- Reserved
- 2025-02-20
- Assigning CNA
- mitre
- Record state
- PUBLISHED
- Severity
- Medium (CVSS 4.0)
- CNA CVSS vector
- CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:N/I:N/A:L
- Weaknesses
- CWE-1333Inefficient Regular Expression ComplexityBase
- Data version
- 5.2
- Document digest
- f9f64e4590bdb57d4951ef03ac2bfe1d5138a7826318fe5b4bc34ff9d79ea8e3
05 Affected products
06 References
07 Fixed in
AlmaLinux 8
- ruby Fixed in 3.1.7-145.module_el8.10.0+3984+cf55e3df
- ruby-bundled-gems Fixed in 3.1.7-145.module_el8.10.0+3984+cf55e3df
- ruby-default-gems Fixed in 3.1.7-145.module_el8.10.0+3984+cf55e3df
- ruby-devel Fixed in 3.1.7-145.module_el8.10.0+3984+cf55e3df
- ruby-doc Fixed in 3.1.7-145.module_el8.10.0+3984+cf55e3df
- ruby-libs Fixed in 3.1.7-145.module_el8.10.0+3984+cf55e3df
- rubygem-abrt Fixed in 0.4.0-1.module_el8.9.0+3746+91b8233a
- rubygem-abrt-doc Fixed in 0.4.0-1.module_el8.10.0+3854+02eaa59a
- rubygem-bigdecimal Fixed in 3.1.1-145.module_el8.10.0+3984+cf55e3df
- rubygem-bundler Fixed in 2.3.27-145.module_el8.10.0+3984+cf55e3df
- rubygem-io-console Fixed in 0.5.11-145.module_el8.10.0+3984+cf55e3df
- rubygem-irb Fixed in 1.4.1-145.module_el8.10.0+3984+cf55e3df
- rubygem-json Fixed in 2.6.1-145.module_el8.10.0+3984+cf55e3df
- rubygem-minitest Fixed in 5.15.0-145.module_el8.10.0+3984+cf55e3df
- rubygem-mysql2 Fixed
A version is affected if any line below covers it.
- Affected before 0.5.3-3.module_el8.10.0+3854+02eaa59a
- Affected before 0.5.3-3.module_el8.9.0+3746+91b8233a
- rubygem-mysql2-doc Fixed in 0.5.3-3.module_el8.10.0+3854+02eaa59a
- rubygem-pg Fixed
A version is affected if any line below covers it.
- Affected before 1.3.2-1.module_el8.10.0+3854+02eaa59a
- Affected before 1.3.2-1.module_el8.9.0+3746+91b8233a
- rubygem-pg-doc Fixed in 1.3.2-1.module_el8.10.0+3854+02eaa59a
- rubygem-power_assert Fixed in 2.0.1-145.module_el8.10.0+3984+cf55e3df
- rubygem-psych Fixed in 4.0.4-145.module_el8.10.0+3984+cf55e3df
- rubygem-rake Fixed in 13.0.6-145.module_el8.10.0+3984+cf55e3df
- rubygem-rbs Fixed in 2.7.0-145.module_el8.10.0+3984+cf55e3df
- rubygem-rdoc Fixed in 6.4.1.1-145.module_el8.10.0+3984+cf55e3df
- rubygem-rexml Fixed in 3.3.9-145.module_el8.10.0+3984+cf55e3df
- rubygem-rss Fixed in 0.3.1-145.module_el8.10.0+3984+cf55e3df
- rubygem-test-unit Fixed in 3.5.3-145.module_el8.10.0+3984+cf55e3df
- rubygem-typeprof Fixed in 0.21.3-145.module_el8.10.0+3984+cf55e3df
- rubygems Fixed in 3.3.27-145.module_el8.10.0+3984+cf55e3df
- rubygems-devel Fixed in 3.3.27-145.module_el8.10.0+3984+cf55e3df
Source: AlmaLinux, AlmaLinux OS. Copyright (c) 2023 AlmaLinux OS. Licensed under MIT License. Received through OSV.dev. Reformatted by exploit.cc.
AlmaLinux 9
- rubygem-mysql2 Fixed in 0.5.4-1.module_el9.1.0+8+503f6fbd
- rubygem-mysql2-doc Fixed in 0.5.4-1.module_el9.1.0+8+503f6fbd
- rubygem-pg Fixed in 1.3.5-1.module_el9.1.0+8+503f6fbd
- rubygem-pg-doc Fixed in 1.3.5-1.module_el9.1.0+8+503f6fbd
Source: AlmaLinux, AlmaLinux OS. Copyright (c) 2023 AlmaLinux OS. Licensed under MIT License. Received through OSV.dev. Reformatted by exploit.cc.
CloudLinux 8
- ruby Fixed in 3.1.7-145.module_el8.10.0+3984+cf55e3df
- ruby-bundled-gems Fixed in 3.1.7-145.module_el8.10.0+3984+cf55e3df
- ruby-default-gems Fixed in 3.1.7-145.module_el8.10.0+3984+cf55e3df
- ruby-devel Fixed in 3.1.7-145.module_el8.10.0+3984+cf55e3df
- ruby-doc Fixed in 3.1.7-145.module_el8.10.0+3984+cf55e3df
- ruby-libs Fixed in 3.1.7-145.module_el8.10.0+3984+cf55e3df
- rubygem-abrt Fixed in 0.4.0-1.module_el8.9.0+3746+91b8233a
- rubygem-abrt-doc Fixed in 0.4.0-1.module_el8.10.0+3854+02eaa59a
- rubygem-bigdecimal Fixed in 3.1.1-145.module_el8.10.0+3984+cf55e3df
- rubygem-bundler Fixed in 2.3.27-145.module_el8.10.0+3984+cf55e3df
- rubygem-io-console Fixed in 0.5.11-145.module_el8.10.0+3984+cf55e3df
- rubygem-irb Fixed in 1.4.1-145.module_el8.10.0+3984+cf55e3df
- rubygem-json Fixed in 2.6.1-145.module_el8.10.0+3984+cf55e3df
- rubygem-minitest Fixed in 5.15.0-145.module_el8.10.0+3984+cf55e3df
- rubygem-mysql2 Fixed
A version is affected if any line below covers it.
- Affected before 0.5.3-3.module_el8.10.0+3854+02eaa59a
- Affected before 0.5.3-3.module_el8.9.0+3746+91b8233a
- rubygem-mysql2-doc Fixed in 0.5.3-3.module_el8.10.0+3854+02eaa59a
- rubygem-pg Fixed
A version is affected if any line below covers it.
- Affected before 1.3.2-1.module_el8.10.0+3854+02eaa59a
- Affected before 1.3.2-1.module_el8.9.0+3746+91b8233a
- rubygem-pg-doc Fixed in 1.3.2-1.module_el8.10.0+3854+02eaa59a
- rubygem-power_assert Fixed in 2.0.1-145.module_el8.10.0+3984+cf55e3df
- rubygem-psych Fixed in 4.0.4-145.module_el8.10.0+3984+cf55e3df
- rubygem-rake Fixed in 13.0.6-145.module_el8.10.0+3984+cf55e3df
- rubygem-rbs Fixed in 2.7.0-145.module_el8.10.0+3984+cf55e3df
- rubygem-rdoc Fixed in 6.4.1.1-145.module_el8.10.0+3984+cf55e3df
- rubygem-rexml Fixed in 3.3.9-145.module_el8.10.0+3984+cf55e3df
- rubygem-rss Fixed in 0.3.1-145.module_el8.10.0+3984+cf55e3df
- rubygem-test-unit Fixed in 3.5.3-145.module_el8.10.0+3984+cf55e3df
- rubygem-typeprof Fixed in 0.21.3-145.module_el8.10.0+3984+cf55e3df
- rubygems Fixed in 3.3.27-145.module_el8.10.0+3984+cf55e3df
- rubygems-devel Fixed in 3.3.27-145.module_el8.10.0+3984+cf55e3df
Derived from AlmaLinux 8. Partial coverage: only packages taken from AlmaLinux 8 are listed.
Source: CloudLinux errata, CloudLinux Inc. Derived from: AlmaLinux, AlmaLinux OS. Copyright (c) 2023 AlmaLinux OS. Licensed under MIT License. Received through OSV.dev. Reformatted by exploit.cc.
CloudLinux 9
- rubygem-mysql2 Fixed in 0.5.4-1.module_el9.1.0+8+503f6fbd
- rubygem-mysql2-doc Fixed in 0.5.4-1.module_el9.1.0+8+503f6fbd
- rubygem-pg Fixed in 1.3.5-1.module_el9.1.0+8+503f6fbd
- rubygem-pg-doc Fixed in 1.3.5-1.module_el9.1.0+8+503f6fbd
Derived from AlmaLinux 9. Partial coverage: only packages taken from AlmaLinux 9 are listed.
Source: CloudLinux errata, CloudLinux Inc. Derived from: AlmaLinux, AlmaLinux OS. Copyright (c) 2023 AlmaLinux OS. Licensed under MIT License. Received through OSV.dev. Reformatted by exploit.cc.
Debian 12
- ruby3.1 No fix yet
Source: Debian Security Tracker, the Debian security team. Received through OSV.dev. Reformatted by exploit.cc.
Debian 13
- ruby3.3 Fixed in 3.3.7-2
Source: Debian Security Tracker, the Debian security team. Received through OSV.dev. Reformatted by exploit.cc.
Debian 14
- ruby3.3 Fixed in 3.3.7-2
Source: Debian Security Tracker, the Debian security team. Received through OSV.dev. Reformatted by exploit.cc.
Ubuntu 16.04 LTS
- jruby No fix yet
Source: Ubuntu, Canonical Ltd. Licensed under CC BY-SA 4.0. Received through OSV.dev. Reformatted by exploit.cc.
Ubuntu 18.04 LTS
- jruby No fix yet
Source: Ubuntu, Canonical Ltd. Licensed under CC BY-SA 4.0. Received through OSV.dev. Reformatted by exploit.cc.
Ubuntu 20.04 LTS
- jruby No fix yet
- ruby2.7 Fixed in 2.7.0-5ubuntu1.18
Source: Ubuntu, Canonical Ltd. Licensed under CC BY-SA 4.0. Received through OSV.dev. Reformatted by exploit.cc.
Ubuntu 22.04 LTS
- ruby3.0 Fixed in 3.0.2-7ubuntu2.10
Source: Ubuntu, Canonical Ltd. Licensed under CC BY-SA 4.0. Received through OSV.dev. Reformatted by exploit.cc.
Ubuntu 24.04 LTS
- jruby No fix yet
- ruby3.2 Fixed in 3.2.3-1ubuntu0.24.04.5
Source: Ubuntu, Canonical Ltd. Licensed under CC BY-SA 4.0. Received through OSV.dev. Reformatted by exploit.cc.
Ubuntu 25.10
- jruby No fix yet
- ruby3.3 Fixed in 3.3.7-1ubuntu2
Source: Ubuntu, Canonical Ltd. Licensed under CC BY-SA 4.0. Received through OSV.dev. Reformatted by exploit.cc.
Ubuntu 26.04 LTS
- jruby No fix yet
Source: Ubuntu, Canonical Ltd. Licensed under CC BY-SA 4.0. Received through OSV.dev. Reformatted by exploit.cc.
Ubuntu 26.10
- jruby No fix yet
Source: Ubuntu, Canonical Ltd. Licensed under CC BY-SA 4.0. Received through OSV.dev. Reformatted by exploit.cc.
Ubuntu Pro 14.04 LTS
- jruby No fix yet
Source: Ubuntu, Canonical Ltd. Licensed under CC BY-SA 4.0. Received through OSV.dev. Reformatted by exploit.cc.
Ubuntu Pro 16.04 LTS
- ruby2.3 Fixed in 2.3.1-2~ubuntu16.04.16+esm10Available with Ubuntu Pro (Infra-only): https://ubuntu.com/pro
Source: Ubuntu, Canonical Ltd. Licensed under CC BY-SA 4.0. Received through OSV.dev. Reformatted by exploit.cc.
Ubuntu Pro 18.04 LTS
- ruby2.5 Fixed in 2.5.1-1ubuntu1.16+esm4Available with Ubuntu Pro (Infra-only): https://ubuntu.com/pro
Source: Ubuntu, Canonical Ltd. Licensed under CC BY-SA 4.0. Received through OSV.dev. Reformatted by exploit.cc.
A release or ecosystem missing from this list has no record here. It may be unaffected or not covered by the source. Source notices and licences.