libceph: Fix potential out-of-bounds access in osdmap_decode()
When decoding osd_state and osd_weight from an incoming osdmap in
osdmap_decode(), both are decoded for each osd, i.e., map->max_osd
times. The ceph_decode_need() check only accounts for
sizeof(*map->osd_weight) once. This can potentially result in an
out-of-bounds memory access if the incoming message is corrupted such
that the max_osd value exceeds the actual content of the osdmap message.
This patch fixes the issue by changing the corresponding part in the
ceph_decode_need() check to account for
map->max_osd*sizeof(*map->osd_weight).
| Source | ID | Title |
|---|---|---|
Debian DLA |
DLA-4664-1 | linux security update |
Debian DLA |
DLA-4665-1 | linux security update |
Debian DLA |
DLA-4671-1 | linux-6.1 security update |
Ubuntu USN |
USN-8566-1 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-8567-1 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-8568-1 | Linux kernel (OEM) vulnerabilities |
Ubuntu USN |
USN-8569-1 | Linux kernel (HWE) vulnerabilities |
Ubuntu USN |
USN-8574-1 | Linux kernel (GCP FIPS) vulnerabilities |
Ubuntu USN |
USN-8575-1 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-8576-1 | Linux kernel (NVIDIA Tegra) vulnerabilities |
Ubuntu USN |
USN-8593-1 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-8574-2 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-8595-1 | Linux kernel (Oracle) vulnerabilities |
Ubuntu USN |
USN-8596-1 | Linux kernel (NVIDIA) vulnerabilities |
Ubuntu USN |
USN-8575-2 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-8576-2 | Linux kernel (NVIDIA Tegra) vulnerabilities |
Ubuntu USN |
USN-8575-3 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-8595-2 | Linux kernel (AWS) vulnerabilities |
Ubuntu USN |
USN-8603-1 | Linux kernel (Azure) vulnerabilities |
Ubuntu USN |
USN-8606-1 | Linux kernel (Azure) vulnerabilities |
Ubuntu USN |
USN-8607-1 | Linux kernel (Azure CVM) vulnerabilities |
Ubuntu USN |
USN-8608-1 | Linux kernel (Azure FIPS) vulnerabilities |
Ubuntu USN |
USN-8609-1 | Linux kernel (Azure CVM) vulnerabilities |
Ubuntu USN |
USN-8610-1 | Linux kernel (Azure CVM) vulnerabilities |
Solution
No solution given by the vendor.
Workaround
No workaround given by the vendor.
Sun, 28 Jun 2026 08:00:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
cvssV3_1
|
cvssV3_1
|
Fri, 26 Jun 2026 04:15:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Weaknesses | CWE-119 CWE-125 |
Fri, 26 Jun 2026 00:15:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Weaknesses | CWE-1284 | |
| References |
| |
| Metrics |
threat_severity
|
cvssV3_1
|
Wed, 24 Jun 2026 18:45:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Weaknesses | CWE-119 CWE-125 |
Wed, 24 Jun 2026 17:15:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Description | In the Linux kernel, the following vulnerability has been resolved: libceph: Fix potential out-of-bounds access in osdmap_decode() When decoding osd_state and osd_weight from an incoming osdmap in osdmap_decode(), both are decoded for each osd, i.e., map->max_osd times. The ceph_decode_need() check only accounts for sizeof(*map->osd_weight) once. This can potentially result in an out-of-bounds memory access if the incoming message is corrupted such that the max_osd value exceeds the actual content of the osdmap message. This patch fixes the issue by changing the corresponding part in the ceph_decode_need() check to account for map->max_osd*sizeof(*map->osd_weight). | |
| Title | libceph: Fix potential out-of-bounds access in osdmap_decode() | |
| First Time appeared |
Linux
Linux linux Kernel |
|
| CPEs | cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | |
| Vendors & Products |
Linux
Linux linux Kernel |
|
| References |
|
|
Projects
Sign in to view the affected projects.
Status: PUBLISHED
Assigner: Linux
Published:
Updated: 2026-06-28T06:37:19.643Z
Reserved: 2026-06-09T07:44:35.373Z
Link: CVE-2026-52958
No data.
No data.
OpenCVE Enrichment
Updated: 2026-06-28T13:45:06Z
Debian DLA
Ubuntu USN