oesa-2024-2114
Vulnerability from osv_openeuler
Ruby is a fast and easy interpreted scripting language for object-oriented programming. It has many functions for processing text Files and perform system management tasks (such as Perl).
Security Fix(es):
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.(CVE-2024-39908)
REXML is an XML toolkit for Ruby. The REXML gem before 3.3.2 has some DoS vulnerabilities when it parses an XML that has many specific characters such as whitespace character, >] and ]>. The REXML gem 3.3.3 or later include the patches to fix these vulnerabilities.(CVE-2024-41123)
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.(CVE-2024-43398)
| URL | Type | |
|---|---|---|
{
"affected": [
{
"ecosystem_specific": {
"aarch64": [
"ruby-3.0.3-139.oe2203sp1.aarch64.rpm",
"ruby-debuginfo-3.0.3-139.oe2203sp1.aarch64.rpm",
"ruby-debugsource-3.0.3-139.oe2203sp1.aarch64.rpm",
"ruby-devel-3.0.3-139.oe2203sp1.aarch64.rpm",
"rubygem-bigdecimal-3.0.0-139.oe2203sp1.aarch64.rpm",
"rubygem-io-console-0.5.7-139.oe2203sp1.aarch64.rpm",
"rubygem-json-2.5.1-139.oe2203sp1.aarch64.rpm",
"rubygem-openssl-2.2.1-139.oe2203sp1.aarch64.rpm",
"rubygem-psych-3.3.2-139.oe2203sp1.aarch64.rpm"
],
"noarch": [
"ruby-help-3.0.3-139.oe2203sp1.noarch.rpm",
"ruby-irb-3.0.3-139.oe2203sp1.noarch.rpm",
"rubygem-bundler-2.2.32-139.oe2203sp1.noarch.rpm",
"rubygem-did_you_mean-1.5.0-139.oe2203sp1.noarch.rpm",
"rubygem-minitest-5.14.2-139.oe2203sp1.noarch.rpm",
"rubygem-rake-13.0.3-139.oe2203sp1.noarch.rpm",
"rubygem-rbs-1.4.0-139.oe2203sp1.noarch.rpm",
"rubygem-rdoc-6.3.3-139.oe2203sp1.noarch.rpm",
"rubygem-rexml-3.2.5-139.oe2203sp1.noarch.rpm",
"rubygem-rss-0.2.9-139.oe2203sp1.noarch.rpm",
"rubygem-test-unit-3.3.7-139.oe2203sp1.noarch.rpm",
"rubygem-typeprof-0.15.2-139.oe2203sp1.noarch.rpm",
"rubygems-3.2.32-139.oe2203sp1.noarch.rpm",
"rubygems-devel-3.2.32-139.oe2203sp1.noarch.rpm"
],
"src": [
"ruby-3.0.3-139.oe2203sp1.src.rpm"
],
"x86_64": [
"ruby-3.0.3-139.oe2203sp1.x86_64.rpm",
"ruby-debuginfo-3.0.3-139.oe2203sp1.x86_64.rpm",
"ruby-debugsource-3.0.3-139.oe2203sp1.x86_64.rpm",
"ruby-devel-3.0.3-139.oe2203sp1.x86_64.rpm",
"rubygem-bigdecimal-3.0.0-139.oe2203sp1.x86_64.rpm",
"rubygem-io-console-0.5.7-139.oe2203sp1.x86_64.rpm",
"rubygem-json-2.5.1-139.oe2203sp1.x86_64.rpm",
"rubygem-openssl-2.2.1-139.oe2203sp1.x86_64.rpm",
"rubygem-psych-3.3.2-139.oe2203sp1.x86_64.rpm"
]
},
"package": {
"ecosystem": "openEuler:22.03-LTS-SP1",
"name": "ruby",
"purl": "pkg:rpm/openEuler/ruby\u0026distro=openEuler-22.03-LTS-SP1"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "3.0.3-139.oe2203sp1"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"ecosystem_specific": {
"aarch64": [
"ruby-3.2.2-145.oe2403.aarch64.rpm",
"ruby-bundled-gems-3.2.2-145.oe2403.aarch64.rpm",
"ruby-debuginfo-3.2.2-145.oe2403.aarch64.rpm",
"ruby-debugsource-3.2.2-145.oe2403.aarch64.rpm",
"ruby-devel-3.2.2-145.oe2403.aarch64.rpm",
"rubygem-bigdecimal-3.1.3-145.oe2403.aarch64.rpm",
"rubygem-io-console-0.6.0-145.oe2403.aarch64.rpm",
"rubygem-json-2.6.3-145.oe2403.aarch64.rpm",
"rubygem-openssl-3.1.0-145.oe2403.aarch64.rpm",
"rubygem-psych-5.0.1-145.oe2403.aarch64.rpm",
"rubygem-rbs-2.8.2-145.oe2403.aarch64.rpm"
],
"noarch": [
"ruby-help-3.2.2-145.oe2403.noarch.rpm",
"ruby-irb-3.2.2-145.oe2403.noarch.rpm",
"rubygem-did_you_mean-1.6.3-145.oe2403.noarch.rpm",
"rubygem-minitest-5.16.3-145.oe2403.noarch.rpm",
"rubygem-rake-13.0.6-145.oe2403.noarch.rpm",
"rubygem-rdoc-6.5.0-145.oe2403.noarch.rpm",
"rubygem-rexml-3.2.5-145.oe2403.noarch.rpm",
"rubygem-rss-0.2.9-145.oe2403.noarch.rpm",
"rubygem-test-unit-3.5.7-145.oe2403.noarch.rpm",
"rubygem-typeprof-0.21.3-145.oe2403.noarch.rpm",
"rubygems-3.4.10-145.oe2403.noarch.rpm",
"rubygems-devel-3.4.10-145.oe2403.noarch.rpm"
],
"src": [
"ruby-3.2.2-145.oe2403.src.rpm"
],
"x86_64": [
"ruby-3.2.2-145.oe2403.x86_64.rpm",
"ruby-bundled-gems-3.2.2-145.oe2403.x86_64.rpm",
"ruby-debuginfo-3.2.2-145.oe2403.x86_64.rpm",
"ruby-debugsource-3.2.2-145.oe2403.x86_64.rpm",
"ruby-devel-3.2.2-145.oe2403.x86_64.rpm",
"rubygem-bigdecimal-3.1.3-145.oe2403.x86_64.rpm",
"rubygem-io-console-0.6.0-145.oe2403.x86_64.rpm",
"rubygem-json-2.6.3-145.oe2403.x86_64.rpm",
"rubygem-openssl-3.1.0-145.oe2403.x86_64.rpm",
"rubygem-psych-5.0.1-145.oe2403.x86_64.rpm",
"rubygem-rbs-2.8.2-145.oe2403.x86_64.rpm"
]
},
"package": {
"ecosystem": "openEuler:24.03-LTS",
"name": "ruby",
"purl": "pkg:rpm/openEuler/ruby\u0026distro=openEuler-24.03-LTS"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "3.2.2-145.oe2403"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"ecosystem_specific": {
"aarch64": [
"ruby-3.0.3-139.oe2203sp4.aarch64.rpm",
"ruby-debuginfo-3.0.3-139.oe2203sp4.aarch64.rpm",
"ruby-debugsource-3.0.3-139.oe2203sp4.aarch64.rpm",
"ruby-devel-3.0.3-139.oe2203sp4.aarch64.rpm",
"rubygem-bigdecimal-3.0.0-139.oe2203sp4.aarch64.rpm",
"rubygem-io-console-0.5.7-139.oe2203sp4.aarch64.rpm",
"rubygem-json-2.5.1-139.oe2203sp4.aarch64.rpm",
"rubygem-openssl-2.2.1-139.oe2203sp4.aarch64.rpm",
"rubygem-psych-3.3.2-139.oe2203sp4.aarch64.rpm"
],
"noarch": [
"ruby-help-3.0.3-139.oe2203sp4.noarch.rpm",
"ruby-irb-3.0.3-139.oe2203sp4.noarch.rpm",
"rubygem-bundler-2.2.32-139.oe2203sp4.noarch.rpm",
"rubygem-did_you_mean-1.5.0-139.oe2203sp4.noarch.rpm",
"rubygem-minitest-5.14.2-139.oe2203sp4.noarch.rpm",
"rubygem-rake-13.0.3-139.oe2203sp4.noarch.rpm",
"rubygem-rbs-1.4.0-139.oe2203sp4.noarch.rpm",
"rubygem-rdoc-6.3.3-139.oe2203sp4.noarch.rpm",
"rubygem-rexml-3.2.5-139.oe2203sp4.noarch.rpm",
"rubygem-rss-0.2.9-139.oe2203sp4.noarch.rpm",
"rubygem-test-unit-3.3.7-139.oe2203sp4.noarch.rpm",
"rubygem-typeprof-0.15.2-139.oe2203sp4.noarch.rpm",
"rubygems-3.2.32-139.oe2203sp4.noarch.rpm",
"rubygems-devel-3.2.32-139.oe2203sp4.noarch.rpm"
],
"src": [
"ruby-3.0.3-139.oe2203sp4.src.rpm"
],
"x86_64": [
"ruby-3.0.3-139.oe2203sp4.x86_64.rpm",
"ruby-debuginfo-3.0.3-139.oe2203sp4.x86_64.rpm",
"ruby-debugsource-3.0.3-139.oe2203sp4.x86_64.rpm",
"ruby-devel-3.0.3-139.oe2203sp4.x86_64.rpm",
"rubygem-bigdecimal-3.0.0-139.oe2203sp4.x86_64.rpm",
"rubygem-io-console-0.5.7-139.oe2203sp4.x86_64.rpm",
"rubygem-json-2.5.1-139.oe2203sp4.x86_64.rpm",
"rubygem-openssl-2.2.1-139.oe2203sp4.x86_64.rpm",
"rubygem-psych-3.3.2-139.oe2203sp4.x86_64.rpm"
]
},
"package": {
"ecosystem": "openEuler:22.03-LTS-SP4",
"name": "ruby",
"purl": "pkg:rpm/openEuler/ruby\u0026distro=openEuler-22.03-LTS-SP4"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "3.0.3-139.oe2203sp4"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"ecosystem_specific": {
"aarch64": [
"ruby-3.0.3-139.oe2203sp3.aarch64.rpm",
"ruby-debuginfo-3.0.3-139.oe2203sp3.aarch64.rpm",
"ruby-debugsource-3.0.3-139.oe2203sp3.aarch64.rpm",
"ruby-devel-3.0.3-139.oe2203sp3.aarch64.rpm",
"rubygem-bigdecimal-3.0.0-139.oe2203sp3.aarch64.rpm",
"rubygem-io-console-0.5.7-139.oe2203sp3.aarch64.rpm",
"rubygem-json-2.5.1-139.oe2203sp3.aarch64.rpm",
"rubygem-openssl-2.2.1-139.oe2203sp3.aarch64.rpm",
"rubygem-psych-3.3.2-139.oe2203sp3.aarch64.rpm"
],
"noarch": [
"ruby-help-3.0.3-139.oe2203sp3.noarch.rpm",
"ruby-irb-3.0.3-139.oe2203sp3.noarch.rpm",
"rubygem-bundler-2.2.32-139.oe2203sp3.noarch.rpm",
"rubygem-did_you_mean-1.5.0-139.oe2203sp3.noarch.rpm",
"rubygem-minitest-5.14.2-139.oe2203sp3.noarch.rpm",
"rubygem-rake-13.0.3-139.oe2203sp3.noarch.rpm",
"rubygem-rbs-1.4.0-139.oe2203sp3.noarch.rpm",
"rubygem-rdoc-6.3.3-139.oe2203sp3.noarch.rpm",
"rubygem-rexml-3.2.5-139.oe2203sp3.noarch.rpm",
"rubygem-rss-0.2.9-139.oe2203sp3.noarch.rpm",
"rubygem-test-unit-3.3.7-139.oe2203sp3.noarch.rpm",
"rubygem-typeprof-0.15.2-139.oe2203sp3.noarch.rpm",
"rubygems-3.2.32-139.oe2203sp3.noarch.rpm",
"rubygems-devel-3.2.32-139.oe2203sp3.noarch.rpm"
],
"src": [
"ruby-3.0.3-139.oe2203sp3.src.rpm"
],
"x86_64": [
"ruby-3.0.3-139.oe2203sp3.x86_64.rpm",
"ruby-debuginfo-3.0.3-139.oe2203sp3.x86_64.rpm",
"ruby-debugsource-3.0.3-139.oe2203sp3.x86_64.rpm",
"ruby-devel-3.0.3-139.oe2203sp3.x86_64.rpm",
"rubygem-bigdecimal-3.0.0-139.oe2203sp3.x86_64.rpm",
"rubygem-io-console-0.5.7-139.oe2203sp3.x86_64.rpm",
"rubygem-json-2.5.1-139.oe2203sp3.x86_64.rpm",
"rubygem-openssl-2.2.1-139.oe2203sp3.x86_64.rpm",
"rubygem-psych-3.3.2-139.oe2203sp3.x86_64.rpm"
]
},
"package": {
"ecosystem": "openEuler:22.03-LTS-SP3",
"name": "ruby",
"purl": "pkg:rpm/openEuler/ruby\u0026distro=openEuler-22.03-LTS-SP3"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "3.0.3-139.oe2203sp3"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"ecosystem_specific": {
"aarch64": [
"ruby-2.5.8-129.oe2003sp4.aarch64.rpm",
"ruby-debuginfo-2.5.8-129.oe2003sp4.aarch64.rpm",
"ruby-debugsource-2.5.8-129.oe2003sp4.aarch64.rpm",
"ruby-devel-2.5.8-129.oe2003sp4.aarch64.rpm",
"rubygem-bigdecimal-1.3.4-129.oe2003sp4.aarch64.rpm",
"rubygem-io-console-0.4.6-129.oe2003sp4.aarch64.rpm",
"rubygem-json-2.1.0-129.oe2003sp4.aarch64.rpm",
"rubygem-openssl-2.1.2-129.oe2003sp4.aarch64.rpm",
"rubygem-psych-3.0.2-129.oe2003sp4.aarch64.rpm"
],
"noarch": [
"ruby-help-2.5.8-129.oe2003sp4.noarch.rpm",
"ruby-irb-2.5.8-129.oe2003sp4.noarch.rpm",
"rubygem-did_you_mean-1.2.0-129.oe2003sp4.noarch.rpm",
"rubygem-minitest-5.10.3-129.oe2003sp4.noarch.rpm",
"rubygem-net-telnet-0.1.1-129.oe2003sp4.noarch.rpm",
"rubygem-power_assert-1.1.1-129.oe2003sp4.noarch.rpm",
"rubygem-rake-12.3.0-129.oe2003sp4.noarch.rpm",
"rubygem-rdoc-6.0.1.1-129.oe2003sp4.noarch.rpm",
"rubygem-test-unit-3.2.7-129.oe2003sp4.noarch.rpm",
"rubygem-xmlrpc-0.3.0-129.oe2003sp4.noarch.rpm",
"rubygems-2.7.6-129.oe2003sp4.noarch.rpm",
"rubygems-devel-2.7.6-129.oe2003sp4.noarch.rpm"
],
"src": [
"ruby-2.5.8-129.oe2003sp4.src.rpm"
],
"x86_64": [
"ruby-2.5.8-129.oe2003sp4.x86_64.rpm",
"ruby-debuginfo-2.5.8-129.oe2003sp4.x86_64.rpm",
"ruby-debugsource-2.5.8-129.oe2003sp4.x86_64.rpm",
"ruby-devel-2.5.8-129.oe2003sp4.x86_64.rpm",
"rubygem-bigdecimal-1.3.4-129.oe2003sp4.x86_64.rpm",
"rubygem-io-console-0.4.6-129.oe2003sp4.x86_64.rpm",
"rubygem-json-2.1.0-129.oe2003sp4.x86_64.rpm",
"rubygem-openssl-2.1.2-129.oe2003sp4.x86_64.rpm",
"rubygem-psych-3.0.2-129.oe2003sp4.x86_64.rpm"
]
},
"package": {
"ecosystem": "openEuler:20.03-LTS-SP4",
"name": "ruby",
"purl": "pkg:rpm/openEuler/ruby\u0026distro=openEuler-20.03-LTS-SP4"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "2.5.8-129.oe2003sp4"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"database_specific": {
"severity": "Medium"
},
"details": "Ruby is a fast and easy interpreted scripting language for object-oriented programming. It has many functions for processing text Files and perform system management tasks (such as Perl).\n\nSecurity Fix(es):\n\n 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 `\u0026lt;`, `0` and `%\u0026gt;`. 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.(CVE-2024-39908)\n\nREXML is an XML toolkit for Ruby. The REXML gem before 3.3.2 has some DoS vulnerabilities when it parses an XML that has many specific characters such as whitespace character, `\u0026gt;]` and `]\u0026gt;`. The REXML gem 3.3.3 or later include the patches to fix these vulnerabilities.(CVE-2024-41123)\n\nREXML 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.(CVE-2024-43398)",
"id": "OESA-2024-2114",
"modified": "2026-08-06T11:07:35Z",
"published": "2024-09-06T11:07:35Z",
"references": [
{
"type": "ADVISORY",
"url": "https://www.openeuler.org/zh/security/security-bulletins/detail/?id=openEuler-SA-2024-2114"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2024-39908"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2024-41123"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2024-43398"
}
],
"schema_version": "1.7.2",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H",
"type": "CVSS_V3"
}
],
"summary": "ruby security update",
"upstream": [
"CVE-2024-39908",
"CVE-2024-41123",
"CVE-2024-43398"
]
}
Sightings
| Author | Source | Type | Date | Other |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.
The approach is described in our paper Mapping CVEs to MITRE ATT&CK Techniques: A Curated Gold-Set Classifier and the Limits of LLM-Assisted Label Expansion.
Browse all ATT&CK techniques and the vulnerabilities related to each.
Related by attack behaviour
Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.