CVE-2024-43398 json
REXML denial of service vulnerability
published 2024-08-22 2 y ago modified 2026-09-10 1 mo ago also EUVD-2024-2666 , GHSA-vmwr-mc7x-5vc3
- cvss
- 5.9
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 1.2%
- EPSS 1.2% chance of exploitation in 30 days, percentile 68%
- public exploits
- 0
- none known
Summary
REXML is an XML toolkit for Ruby. The REXML gem before 3.3.6 has a DoS vulnerability when it parses an XML that has many deep elements that have same local name attributes. If you need to parse untrusted XMLs with tree parser API like REXML::Document.new, you may be impacted to this vulnerability. If you use other parser APIs such as stream parser API and SAX2 parser API, this vulnerability is not affected. The REXML gem 3.3.6 or later include the patch to fix the vulnerability.
Patch / fix
- rubygems rexml 3.3.6
- ruby-lang rexml 3.3.6
- ruby3.3 Debian 14, Debian 13 3.3.5-1
debian advisories DEBIAN-CVE-2024-43398
- ruby2.7 Ubuntu 20.04 LTS 2.7.0-5ubuntu1.16
- ruby3.0 Ubuntu 22.04 LTS 3.0.2-7ubuntu2.10
- ruby3.2 Ubuntu 24.04 LTS 3.2.3-1ubuntu0.24.04.5
ubuntu advisories UBUNTU-CVE-2024-43398
Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- ruby RHEL 9 3.1.7-146.module+el9.5.0+23003+a4c328ce
- rubygems RHEL 9 3.3.27-146.module+el9.5.0+23003+a4c328ce
- ruby-libs RHEL 9 3.1.7-146.module+el9.5.0+23003+a4c328ce
- rubygem-pg RHEL 9 1.3.5-1.module+el9.1.0+15737+76195479
- rubygem-irb RHEL 9 1.4.1-146.module+el9.5.0+23003+a4c328ce
- rubygem-rbs RHEL 9 2.7.0-146.module+el9.5.0+23003+a4c328ce
- rubygem-rss RHEL 9 0.3.1-146.module+el9.5.0+23003+a4c328ce
- rubygem-json RHEL 9 2.6.1-146.module+el9.5.0+23003+a4c328ce
red hat advisories RHSA-2025:4488RHSA-2025:4063RHSA-2024:6785RHSA-2024:6784RHSA-2024:6703RHSA-2024:6702
- ruby2.5 SLES for SAP 15 SP3, SLES for SAP 15 SP2, SLES 15 SP4-LTSS +9 more 2.5.9-150000.4.32.1
suse advisories SUSE-SU-2024:3874-1
- rubygem-rexml Package Hub 15 SP6, openSUSE Leap 15.6 3.3.9-bp156.4.3.1
opensuse advisories openSUSE-SU-2025:0129-1
- rubygem-pg AlmaLinux 9 1.3.5-1.module_el9.1.0+8+503f6fbd
- rubygem-mysql2 AlmaLinux 9 0.5.4-1.module_el9.1.0+8+503f6fbd
- ruby AlmaLinux 8 3.1.7-145.module_el8.10.0+3984+cf55e3df
- rubygems AlmaLinux 8 3.3.27-145.module_el8.10.0+3984+cf55e3df
- ruby-libs AlmaLinux 8 3.1.7-145.module_el8.10.0+3984+cf55e3df
- rubygem-pg AlmaLinux 8 1.3.2-1.module_el8.10.0+3854+02eaa59a
- rubygem-pg AlmaLinux 8 1.3.2-1.module_el8.9.0+3746+91b8233a
- rubygem-irb AlmaLinux 8 1.4.1-145.module_el8.10.0+3984+cf55e3df
almalinux advisories ALSA-2025:4488ALSA-2025:4063ALSA-2024:6784ALSA-2024:6785ALSA-2024:6670
- ruby Rocky Linux 9 3.1.7-146.module+el9.5.0+31847+8b291b93
- rubygem-pg Rocky Linux 9 1.3.5-1.module+el9.5.0+31847+8b291b93
- rubygem-mysql2 Rocky Linux 9 0.5.4-1.module+el9.5.0+31847+8b291b93
- ruby Rocky Linux 8 3.1.7-145.module+el8.10.0+1957+16e0d1a2
- rubygem-pg Rocky Linux 8 1.3.2-1.module+el8.10.0+1741+bdb5b6ca
- rubygem-pg Rocky Linux 8 1.3.2-1.module+el8.10.0+1826+b62220b4
- rubygem-abrt Rocky Linux 8 0.4.0-1.module+el8.10.0+1827+16ecb9d2
- rubygem-abrt Rocky Linux 8 0.4.0-1.module+el8.5.0+668+665814fa
rocky linux advisories RLSA-2025:4488RLSA-2025:4063RLSA-2024:6785RLSA-2024:6784RLSA-2024:6670
- ruby-rexml Alpine 3.24, Alpine 3.23, Alpine 3.22 +3 more 3.3.9-r0
alpine advisories ALPINE-CVE-2024-43398
Alpine secdb © Alpine Linux, from https://secdb.alpinelinux.org via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- ruby CBL-Mariner 2.0 3.1.7-1
- rubygem-rexml CBL-Mariner 2.0 3.2.9-1
- rubygem-rexml Azure Linux 3.0 3.3.9-1
- ruby Azure Linux 3.0 3.3.5-1
azure linux advisories AZL-48150AZL-48154AZL-48156AZL-48162
Azure Linux vulnerability data, Copyright (c) Microsoft Corporation, from https://github.com/microsoft/AzureLinuxVulnerabilityData via OSV, under the MIT licence; changed: normalised to fixed package versions per release. MIT
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2024-43398 updated cvss 5.9
rexml: DoS vulnerability in REXML
-
Red Hat 3scale API Management Platform 2 3scale-amp2/zync-rhel8, 3scale-amp2/system-rhel7, 3scale-amp2/backend-rhel8, 3scale-amp2/toolbox-rhel8 Red Hat Enterprise Linux 8 ruby, ruby-irb, rubygems, ruby-libs, rubygem-pg, rubygem-irb, +25 more Red Hat Enterprise Linux 9 pcs, ruby, pcs-snmp, rubygems, ruby-libs, rubygem-irb, +15 moreaffected: workaround, no fix planned “Will not fix”
-
Red Hat OpenStack Platform 16.1 puppet-etcd, puppet-datacat, puppet-opendaylightaffected: workaround, no fix planned “Out of support scope”
-
Red Hat Satellite 6 foreman, foreman-cli, foreman-ec2, foreman-gce, foreman-ovirt, foreman-vmware, +9 moreaffected: workaround, no fix planned “Will not fix”
-
Red Hat Enterprise Linux AppStream (v. 8) ruby 3.3.5-3.module+el8.10.0+22271+6a48b0b9, ruby 3.1.7-145.module+el8.10.0+23011+f9d508f8, ruby-libs 3.3.5-3.module+el8.10.0+22271+6a48b0b9, rubygems 3.5.16-3.module+el8.10.0+22271+6a48b0b9, rubygem-pg 1.3.2-1.module+el8.10.0+21470+43ec8058, rubygem-pg 1.5.4-1.module+el8.10.0+21226+b78a28c4, +41 morefixed: vendor fix RHSA-2025:4063
-
Red Hat Enterprise Linux AppStream (v. 9) ruby 3.3.5-3.module+el9.4.0+22273+463af10f, ruby 3.1.7-146.module+el9.5.0+23003+a4c328ce, ruby-libs 3.3.5-3.module+el9.4.0+22273+463af10f, rubygems 3.5.16-3.module+el9.4.0+22273+463af10f, rubygem-pg 1.3.5-1.module+el9.1.0+15737+76195479, rubygem-pg 1.5.4-1.module+el9.4.0+21222+faeeed2f, +39 morefixed: vendor fix RHSA-2024:6785
-
Red Hat Enterprise Linux High Availability E4S (v.8.6) pcs 0.10.12-6.el8_6.6, pcs-snmp 0.10.12-6.el8_6.6fixed: vendor fix RHSA-2024:6702
-
Red Hat Enterprise Linux High Availability EUS (v.8.8) pcs 0.10.15-4.el8_8.3, pcs-snmp 0.10.15-4.el8_8.3fixed: vendor fix RHSA-2024:6703
-
Red Hat Enterprise Linux High Availability TUS (v.8.6) pcs 0.10.12-6.el8_6.6, pcs-snmp 0.10.12-6.el8_6.6fixed: vendor fix RHSA-2024:6702
show 4 moreshow fewer
-
Red Hat Enterprise Linux HighAvailability (v. 8) pcs 0.10.18-2.el8_10.2, pcs-snmp 0.10.18-2.el8_10.2fixed: vendor fix RHSA-2024:6670
-
Red Hat Enterprise Linux Resilient Storage EUS (v.8.8) pcs 0.10.15-4.el8_8.3, pcs-snmp 0.10.15-4.el8_8.3fixed: vendor fix RHSA-2024:6703
-
Red Hat Enterprise Linux ResilientStorage (v. 8) pcs 0.10.18-2.el8_10.2, pcs-snmp 0.10.18-2.el8_10.2fixed: vendor fix RHSA-2024:6670
-
Red Hat Enterprise Linux 10 ruby Red Hat OpenStack Platform 16.2 puppet-etcd, puppet-datacat, puppet-opendaylight Red Hat OpenStack Platform 17.1 puppet-etcdnot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- partial
- Assessed
- 2 y ago
Exploit prediction
1.21% chance of exploitation in the next 30 days, higher than 68% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 5.9 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H |
| GitHub | 3.1 | 5.9 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| rubygems | rexml | <3.3.6 |
3.3.6 |
Affected products
- ruby rexml
Classification
- Weakness
-
- CWE-776 Improper Restriction of Recursive Entity References in DTDs
References
-
github.com
/ruby/rexml/commit/7cb5eaeb221c322b9912f724183294d8ce96bae3
web
-
github.com
/ruby/rexml/security/advisories/GHSA-vmwr-mc7x-5vc3
web, vendor-advisory
-
github.com
/ruby/rexml/releases/tag/v3.3.6
web, release-notes
-
security.netapp.com
/advisory/ntap-20250103-0006/
third-party-advisory
-
lists.debian.org
/debian-lts-announce/2025/01/msg00011.html
web
-
nvd.nist.gov
/vuln/detail/CVE-2024-43398
advisory
-
github.com
/ruby/rexml
package
-
github.com
/rubysec/ruby-advisory-db/blob/master/gems/rexml/CVE-2024-43398.yml
web
-
security.netapp.com
/advisory/ntap-20250103-0006
web
-
ruby-lang.org
/en/news/2024/08/22/dos-rexml-cve-2024-43398
web
Sources
- CVE List CVE-2024-43398
- GitHub Advisory GHSA-vmwr-mc7x-5vc3
- NVD CVE-2024-43398
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.