Skip to content
Heist/ feed
Critical

libceph: Avoid using invalid osd indices from primary_temp

Type: advisorySource: Official CVE List1 source record

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 ]

Announced Group revision 1
Original source ↗

CVE-2026-80558

Primary source · Revision 1

Imported from structured advisory data. Source references identify upstream records or fields; verify affected versions and your deployed configuration.

Security context

Source reference: cve:CVE-2026-80558

Linux

Source reference: /containers/cna/affected/0/product

Affected versions
Not stated in this record
Fixed versions
Not stated in this record
Prerequisites
Not stated in this record

Linux

Source reference: /containers/cna/affected/1/product

Affected versions
Not stated in this record
Fixed versions
Not stated in this record
Prerequisites
Not stated in this record

Structured affected-version data

Original package identities and version rules from this source.

[
  {
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "vendor": "Linux",
    "product": "Linux",
    "versions": [
      {
        "status": "affected",
        "version": "5e8d4d36bf23bb7baf027c479d54395840219928",
        "lessThan": "505fc50b8ff8e687b7e3ef6866269dea27366224",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "5e8d4d36bf23bb7baf027c479d54395840219928",
        "lessThan": "1c705fe8e59c6b16f48964973fb23c8ec4735b73",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "5e8d4d36bf23bb7baf027c479d54395840219928",
        "lessThan": "dfe1877d351b99eb1b1a62a3fc2d174220e88e20",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "5e8d4d36bf23bb7baf027c479d54395840219928",
        "lessThan": "e2ffeec85201b2bb748e99e12539ee1b92f62796",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "5e8d4d36bf23bb7baf027c479d54395840219928",
        "lessThan": "6799d4a916ffcb3d450d8440f9fe0f0862f768d6",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "5e8d4d36bf23bb7baf027c479d54395840219928",
        "lessThan": "4f392fec075562dc93bb0c69f37423ca2af9b48f",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "5e8d4d36bf23bb7baf027c479d54395840219928",
        "lessThan": "e009c5f0ad634c62f5c48a41f1f3c019ecf52555",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "5e8d4d36bf23bb7baf027c479d54395840219928",
        "lessThan": "3660b98d1204b419f6a77e9a295f148dcf38d042",
        "versionType": "git"
      }
    ],
    "programFiles": [
      "net/ceph/osdmap.c"
    ],
    "defaultStatus": "unaffected"
  },
  {
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "vendor": "Linux",
    "product": "Linux",
    "versions": [
      {
        "status": "affected",
        "version": "3.15"
      },
      {
        "status": "unaffected",
        "version": "0",
        "lessThan": "3.15",
        "versionType": "semver"
      },
      {
        "status": "unaffected",
        "version": "5.10.266",
        "versionType": "semver",
        "lessThanOrEqual": "5.10.*"
      },
      {
        "status": "unaffected",
        "version": "5.15.217",
        "versionType": "semver",
        "lessThanOrEqual": "5.15.*"
      },
      {
        "status": "unaffected",
        "version": "6.1.184",
        "versionType": "semver",
        "lessThanOrEqual": "6.1.*"
      },
      {
        "status": "unaffected",
        "version": "6.6.153",
        "versionType": "semver",
        "lessThanOrEqual": "6.6.*"
      },
      {
        "status": "unaffected",
        "version": "6.12.105",
        "versionType": "semver",
        "lessThanOrEqual": "6.12.*"
      },
      {
        "status": "unaffected",
        "version": "6.18.46",
        "versionType": "semver",
        "lessThanOrEqual": "6.18.*"
      },
      {
        "status": "unaffected",
        "version": "7.1.10",
        "versionType": "semver",
        "lessThanOrEqual": "7.1.*"
      },
      {
        "status": "unaffected",
        "version": "7.2",
        "versionType": "original_commit_for_fix",
        "lessThanOrEqual": "*"
      }
    ],
    "programFiles": [
      "net/ceph/osdmap.c"
    ],
    "defaultStatus": "affected"
  }
]
Related CVEs
CVE-2026-80558

Source reference: /cveMetadata/cveId

Publisher severity

critical

Source reference: /containers/cna/metrics

Event
#34325 · Revision 1
Added to Heist Feed
Publisher date
Read the original announcement