synced 10 MIN AGO
01 Record

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.

MediumPUBLISHEDCNA: mitre
CNA base score4.0 CVSS v3.xCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:N/I:N/A:L

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.
CISA publishes the decision points, not a final SSVC decision. The decision also depends on mission and well-being impact, which is a property of your deployment rather than of the vulnerability.
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

VendorProductVersionsPlatforms
ruby-langCGI0 to < 0.3.5.1, 0.3.6 to < 0.3.7, 0.4.0 to < 0.4.2—

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+esm10
    Available 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+esm4
    Available 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.