{"id":"CVE-2026-80558","revision":"6ca53b61316a4cc7bbaed5711c66d7dc","records":[{"revision":"6ca53b61316a4cc7bbaed5711c66d7dc","observedAt":"2026-10-23T15:48:27.903+00:00","statement":{"source":"cve-program","id":"CVE-2026-80558","aliases":[],"title":"libceph: Avoid using invalid osd indices from primary_temp","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nlibceph: Avoid using invalid osd indices from primary_temp\n\nA corrupted osdmap received from a Ceph monitor or OSD may contain osd\nindices in its pg_temp, primary_temp, pg_upmap, and pg_upmap_items parts\nthat don't exist, i.e., that are greater than max_osd or smaller than\nCEPH_HOMELESS_OSD (-1). These indices are used to create the up and\nacting set in ceph_pg_to_up_acting_osds(), called from calc_target().\nWhile most of these osd indices are checked, the one from primary_temp\nis not. Subsequently, this may lead to calc_target() returning this\n(potentially invalid) index as target osd for a (linger) request.\nBecause the osd_state, osd_weight, and osd_addr arrays only contain\nmax_osd entries (with indices 0 to max_osd -1), this leads to\nout-of-bounds accesses when trying to read values from these arrays.\n\nThis patch fixes the issue by adding a check to get_temp_osds(), so that\nonly valid osd indices from primary_temp are used, and it falls back to\nusing the primary from pg_temp or the up set if it is invalid.\n\n[ idryomov: changelog ]","state":0,"publishedAt":"2026-08-26T14:37:24.768+00:00","modifiedAt":"2026-10-16T19:26:27.095+00:00","affected":[{"ecosystem":"Vendor product","name":"Linux","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"product\": \"Linux\",\n                    \"vendor\": \"Linux\",\n                    \"defaultStatus\": \"unaffected\",\n                    \"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\n                    \"programFiles\": [\n                        \"net/ceph/osdmap.c\"\n                    ],\n                    \"versions\": [\n                        {\n                            \"version\": \"5e8d4d36bf23bb7baf027c479d54395840219928\",\n                            \"lessThan\": \"505fc50b8ff8e687b7e3ef6866269dea27366224\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"5e8d4d36bf23bb7baf027c479d54395840219928\",\n                            \"lessThan\": \"1c705fe8e59c6b16f48964973fb23c8ec4735b73\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"5e8d4d36bf23bb7baf027c479d54395840219928\",\n                            \"lessThan\": \"dfe1877d351b99eb1b1a62a3fc2d174220e88e20\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"5e8d4d36bf23bb7baf027c479d54395840219928\",\n                            \"lessThan\": \"e2ffeec85201b2bb748e99e12539ee1b92f62796\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"5e8d4d36bf23bb7baf027c479d54395840219928\",\n                            \"lessThan\": \"6799d4a916ffcb3d450d8440f9fe0f0862f768d6\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"5e8d4d36bf23bb7baf027c479d54395840219928\",\n                            \"lessThan\": \"4f392fec075562dc93bb0c69f37423ca2af9b48f\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"5e8d4d36bf23bb7baf027c479d54395840219928\",\n                            \"lessThan\": \"e009c5f0ad634c62f5c48a41f1f3c019ecf52555\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"5e8d4d36bf23bb7baf027c479d54395840219928\",\n                            \"lessThan\": \"3660b98d1204b419f6a77e9a295f148dcf38d042\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        }\n                    ]\n                }"},{"ecosystem":"Vendor product","name":"Linux","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"product\": \"Linux\",\n                    \"vendor\": \"Linux\",\n                    \"defaultStatus\": \"affected\",\n                    \"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\n                    \"programFiles\": [\n                        \"net/ceph/osdmap.c\"\n                    ],\n                    \"versions\": [\n                        {\n                            \"version\": \"3.15\",\n                            \"status\": \"affected\"\n                        },\n                        {\n                            \"version\": \"0\",\n                            \"lessThan\": \"3.15\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"5.10.266\",\n                            \"lessThanOrEqual\": \"5.10.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"5.15.217\",\n                            \"lessThanOrEqual\": \"5.15.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.1.184\",\n                            \"lessThanOrEqual\": \"6.1.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.6.153\",\n                            \"lessThanOrEqual\": \"6.6.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.12.105\",\n                            \"lessThanOrEqual\": \"6.12.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.18.46\",\n                            \"lessThanOrEqual\": \"6.18.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"7.1.10\",\n                            \"lessThanOrEqual\": \"7.1.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"7.2\",\n                            \"lessThanOrEqual\": \"*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"original_commit_for_fix\"\n                        }\n                    ]\n                }"}],"metrics":[{"system":"CVSS 3.1","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","score":9.8,"severity":"CRITICAL"}],"references":["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"],"sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2026-80558","license":"CVE Program Terms of Use","key":"cve-program:CVE-2026-80558","identifiers":["CVE-2026-80558"]},"retained":false,"historicalAffected":[]}],"coverage":[]}