CVE-2022-28739 json
There is a buffer over-read in Ruby before 2.6.10, 2.7.x before 2.7.6, 3.x before 3.0.4, and 3.1.x before 3.1.2.
published 2022-05-09 4 y ago modified 2026-09-08 2 mo ago also BIT-ruby-2022-28739 , BIT-ruby-min-2022-28739 , EUVD-2022-33178 , JLSEC-2026-1290
- cvss
- 7.5
- version 3.1, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 4.4%
- EPSS 4.4% chance of exploitation in 30 days, percentile 91%
- public exploits
- 0
- none known
Summary
There is a buffer over-read in Ruby before 2.6.10, 2.7.x before 2.7.6, 3.x before 3.0.4, and 3.1.x before 3.1.2. It occurs in String-to-Float conversion, including Kernel#Float and String#to_f.
Patch / fix
- bitnami ruby 2.6.10, 2.7.6, 3.0.4, 3.1.2
- bitnami ruby-min 2.6.10, 2.7.6, 3.0.4, 3.1.2
- ruby-lang ruby 2.6.10, 2.7.6, 3.0.4, 3.1.2
- apple macos 11.7.1, 12.6.1
- ruby2.7 Debian 11 2.7.4-1+deb11u2
debian advisories DEBIAN-CVE-2022-28739
- ruby2.5 Ubuntu 18.04 LTS 2.5.1-1ubuntu1.12
- ruby2.7 Ubuntu 20.04 LTS 2.7.0-5ubuntu1.7
- ruby3.0 Ubuntu 22.04 LTS 3.0.2-7ubuntu2.1
- ruby2.3 Ubuntu Pro 16.04 LTS 2.3.1-2~ubuntu16.04.16+esm3
ubuntu advisories UBUNTU-CVE-2022-28739
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
- ruby4.0 hummingbird 1 4.0.0-33.3.hum1
- ruby4.0-libs hummingbird 1 4.0.0-33.3.hum1
- ruby4.0-bundled-gems hummingbird 1 4.0.0-33.3.hum1
- ruby4.0-default-gems hummingbird 1 4.0.0-33.3.hum1
- ruby3.3 hummingbird 1 3.3.10-23.1.hum1
- ruby3.3-libs hummingbird 1 3.3.10-23.1.hum1
- ruby3.3-bundled-gems hummingbird 1 3.3.10-23.1.hum1
- ruby3.3-default-gems hummingbird 1 3.3.10-23.1.hum1
red hat advisories RHSA-2026:8838RHSA-2026:7305RHSA-2026:7307RHSA-2023:7025RHSA-2022:6450RHSA-2022:6447
- ruby2.5 SLES for SAP 15 SP2, SLES for SAP 15 SP1, SLES for SAP 15 +21 more 2.5.9-150000.4.23.1
suse advisories SUSE-SU-2022:1512-1
- ruby4.0 openSUSE Tumbleweed 4.0.0~preview2-1.1
- ruby3.4 openSUSE Tumbleweed 3.4.1-1.1
- ruby3.1 openSUSE Tumbleweed 3.1.2-1.1
- ruby3.2 openSUSE Tumbleweed 3.2.1-1.1
- ruby3.3 openSUSE Tumbleweed 3.3.0-1.2
opensuse advisories openSUSE-SU-2025:15819-1openSUSE-SU-2025:14621-1openSUSE-SU-2024:12006-1openSUSE-SU-2024:12712-1openSUSE-SU-2024:13623-1
- ruby AlmaLinux 8 2.5.9-111.module_el8.9.0+3635+c6f99506
- ruby-irb AlmaLinux 8 2.5.9-111.module_el8.9.0+3635+c6f99506
- rubygems AlmaLinux 8 2.7.6.3-111.module_el8.9.0+3635+c6f99506
- ruby-libs AlmaLinux 8 2.5.9-111.module_el8.9.0+3635+c6f99506
- rubygem-pg AlmaLinux 8 1.0.0-3.module_el8.9.0+3635+c6f99506
- rubygem-abrt AlmaLinux 8 0.3.0-4.module_el8.5.0+2625+ec418553
- rubygem-bson AlmaLinux 8 4.3.0-2.module_el8.5.0+2625+ec418553
- rubygem-bson AlmaLinux 8 4.3.0-2.module_el8.6.0+3170+4b08f9d4
almalinux advisories ALSA-2023:7025ALSA-2022:6585ALSA-2022:6447ALSA-2022:6450
- ruby Rocky Linux 8 2.5.9-111.module+el8.9.0+1536+5f79634e
- rubygem-pg Rocky Linux 8 1.0.0-3.module+el8.9.0+1536+5f79634e
- rubygem-abrt Rocky Linux 8 0.3.0-4.module+el8.9.0+1536+5f79634e
- rubygem-abrt Rocky Linux 8 0.3.0-4.module+el8.5.0+738+032c9c02
- rubygem-bson Rocky Linux 8 4.3.0-2.module+el8.9.0+1536+5f79634e
- rubygem-mongo Rocky Linux 8 2.5.1-2.module+el8.9.0+1536+5f79634e
- rubygem-mysql2 Rocky Linux 8 0.4.10-4.module+el8.9.0+1536+5f79634e
- rubygem-bundler Rocky Linux 8 1.16.1-4.module+el8.9.0+1536+5f79634e
rocky linux advisories RLSA-2023:7025RLSA-2022:6585RLSA-2022:6450RLSA-2022:6447RLSA-2022:5338
- ruby Alpine 3.14, Alpine 3.13, Alpine 3.12 2.7.6-r0
- ruby Alpine 3.15 3.0.4-r0
- ruby Alpine 3.24, Alpine 3.23, Alpine 3.22 +6 more 3.1.2-r0
alpine advisories ALPINE-CVE-2022-28739
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 Arch Linux 3.0.4-1
arch linux advisories AVG-2757
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-2022-28739 updated cvss 6.2
ruby: Buffer overrun in String-to-Float conversion
-
Red Hat Enterprise Linux 6 ruby, ruby-ri, ruby-irb, ruby-libs, ruby-rdoc, ruby-tcltk Red Hat Enterprise Linux 7 ruby, ruby-irb, rubygems, ruby-libs, ruby-tcltk, rubygem-json, +6 moreaffected: no fix planned “Out of support scope”
-
Red Hat Hardened Images rubyaffected: no fix available
-
Red Hat CodeReady Linux Builder (v. 9) ruby-doc 3.0.4-160.el9_0fixed: vendor fix RHSA-2022:6585
-
Red Hat Enterprise Linux AppStream (v. 8) ruby 2.5.9-111.module+el8.9.0+19193+435404ae, ruby 2.7.6-138.module+el8.6.0+16148+54b2ba8f, ruby 3.0.4-141.module+el8.6.0+16311+3e5e17e9, ruby 2.6.10-109.module+el8.6.0+15475+c55337b4, rubygem-pg 1.1.4-1.module+el8.1.0+3653+beb38eb0, rubygem-pg 1.2.3-1.module+el8.3.0+7192+4e3a532a, +85 morefixed: vendor fix RHSA-2022:5338
-
Red Hat Enterprise Linux AppStream (v. 9) ruby 3.0.4-160.el9_0, ruby-libs 3.0.4-160.el9_0, rubygems 3.2.33-160.el9_0, rubygem-irb 1.3.5-160.el9_0, rubygem-rbs 1.4.0-160.el9_0, rubygem-rss 0.2.9-160.el9_0, +13 morefixed: vendor fix RHSA-2022:6585
-
Red Hat Hardened Images ruby3.4 3.4.8-31.1.hum1, ruby4.0 4.0.0-33.3.hum1, ruby3.3 3.3.10-23.1.hum1, ruby3.4-libs 3.4.8-31.1.hum1, ruby4.0-libs 4.0.0-33.3.hum1, ruby3.3-libs 3.3.10-23.1.hum1, +6 morefixed: vendor fix RHSA-2026:7305
-
Red Hat Software Collections for RHEL Workstation(v. 7) rh-ruby27-ruby 2.7.6-131.el7, rh-ruby30-ruby 3.0.4-149.el7, rh-ruby27-rubygems 3.1.6-131.el7, rh-ruby27-ruby-libs 2.7.6-131.el7, rh-ruby30-ruby-libs 3.0.4-149.el7, rh-ruby30-rubygems 3.2.33-149.el7, +31 more Red Hat Software Collections for RHEL(v. 7) rh-ruby27-ruby 2.7.6-131.el7, rh-ruby30-ruby 3.0.4-149.el7, rh-ruby27-rubygems 3.1.6-131.el7, rh-ruby27-ruby-libs 2.7.6-131.el7, rh-ruby30-ruby-libs 3.0.4-149.el7, rh-ruby30-rubygems 3.2.33-149.el7, +31 morefixed: vendor fix RHSA-2022:6856
-
Red Hat Hardened Images rubygem3.3-rbs 3.4.0-23.1.hum1, rubygem3.3-rss 0.3.1-23.1.hum1, rubygem3.4-rbs 3.8.0-31.1.hum1, rubygem3.4-rss 0.3.1-31.1.hum1, rubygem4.0-rss 0.3.2-33.3.hum1, rubygem3.3-irb 1.13.1-23.1.hum1, +45 morenot 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 ICSA-24-046-11 updated cvss 7.5
Siemens SCALANCE XCM-/XRM-300
-
Siemens SCALANCE XCH328 (6GK5328-4TS01-2EC2) <V2.4 Siemens SCALANCE XCM324 (6GK5324-8TS01-2AC2) <V2.4 Siemens SCALANCE XCM328 (6GK5328-4TS01-2AC2) <V2.4 Siemens SCALANCE XCM332 (6GK5332-0GA01-2AC2) <V2.4 Siemens SCALANCE XRH334 (24 V DC, 8xFO, CC) (6GK5334-2TS01-2ER3) <V2.4 Siemens SCALANCE XRM334 (2x230 V AC, 8xFO) (6GK5334-2TS01-4AR3) <V2.4affected: fixed in V2.4 support.industry.siemens.com
+5 more productsfewer
Siemens SCALANCE XRM334 (2x230 V AC, 12xFO) (6GK5334-3TS01-4AR3) <V2.4 Siemens SCALANCE XRM334 (24 V DC, 8xFO) (6GK5334-2TS01-2AR3) <V2.4 Siemens SCALANCE XRM334 (24 V DC, 12xFO) (6GK5334-3TS01-2AR3) <V2.4 Siemens SCALANCE XRM334 (230 V AC, 8xFO) (6GK5334-2TS01-3AR3) <V2.4 Siemens SCALANCE XRM334 (230 V AC, 12xFO) (6GK5334-3TS01-3AR3) <V2.4
Facts from CISA's republication of the vendor's own advisory (CSAF); the linked advisory is the authoritative source. CISA notification · csaf
Exploit prediction
4.37% chance of exploitation in the next 30 days, higher than 91% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| NVD | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N |
| NVD | 2.0 | 4.3 | AV:N/AC:M/Au:N/C:P/I:N/A:N |
| OSV | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| bitnami | ruby | <2.6.10 >=2.7.0, <2.7.6 >=3.0.0, <3.0.4 >=3.1.0, <3.1.2 |
2.6.10 2.7.6 3.0.4 3.1.2 |
| bitnami | ruby-min | <2.6.10 >=2.7.0, <2.7.6 >=3.0.0, <3.0.4 >=3.1.0, <3.1.2 |
2.6.10 2.7.6 3.0.4 3.1.2 |
| julia | ruby_jll | all versions |
no fix listed |
Classification
- Weakness
-
- CWE-125 Out-of-bounds Read
References
-
ruby-lang.org
/en/news/2022/04/12/buffer-overrun-in-string-to-float-cve-2022-28739/
vendor-advisory, advisory, web
-
hackerone.com
/reports/1248108
permissions-required, third-party-advisory, advisory, web
-
security-tracker.debian.org
/tracker/CVE-2022-28739
third-party-advisory, advisory, web
-
security.netapp.com
/advisory/ntap-20220624-0002/
third-party-advisory, advisory, web
-
support.apple.com
/kb/HT213488
third-party-advisory, advisory, web
-
support.apple.com
/kb/HT213494
third-party-advisory, advisory, web
-
support.apple.com
/kb/HT213493
third-party-advisory, advisory, web
-
seclists.org
/fulldisclosure/2022/Oct/41
mailing-list, third-party-advisory, advisory, web
-
seclists.org
/fulldisclosure/2022/Oct/28
mailing-list, web
-
seclists.org
/fulldisclosure/2022/Oct/30
mailing-list, web
-
seclists.org
/fulldisclosure/2022/Oct/29
mailing-list, web
-
seclists.org
/fulldisclosure/2022/Oct/42
mailing-list, web
-
lists.debian.org
/debian-lts-announce/2023/06/msg00012.html
web
-
security.gentoo.org
/glsa/202401-27
web
-
lists.debian.org
/debian-lts-announce/2024/09/msg00000.html
web
-
nvd.nist.gov
/vuln/detail/CVE-2022-28739
web
Sources
- CVE List CVE-2022-28739
- NVD CVE-2022-28739
- OSV BIT-ruby-2022-28739
- OSV BIT-ruby-min-2022-28739
- OSV JLSEC-2026-1290
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.