ruby/rexml · Security
REXML denial of service vulnerability
- GHSA ID
- GHSA-4xqq-m2hx-25v8
- CVE ID
- CVE-2024-39908
- Severity
- medium
- Published
- Updated
- CVSS
- 4.3 · CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:L
- CVSS v3
- 4.3 · CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:L
- CVSS v4
- 6.9 · CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N
Description
Impact
The REXML gem before 3.3.1 has some DoS vulnerabilities when it parses an XML that has many specific characters such as <, 0 and %>.
If you need to parse untrusted XMLs, you may be impacted to these vulnerabilities.
Patches
The REXML gem 3.3.2 or later include the patches to fix these vulnerabilities.
Workarounds
Don't parse untrusted XMLs.
References
- https://github.com/ruby/rexml/security/advisories/GHSA-vg3r-rm7w-2xgh : This is a similar vulnerability
- https://www.ruby-lang.org/en/news/2024/07/16/dos-rexml-cve-2024-39908/
CWEs
- CWE-400 · Uncontrolled Resource Consumption
References
- https://github.com/ruby/rexml/security/advisories/GHSA-4xqq-m2hx-25v8 ↗
- https://nvd.nist.gov/vuln/detail/CVE-2024-39908 ↗
- https://github.com/ruby/rexml/releases/tag/v3.3.2 ↗
- https://github.com/rubysec/ruby-advisory-db/blob/master/gems/rexml/CVE-2024-39908.yml ↗
- https://www.ruby-lang.org/en/news/2024/07/16/dos-rexml-cve-2024-39908 ↗
- https://security.netapp.com/advisory/ntap-20250117-0008 ↗
- https://lists.debian.org/debian-lts-announce/2025/01/msg00011.html ↗
- https://github.com/advisories/GHSA-4xqq-m2hx-25v8 ↗