Ecosyste.ms: Advisories
An open API service providing security vulnerability metadata for many open source software ecosystems.
Security Advisories: GSA_kwCzR0hTQS12bXdyLW1jN3gtNXZjM84AA-4Z
REXML denial of service vulnerability
Impact
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.
Patches
The REXML gem 3.3.6 or later include the patch to fix the vulnerability.
Workarounds
Don't parse untrusted XMLs with tree parser API.
References
- https://www.ruby-lang.org/en/news/2024/08/22/dos-rexml-cve-2024-43398/ : An announce on www.ruby-lang.org
JSON: https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS12bXdyLW1jN3gtNXZjM84AA-4Z
Source: GitHub Advisory Database
Origin: Unspecified
Severity: High
Classification: General
Published: 5 months ago
Updated: 12 days ago
CVSS Score: 5.9
CVSS vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
EPSS Percentage: 0.00043
EPSS Percentile: 0.10511
Identifiers: GHSA-vmwr-mc7x-5vc3, CVE-2024-43398
References:
- https://github.com/ruby/rexml/security/advisories/GHSA-vmwr-mc7x-5vc3
- https://nvd.nist.gov/vuln/detail/CVE-2024-43398
- https://github.com/ruby/rexml/commit/7cb5eaeb221c322b9912f724183294d8ce96bae3
- https://github.com/ruby/rexml/releases/tag/v3.3.6
- https://github.com/rubysec/ruby-advisory-db/blob/master/gems/rexml/CVE-2024-43398.yml
- https://www.ruby-lang.org/en/news/2024/08/22/dos-rexml-cve-2024-43398
- https://security.netapp.com/advisory/ntap-20250103-0006
- https://github.com/advisories/GHSA-vmwr-mc7x-5vc3
Blast Radius: 32.0
Affected Packages
rubygems:rexml
Dependent packages: 269Dependent repositories: 268,429
Downloads: 483,726,473 total
Affected Version Ranges: < 3.3.6
Fixed in: 3.3.6
All affected versions: 3.1.8, 3.1.9, 3.2.0, 3.2.1, 3.2.2, 3.2.3, 3.2.4, 3.2.5, 3.2.6, 3.2.7, 3.2.8, 3.2.9, 3.3.0, 3.3.1, 3.3.2, 3.3.3, 3.3.4, 3.3.5
All unaffected versions: 3.3.6, 3.3.7, 3.3.8, 3.3.9, 3.4.0