CVE-2024-39908
Medium · 4.3CVSS
4.3
EPSS
1.5%
Published
Jul 16, 2024
CISA due date
—
Cloudanix analysis
A vulnerable XML parser used by some Ruby applications can be made to slow down or stop responding when it processes specially crafted input.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Moderate
- Impact
- Denial Of Service
- Component
- Library
- Class
- Denial of service
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
REXML versions before the patched releases can consume excessive CPU and/or processing time when parsing specially crafted XML containing large numbers of particular characters such as '<', '0', and '%>'. The flaw is a denial-of-service condition in XML parsing logic: an attacker does not need authentication if an exposed application accepts attacker-controlled XML, but the vulnerable code path is only reached when the application parses that XML with REXML. The expected impact is reduced availability of the Ruby process, request worker, background job, or service handling the XML; confidentiality and integrity are not directly affected.
Why it matters to the business
Applications that accept XML from users, partners, APIs, file uploads, message queues, or webhooks may experience slowdowns, request timeouts, worker exhaustion, or temporary outages if malicious XML is processed. The risk is moderate because the CVSS score is 4.3, EPSS is low at approximately 1.5%, there is no CISA KEV listing, and no known public exploit maturity is reported; however, the issue has been public for a long time, so vulnerable dependencies should not remain in production. Legacy Ruby packages on unsupported platforms such as Ubuntu 14.04 are particularly concerning because they often lack broader security maintenance.
How an attack unfolds
An attacker first identifies an application feature that accepts XML input, such as an API endpoint, SAML or SOAP integration, import function, webhook receiver, uploaded file parser, or queued message processor. The attacker then submits XML crafted to trigger inefficient parsing behavior in vulnerable REXML versions, typically by including large or repetitive sequences of characters associated with the parser weakness. When the application parses the document, the Ruby process spends disproportionate resources handling the input. Repeated submissions can tie up request threads, application workers, or background jobs, causing latency, failed requests, queue backlog, health-check failures, or service degradation. The attacker does not gain code execution or data access from this flaw alone, but can use it to disrupt availability.
How to fix it
Upgrade REXML to version 3.3.2 or later wherever it is used to parse untrusted XML. If using the upstream ruby/rexml source, ensure the fix including commit 2b285ac0804f2918de642f7ed4646dc6d645a7fc is present. For Ubuntu 14.04 LTS packages, use ruby1.9.1 version 1.9.3.484-2ubuntu1.3 or later and ruby2.0 version 2.0.0.484-1ubuntu2.4 or later, though migrating off end-of-life operating systems and Ruby runtimes is strongly recommended. Rebuild and redeploy applications after dependency updates so the patched gem is actually loaded at runtime. Where immediate upgrade is not possible, avoid parsing untrusted XML, enforce strict request size limits, apply API rate limits, set parser and request timeouts, isolate XML processing workers, and reject unexpected XML content types at ingress.
How to confirm the fix worked
Confirm dependency resolution with package and build artifacts, such as Gemfile.lock, gem list, bundle info rexml, container SBOMs, and runtime dependency inventories, and verify REXML is 3.3.2 or later. For OS packages, verify installed package versions meet or exceed the fixed Ubuntu versions. Confirm deployed containers or hosts were rebuilt after the dependency change rather than only updating source manifests. Review application code paths for REXML::Document, REXML::Parsers, or libraries that indirectly parse XML with REXML. In a non-production environment, perform a controlled negative test using oversized or repetitive XML input and confirm the application rejects, times out safely, or handles the request without sustained CPU exhaustion. Validate compensating controls by checking request body limits, rate limits, XML content-type restrictions, and worker timeout settings.
Typical attack path
- Find an externally or internally reachable feature that accepts XML or XML-like payloads.
- Confirm the target application is Ruby-based or otherwise likely to use REXML for XML parsing.
- Send a crafted XML document containing high-volume, parser-stressing character patterns.
- Observe slow responses, timeouts, worker saturation, or increased CPU usage.
- Repeat or parallelize requests to exhaust available application capacity and cause denial of service.
How to detect it
To determine whether exploitation was attempted or successful, correlate application access logs, reverse proxy logs, WAF logs, APM traces, Ruby exception logs, background job logs, host CPU metrics, container restart events, and load balancer health-check failures. Look for bursts of requests or queued messages with XML content types, unusually large XML bodies, repetitive special-character patterns, or requests to XML-processing endpoints immediately preceding high CPU, request timeouts, 502/503/504 responses, worker restarts, or queue backlog. In Ruby logs, review stack traces or timeout events involving REXML parsing classes. Because this vulnerability does not produce a unique compromise artifact and does not provide code execution, detection is behavioral rather than based on a definitive file, process, or network IOC. Treat isolated parser errors as low confidence; confidence increases when they align with abnormal resource consumption and repeated XML submissions from the same source or campaign.
- REXML::ParseException
- REXML::Document
- REXML::Parsers
- Content-Type: application/xml
- Content-Type: text/xml
- Content-Type: application/soap+xml
- ActionController::RequestTimeout
- Rack::Timeout::RequestTimeoutException
- Net::ReadTimeout
- HTTP 504
- HTTP 503
- worker timeout
- killed by SIGKILL
- out of memory
What your security team should do
- Inventory Ruby applications and services that parse XML, prioritizing internet-facing APIs, file upload handlers, webhook receivers, SOAP/SAML integrations, and background job consumers.
- Upgrade REXML to 3.3.2 or later and redeploy affected applications; verify the patched version is loaded at runtime.
- Prioritize remediation for any service that accepts unauthenticated or partner-supplied XML, even though this vulnerability is not in CISA KEV and has low EPSS.
- Add or verify request body size limits, XML-specific validation, rate limiting, application worker timeouts, and queue processing safeguards.
- Search logs and telemetry for historical XML-triggered timeouts, CPU spikes, worker restarts, and bursts of 4xx/5xx responses that may indicate attempted denial-of-service activity.
- Plan migration away from end-of-life Ruby and Ubuntu releases, especially Ubuntu 14.04-era ruby1.9.1 and ruby2.0 packages.
- Add dependency scanning or SBOM policy checks to prevent reintroduction of vulnerable REXML versions.
The record
REXML is an XML toolkit for Ruby. 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 many be impacted to these vulnerabilities. The REXML gem 3.3.2 or later include the patches to fix these vulnerabilities. Users are advised to upgrade. Users unable to upgrade should avoid parsing untrusted XML strings.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| RubyGems | rexml | 0 | 3.3.3 |
| RubyGems | rexml | 0 | 3.2.7 |
| RubyGems | rexml | 0 | 3.3.2 |
| AlmaLinux:8 | ruby | 0 | 3.3.5-3.module_el8.10.0+3894+6d587c81 |
| AlmaLinux:8 | ruby-bundled-gems | 0 | 3.3.5-3.module_el8.10.0+3894+6d587c81 |
| AlmaLinux:8 | ruby-default-gems | 0 | 3.3.5-3.module_el8.10.0+3894+6d587c81 |
| AlmaLinux:8 | ruby-devel | 0 | 3.3.5-3.module_el8.10.0+3894+6d587c81 |
| AlmaLinux:8 | ruby-doc | 0 | 3.3.5-3.module_el8.10.0+3894+6d587c81 |
| AlmaLinux:8 | ruby-libs | 0 | 3.3.5-3.module_el8.10.0+3894+6d587c81 |
| AlmaLinux:8 | rubygem-abrt | 0 | 0.4.0-1.module_el8.10.0+3799+191214cc |
| AlmaLinux:8 | rubygem-abrt-doc | 0 | 0.4.0-1.module_el8.10.0+3799+191214cc |
| AlmaLinux:8 | rubygem-bigdecimal | 0 | 3.1.5-3.module_el8.10.0+3894+6d587c81 |
| AlmaLinux:8 | rubygem-bundler | 0 | 2.5.16-3.module_el8.10.0+3894+6d587c81 |
| AlmaLinux:8 | rubygem-io-console | 0 | 0.7.1-3.module_el8.10.0+3894+6d587c81 |
| AlmaLinux:8 | rubygem-irb | 0 | 1.13.1-3.module_el8.10.0+3894+6d587c81 |
| AlmaLinux:8 | rubygem-json | 0 | 2.7.1-3.module_el8.10.0+3894+6d587c81 |
| AlmaLinux:8 | rubygem-minitest | 0 | 5.20.0-3.module_el8.10.0+3894+6d587c81 |
| AlmaLinux:8 | rubygem-mysql2 | 0 | 0.5.5-1.module_el8.10.0+3799+191214cc |
| AlmaLinux:8 | rubygem-mysql2-doc | 0 | 0.5.5-1.module_el8.10.0+3799+191214cc |
| AlmaLinux:8 | rubygem-pg | 0 | 1.5.4-1.module_el8.10.0+3799+191214cc |
| AlmaLinux:8 | rubygem-pg-doc | 0 | 1.5.4-1.module_el8.10.0+3799+191214cc |
| AlmaLinux:8 | rubygem-power_assert | 0 | 2.0.3-3.module_el8.10.0+3894+6d587c81 |
| AlmaLinux:8 | rubygem-psych | 0 | 5.1.2-3.module_el8.10.0+3894+6d587c81 |
| AlmaLinux:8 | rubygem-racc | 0 | 1.7.3-3.module_el8.10.0+3894+6d587c81 |
| AlmaLinux:8 | rubygem-rake | 0 | 13.1.0-3.module_el8.10.0+3894+6d587c81 |
| AlmaLinux:8 | rubygem-rbs | 0 | 3.4.0-3.module_el8.10.0+3894+6d587c81 |
| AlmaLinux:8 | rubygem-rdoc | 0 | 6.6.3.1-3.module_el8.10.0+3894+6d587c81 |
| AlmaLinux:8 | rubygem-rexml | 0 | 3.3.6-3.module_el8.10.0+3894+6d587c81 |
| AlmaLinux:8 | rubygem-rss | 0 | 0.3.1-3.module_el8.10.0+3894+6d587c81 |
| AlmaLinux:8 | rubygem-test-unit | 0 | 3.6.1-3.module_el8.10.0+3894+6d587c81 |
| AlmaLinux:8 | rubygem-typeprof | 0 | 0.21.9-3.module_el8.10.0+3894+6d587c81 |
| AlmaLinux:8 | rubygems | 0 | 3.5.16-3.module_el8.10.0+3894+6d587c81 |
| AlmaLinux:8 | rubygems-devel | 0 | 3.5.16-3.module_el8.10.0+3894+6d587c81 |
| AlmaLinux:9 | ruby | 0 | 3.3.5-3.module_el9.4.0+115+226a984b |
| AlmaLinux:9 | ruby-bundled-gems | 0 | 3.3.5-3.module_el9.4.0+115+226a984b |
| AlmaLinux:9 | ruby-default-gems | 0 | 3.3.5-3.module_el9.4.0+115+226a984b |
| AlmaLinux:9 | ruby-devel | 0 | 3.3.5-3.module_el9.4.0+115+226a984b |
| AlmaLinux:9 | ruby-doc | 0 | 3.3.5-3.module_el9.4.0+115+226a984b |
| AlmaLinux:9 | ruby-libs | 0 | 3.3.5-3.module_el9.4.0+115+226a984b |
| AlmaLinux:9 | rubygem-bigdecimal | 0 | 3.1.5-3.module_el9.4.0+115+226a984b |
| AlmaLinux:9 | rubygem-bundler | 0 | 2.5.16-3.module_el9.4.0+115+226a984b |
| AlmaLinux:9 | rubygem-io-console | 0 | 0.7.1-3.module_el9.4.0+115+226a984b |
| AlmaLinux:9 | rubygem-irb | 0 | 1.13.1-3.module_el9.4.0+115+226a984b |
| AlmaLinux:9 | rubygem-json | 0 | 2.7.1-3.module_el9.4.0+115+226a984b |
| AlmaLinux:9 | rubygem-minitest | 0 | 5.20.0-3.module_el9.4.0+115+226a984b |
| AlmaLinux:9 | rubygem-mysql2 | 0 | 0.5.5-1.module_el9.4.0+75+1a8fe981 |
| AlmaLinux:9 | rubygem-mysql2 | 0 | 0.5.4-1.module_el9.1.0+8+503f6fbd |
| AlmaLinux:9 | rubygem-mysql2-doc | 0 | 0.5.5-1.module_el9.4.0+75+1a8fe981 |
| AlmaLinux:9 | rubygem-mysql2-doc | 0 | 0.5.4-1.module_el9.1.0+8+503f6fbd |
| AlmaLinux:9 | rubygem-pg | 0 | 1.5.4-1.module_el9.4.0+75+1a8fe981 |
| AlmaLinux:9 | rubygem-pg | 0 | 1.3.5-1.module_el9.1.0+8+503f6fbd |
| AlmaLinux:9 | rubygem-pg-doc | 0 | 1.5.4-1.module_el9.4.0+75+1a8fe981 |
| AlmaLinux:9 | rubygem-pg-doc | 0 | 1.3.5-1.module_el9.1.0+8+503f6fbd |
| AlmaLinux:9 | rubygem-power_assert | 0 | 2.0.3-3.module_el9.4.0+115+226a984b |
| AlmaLinux:9 | rubygem-psych | 0 | 5.1.2-3.module_el9.4.0+115+226a984b |
| AlmaLinux:9 | rubygem-racc | 0 | 1.7.3-3.module_el9.4.0+115+226a984b |
| AlmaLinux:9 | rubygem-rake | 0 | 13.1.0-3.module_el9.4.0+115+226a984b |
| AlmaLinux:9 | rubygem-rbs | 0 | 3.4.0-3.module_el9.4.0+115+226a984b |
| AlmaLinux:9 | rubygem-rdoc | 0 | 6.6.3.1-3.module_el9.4.0+115+226a984b |
| AlmaLinux:9 | rubygem-rexml | 0 | 3.3.6-3.module_el9.4.0+115+226a984b |
| AlmaLinux:9 | rubygem-rss | 0 | 0.3.1-3.module_el9.4.0+115+226a984b |
| AlmaLinux:9 | rubygem-test-unit | 0 | 3.6.1-3.module_el9.4.0+115+226a984b |
| AlmaLinux:9 | rubygem-typeprof | 0 | 0.21.9-3.module_el9.4.0+115+226a984b |
| AlmaLinux:9 | rubygems | 0 | 3.5.16-3.module_el9.4.0+115+226a984b |
| AlmaLinux:9 | rubygems-devel | 0 | 3.5.16-3.module_el9.4.0+115+226a984b |
| Alpine:v3.19 | ruby-rexml | 0 | 3.3.9-r0 |
| Alpine:v3.20 | ruby-rexml | 0 | 3.3.9-r0 |
| Alpine:v3.21 | ruby-rexml | 0 | 3.3.9-r0 |
| Alpine:v3.22 | ruby-rexml | 0 | 3.3.9-r0 |
| Chainguard | graalvm-23 | 0 | 23.0.2-r7 |
| Chainguard | graalvm-23-ce | 0 | 23.0.2-r7 |
| Chainguard | graalvm-23-ce-dbg | 0 | 23.0.2-r7 |
| Chainguard | graalvm-23-ce-default-jdk | 0 | 23.0.2-r7 |
| Chainguard | graalvm-23-ce-jmods | 0 | 23.0.2-r7 |
| Chainguard | graalvm-23-ce-nodejs | 0 | 23.0.2-r7 |
| Chainguard | graalvm-23-ce-nodejs-dbg | 0 | 23.0.2-r7 |
| Chainguard | graalvm-23-ce-nodejs-default-jdk | 0 | 23.0.2-r7 |
| Chainguard | graalvm-23-ce-nodejs-jmods | 0 | 23.0.2-r7 |
| Chainguard | graalvm-23-graalpy | 0 | 23.0.2-r7 |
| Chainguard | graalvm-23-graalpy-venv | 0 | 23.0.2-r7 |
| Chainguard | jruby-9.4 | 0 | 9.4.9.0-r0 |
| Chainguard | jruby-9.4-default-ruby | 0 | 9.4.9.0-r0 |
| Chainguard | kube-fluentd-operator | 0 | 1.18.2-r13 |
| Chainguard | kube-fluentd-operator-compat | 0 | 1.18.2-r13 |
| Chainguard | kube-fluentd-operator-default-config | 0 | 1.18.2-r13 |
| Chainguard | kube-fluentd-operator-oci-entrypoint | 0 | 1.18.2-r13 |
| Chainguard | logstash | 0 | 8.15.0-r0 |
| Chainguard | logstash-compat | 0 | 8.15.0-r0 |
| Chainguard | logstash-env2yaml | 0 | 8.15.0-r0 |
| Chainguard | logstash-jre-bcfips | 0 | 8.15.0-r0 |
| Chainguard | logstash-jre-bcfips-compat | 0 | 8.15.0-r0 |
| Chainguard | logstash-jre-bcfips-env2yaml | 0 | 8.15.0-r0 |
| Chainguard | logstash-jre-bcfips-with-output-opensearch | 0 | 8.15.0-r0 |
| Chainguard | logstash-with-output-opensearch | 0 | 8.15.0-r0 |
| Chainguard | ruby-3.1 | 0 | 3.1.6-r2 |
| Chainguard | ruby-3.1-base | 0 | 3.1.6-r2 |
| Chainguard | ruby-3.1-base-dev | 0 | 3.1.6-r2 |
| Chainguard | ruby-3.1-dev | 0 | 3.1.6-r2 |
| Chainguard | ruby-3.1-doc | 0 | 3.1.6-r2 |
| Chainguard | ruby-3.2 | 0 | 3.2.4-r6 |
| Chainguard | ruby-3.2-base | 0 | 3.2.4-r6 |
| Chainguard | ruby-3.2-base-dev | 0 | 3.2.4-r6 |
| Chainguard | ruby-3.2-dev | 0 | 3.2.4-r6 |
| Chainguard | ruby-3.2-doc | 0 | 3.2.4-r6 |
| Chainguard | ruby-3.3 | 0 | 3.3.4-r1 |
| Chainguard | ruby-3.3-base | 0 | 3.3.4-r1 |
| Chainguard | ruby-3.3-base-dev | 0 | 3.3.4-r1 |
| Chainguard | ruby-3.3-dev | 0 | 3.3.4-r1 |
| Chainguard | ruby-3.3-doc | 0 | 3.3.4-r1 |
| Chainguard | ruby3.1-fluentd-kubernetes-daemonset-1.16 | 0 | 1.16.6.1.2-r1 |
| Chainguard | ruby3.1-fluentd-kubernetes-daemonset-1.16-kinesis | 0 | 1.16.6.1.2-r1 |
| Chainguard | ruby3.1-fluentd-kubernetes-daemonset-1.17 | 0 | 1.17.1.1.2-r1 |
| Chainguard | ruby3.1-fluentd-kubernetes-daemonset-1.17 | 0 | 1.17.1.1.2-r2 |
| Chainguard | ruby3.1-fluentd-kubernetes-daemonset-1.17-kinesis | 0 | 1.17.1.1.2-r1 |
| Chainguard | ruby3.1-fluentd-kubernetes-daemonset-1.17-kinesis | 0 | 1.17.1.1.2-r2 |
| Chainguard | ruby3.2-fluentd-kubernetes-daemonset-1.16 | 0 | 1.16.6.1.2-r2 |
| Chainguard | ruby3.2-fluentd-kubernetes-daemonset-1.16-kinesis | 0 | 1.16.6.1.2-r2 |
| Chainguard | ruby3.2-fluentd-kubernetes-daemonset-1.17 | 0 | 1.17.1.1.2-r1 |
| Chainguard | ruby3.2-fluentd-kubernetes-daemonset-1.17-kinesis | 0 | 1.17.1.1.2-r1 |
| Chainguard | ruby3.2-rexml | 0 | 3.3.2-r0 |
| Chainguard | ruby3.3-fluentd-kubernetes-daemonset-1.16 | 0 | 1.16.6.1.2-r2 |
| Chainguard | ruby3.3-fluentd-kubernetes-daemonset-1.16-kinesis | 0 | 1.16.6.1.2-r2 |
| Chainguard | ruby3.3-fluentd-kubernetes-daemonset-1.17 | 0 | 1.17.1.1.2-r1 |
| Chainguard | ruby3.3-fluentd-kubernetes-daemonset-1.17 | 0 | 1.17.1.1.2-r2 |
| Chainguard | ruby3.3-fluentd-kubernetes-daemonset-1.17 | 0 | 1.17.1.1.2-r7 |
| Chainguard | ruby3.3-fluentd-kubernetes-daemonset-1.17-kinesis | 0 | 1.17.1.1.2-r1 |
| Chainguard | ruby3.3-fluentd-kubernetes-daemonset-1.17-kinesis | 0 | 1.17.1.1.2-r2 |
| Chainguard | ruby3.3-fluentd-kubernetes-daemonset-1.17-kinesis | 0 | 1.17.1.1.2-r7 |
| Chainguard | ruby3.4-fluentd-kubernetes-daemonset-1.16 | 0 | 1.16.6.1.2-r2 |
| Chainguard | ruby3.4-fluentd-kubernetes-daemonset-1.16-kinesis | 0 | 1.16.6.1.2-r2 |
| Chainguard | ruby3.4-fluentd-kubernetes-daemonset-1.17 | 0 | 1.17.1.1.2-r2 |
| Chainguard | ruby3.4-fluentd-kubernetes-daemonset-1.17-kinesis | 0 | 1.17.1.1.2-r2 |
| Debian:11 | ruby2.7 | 0 | No fix |
| Debian:11 | ruby2.7 | 0 | 2.7.4-1+deb11u3 |
| Debian:12 | ruby3.1 | 0 | No fix |
| Debian:13 | ruby3.1 | 0 | No fix |
| Debian:13 | ruby3.3 | 0 | 3.3.5-1 |
| Debian:14 | ruby3.3 | 0 | 3.3.5-1 |
| Mageia:9 | ruby | 0 | 3.1.5-46.mga9 |
| Red Hat:enterprise_linux:8::appstream | ruby | 0 | 0:3.3.5-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | ruby-bundled-gems | 0 | 0:3.3.5-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | ruby-bundled-gems-debuginfo | 0 | 0:3.3.5-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | ruby-debuginfo | 0 | 0:3.3.5-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | ruby-debugsource | 0 | 0:3.3.5-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | ruby-default-gems | 0 | 0:3.3.5-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | ruby-devel | 0 | 0:3.3.5-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | ruby-doc | 0 | 0:3.3.5-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | ruby-libs | 0 | 0:3.3.5-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | ruby-libs-debuginfo | 0 | 0:3.3.5-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | rubygem-abrt | 0 | 0:0.4.0-1.module+el8.10.0+21226+b78a28c4 |
| Red Hat:enterprise_linux:8::appstream | rubygem-abrt-doc | 0 | 0:0.4.0-1.module+el8.10.0+21226+b78a28c4 |
| Red Hat:enterprise_linux:8::appstream | rubygem-bigdecimal | 0 | 0:3.1.5-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | rubygem-bigdecimal-debuginfo | 0 | 0:3.1.5-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | rubygem-bundler | 0 | 0:2.5.16-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | rubygem-io-console | 0 | 0:0.7.1-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | rubygem-io-console-debuginfo | 0 | 0:0.7.1-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | rubygem-irb | 0 | 0:1.13.1-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | rubygem-json | 0 | 0:2.7.1-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | rubygem-json-debuginfo | 0 | 0:2.7.1-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | rubygem-minitest | 0 | 0:5.20.0-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | rubygem-mysql2 | 0 | 0:0.5.5-1.module+el8.10.0+21226+b78a28c4 |
| Red Hat:enterprise_linux:8::appstream | rubygem-mysql2-debuginfo | 0 | 0:0.5.5-1.module+el8.10.0+21226+b78a28c4 |
| Red Hat:enterprise_linux:8::appstream | rubygem-mysql2-debugsource | 0 | 0:0.5.5-1.module+el8.10.0+21226+b78a28c4 |
| Red Hat:enterprise_linux:8::appstream | rubygem-mysql2-doc | 0 | 0:0.5.5-1.module+el8.10.0+21226+b78a28c4 |
| Red Hat:enterprise_linux:8::appstream | rubygem-pg | 0 | 0:1.5.4-1.module+el8.10.0+21226+b78a28c4 |
| Red Hat:enterprise_linux:8::appstream | rubygem-pg-debuginfo | 0 | 0:1.5.4-1.module+el8.10.0+21226+b78a28c4 |
| Red Hat:enterprise_linux:8::appstream | rubygem-pg-debugsource | 0 | 0:1.5.4-1.module+el8.10.0+21226+b78a28c4 |
| Red Hat:enterprise_linux:8::appstream | rubygem-pg-doc | 0 | 0:1.5.4-1.module+el8.10.0+21226+b78a28c4 |
| Red Hat:enterprise_linux:8::appstream | rubygem-power_assert | 0 | 0:2.0.3-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | rubygem-psych | 0 | 0:5.1.2-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | rubygem-psych-debuginfo | 0 | 0:5.1.2-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | rubygem-racc | 0 | 0:1.7.3-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | rubygem-racc-debuginfo | 0 | 0:1.7.3-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | rubygem-rake | 0 | 0:13.1.0-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | rubygem-rbs | 0 | 0:3.4.0-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | rubygem-rbs-debuginfo | 0 | 0:3.4.0-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | rubygem-rdoc | 0 | 0:6.6.3.1-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | rubygem-rexml | 0 | 0:3.3.6-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | rubygem-rss | 0 | 0:0.3.1-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | rubygem-test-unit | 0 | 0:3.6.1-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | rubygem-typeprof | 0 | 0:0.21.9-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | rubygems | 0 | 0:3.5.16-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:8::appstream | rubygems-devel | 0 | 0:3.5.16-3.module+el8.10.0+22271+6a48b0b9 |
| Red Hat:enterprise_linux:9::appstream | ruby | 0 | 0:3.3.5-3.module+el9.4.0+22273+463af10f |
| Red Hat:enterprise_linux:9::appstream | ruby-bundled-gems | 0 | 0:3.3.5-3.module+el9.4.0+22273+463af10f |
| Red Hat:enterprise_linux:9::appstream | ruby-bundled-gems-debuginfo | 0 | 0:3.3.5-3.module+el9.4.0+22273+463af10f |
| Red Hat:enterprise_linux:9::appstream | ruby-debuginfo | 0 | 0:3.3.5-3.module+el9.4.0+22273+463af10f |
| Red Hat:enterprise_linux:9::appstream | ruby-debugsource | 0 | 0:3.3.5-3.module+el9.4.0+22273+463af10f |
| Red Hat:enterprise_linux:9::appstream | ruby-default-gems | 0 | 0:3.3.5-3.module+el9.4.0+22273+463af10f |
| Red Hat:enterprise_linux:9::appstream | ruby-devel | 0 | 0:3.3.5-3.module+el9.4.0+22273+463af10f |
| Red Hat:enterprise_linux:9::appstream | ruby-doc | 0 | 0:3.3.5-3.module+el9.4.0+22273+463af10f |
| Red Hat:enterprise_linux:9::appstream | ruby-libs | 0 | 0:3.3.5-3.module+el9.4.0+22273+463af10f |
| Red Hat:enterprise_linux:9::appstream | ruby-libs-debuginfo | 0 | 0:3.3.5-3.module+el9.4.0+22273+463af10f |
| Red Hat:enterprise_linux:9::appstream | rubygem-bigdecimal | 0 | 0:3.1.5-3.module+el9.4.0+22273+463af10f |
| Red Hat:enterprise_linux:9::appstream | rubygem-bigdecimal-debuginfo | 0 | 0:3.1.5-3.module+el9.4.0+22273+463af10f |
| Red Hat:enterprise_linux:9::appstream | rubygem-bundler | 0 | 0:2.5.16-3.module+el9.4.0+22273+463af10f |
| Red Hat:enterprise_linux:9::appstream | rubygem-io-console | 0 | 0:0.7.1-3.module+el9.4.0+22273+463af10f |
| Red Hat:enterprise_linux:9::appstream | rubygem-io-console-debuginfo | 0 | 0:0.7.1-3.module+el9.4.0+22273+463af10f |
| Red Hat:enterprise_linux:9::appstream | rubygem-irb | 0 | 0:1.13.1-3.module+el9.4.0+22273+463af10f |
| Red Hat:enterprise_linux:9::appstream | rubygem-json | 0 | 0:2.7.1-3.module+el9.4.0+22273+463af10f |
Related vulnerabilities
- CVE-2024-41123 REXML is an XML toolkit for Ruby. Same vulnerability
- CVE-2025-58767 REXML is an XML toolkit for Ruby. Also affects rexml
- CVE-2024-49761 REXML is an XML toolkit for Ruby. Also affects rexml
- CVE-2024-41946 REXML is an XML toolkit for Ruby. Also affects rexml
- CVE-2025-27221 In the URI gem before 1.0.3 for Ruby, the URI handling methods (URI.join, URI#merge… Also affects ruby
- CVE-2025-25186 Net::IMAP implements Internet Message Access Protocol (IMAP) client functionality in Ruby. Also affects ruby
- CVE-2024-27281 An issue was discovered in RDoc 6.3.3 through 6.6.2, as distributed in Ruby 3.x through… Also affects ruby
- CVE-2024-27282 An issue was discovered in Ruby 3.x through 3.3.0. Also affects ruby