* CVE-2026-80558: libceph: Avoid using invalid osd indices from primary_temp
@ 2026-08-26 14:37 Greg Kroah-Hartman
0 siblings, 0 replies; only message in thread
From: Greg Kroah-Hartman @ 2026-08-26 14:37 UTC (permalink / raw)
To: linux-cve-announce; +Cc: Greg Kroah-Hartman
From: Greg Kroah-Hartman <gregkh@kernel.org>
Description
===========
In the Linux kernel, the following vulnerability has been resolved:
libceph: Avoid using invalid osd indices from primary_temp
A corrupted osdmap received from a Ceph monitor or OSD may contain osd
indices in its pg_temp, primary_temp, pg_upmap, and pg_upmap_items parts
that don't exist, i.e., that are greater than max_osd or smaller than
CEPH_HOMELESS_OSD (-1). These indices are used to create the up and
acting set in ceph_pg_to_up_acting_osds(), called from calc_target().
While most of these osd indices are checked, the one from primary_temp
is not. Subsequently, this may lead to calc_target() returning this
(potentially invalid) index as target osd for a (linger) request.
Because the osd_state, osd_weight, and osd_addr arrays only contain
max_osd entries (with indices 0 to max_osd -1), this leads to
out-of-bounds accesses when trying to read values from these arrays.
This patch fixes the issue by adding a check to get_temp_osds(), so that
only valid osd indices from primary_temp are used, and it falls back to
using the primary from pg_temp or the up set if it is invalid.
[ idryomov: changelog ]
The Linux kernel CVE team has assigned CVE-2026-80558 to this issue.
Affected and fixed versions
===========================
Issue introduced in 3.15 with commit 5e8d4d36bf23bb7baf027c479d54395840219928 and fixed in 5.10.266 with commit 505fc50b8ff8e687b7e3ef6866269dea27366224
Issue introduced in 3.15 with commit 5e8d4d36bf23bb7baf027c479d54395840219928 and fixed in 5.15.217 with commit 1c705fe8e59c6b16f48964973fb23c8ec4735b73
Issue introduced in 3.15 with commit 5e8d4d36bf23bb7baf027c479d54395840219928 and fixed in 6.1.184 with commit dfe1877d351b99eb1b1a62a3fc2d174220e88e20
Issue introduced in 3.15 with commit 5e8d4d36bf23bb7baf027c479d54395840219928 and fixed in 6.6.153 with commit e2ffeec85201b2bb748e99e12539ee1b92f62796
Issue introduced in 3.15 with commit 5e8d4d36bf23bb7baf027c479d54395840219928 and fixed in 6.12.105 with commit 6799d4a916ffcb3d450d8440f9fe0f0862f768d6
Issue introduced in 3.15 with commit 5e8d4d36bf23bb7baf027c479d54395840219928 and fixed in 6.18.46 with commit 4f392fec075562dc93bb0c69f37423ca2af9b48f
Issue introduced in 3.15 with commit 5e8d4d36bf23bb7baf027c479d54395840219928 and fixed in 7.1.10 with commit e009c5f0ad634c62f5c48a41f1f3c019ecf52555
Issue introduced in 3.15 with commit 5e8d4d36bf23bb7baf027c479d54395840219928 and fixed in 7.2 with commit 3660b98d1204b419f6a77e9a295f148dcf38d042
Please see https://www.kernel.org for a full list of currently supported
kernel versions by the kernel community.
Unaffected versions might change over time as fixes are backported to
older supported kernel versions. The official CVE entry at
https://cve.org/CVERecord/?id=CVE-2026-80558
will be updated if fixes are backported, please check that for the most
up to date information about this issue.
Affected files
==============
The file(s) affected by this issue are:
net/ceph/osdmap.c
Mitigation
==========
The Linux kernel CVE team recommends that you update to the latest
stable kernel version for this, and many other bugfixes. Individual
changes are never tested alone, but rather are part of a larger kernel
release. Cherry-picking individual commits is not recommended or
supported by the Linux kernel community at all. If however, updating to
the latest release is impossible, the individual changes to resolve this
issue can be found at these commits:
https://git.kernel.org/stable/c/505fc50b8ff8e687b7e3ef6866269dea27366224
https://git.kernel.org/stable/c/1c705fe8e59c6b16f48964973fb23c8ec4735b73
https://git.kernel.org/stable/c/dfe1877d351b99eb1b1a62a3fc2d174220e88e20
https://git.kernel.org/stable/c/e2ffeec85201b2bb748e99e12539ee1b92f62796
https://git.kernel.org/stable/c/6799d4a916ffcb3d450d8440f9fe0f0862f768d6
https://git.kernel.org/stable/c/4f392fec075562dc93bb0c69f37423ca2af9b48f
https://git.kernel.org/stable/c/e009c5f0ad634c62f5c48a41f1f3c019ecf52555
https://git.kernel.org/stable/c/3660b98d1204b419f6a77e9a295f148dcf38d042
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2026-08-26 14:39 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-26 14:37 CVE-2026-80558: libceph: Avoid using invalid osd indices from primary_temp Greg Kroah-Hartman
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.