CVE-2026-52955

libceph: Fix potential out-of-bounds access in crush_decode()

CRITICAL 9.8

En bref

Source
NVD
EPSS
EPSS 0.38 % · centile 32 ()
État
PUBLISHED
Publiée
Mise à jour
Attribuée par
Linux
Statut NVD
Modified

Description

In the Linux kernel, the following vulnerability has been resolved: libceph: Fix potential out-of-bounds access in crush_decode() A message of type CEPH_MSG_OSD_MAP containing a crush map with at least one bucket has two fields holding the bucket algorithm. If the values in these two fields differ, an out-of-bounds access can occur. This is the case because the first algorithm field (alg) is used to allocate the correct amount of memory for a bucket of this type, while the second algorithm field inside the bucket (b->alg) is used in the subsequent processing. This patch fixes the issue by adding a check that compares alg and b->alg and aborts the processing in case they differ. Furthermore, b->alg is set to 0 in this case, because the destruction of the crush map also uses this field to determine the bucket type, which can again result in an out-of-bounds access when trying to free the memory pointed to by the fields of the bucket. To correctly free the memory allocated for the bucket in such a case, the corresponding call to kfree is moved from the algorithm-specific crush_destroy_bucket functions to the generic crush_destroy_bucket().

Faiblesses (CWE)

  • CWE-131 — Calcul incorrect de la taille d'un tampon
  • CWE-125 — Lecture hors limites

Références

Scores

VersionScoreVecteurÉvalué par
CVSS 3.1CRITICAL 9.8CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HLinux
CVSS 3.1MEDIUM 4.7CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:Hredhat-SADP
CVSS 3.1CRITICAL 9.8CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HNVD · 416baaa9-dc9f-4396-8d5f-8c081fb06d67 (Secondary)
CVSS 3.1MEDIUM 4.7CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:HNVD · 0b0ca135-0b70-47e7-9f44-1890c2a1c46c (Secondary)

Références européennes

Avis du CERT-FR

Configurations affectées (CPE NVD)

Produits affectés

ProduitVersions
Linux · Linuxaffected f24e9980eb860d8600cbe5ef3d2fd9295320d229 < 6e70ef53e818c53eab28d7b0026b7fd03dddaba5 ; affected f24e9980eb860d8600cbe5ef3d2fd9295320d229 < ebe76d58a48a48031b98543d86c4cd30a825b622 ; affected f24e9980eb860d8600cbe5ef3d2fd9295320d229 < 3f42508191e129ee6b5ea96578d5cab14f2a013a ; affected f24e9980eb860d8600cbe5ef3d2fd9295320d229 < ea0d42137f0c06da71e37ffc647aab4c5309599a ; affected f24e9980eb860d8600cbe5ef3d2fd9295320d229 < cceb10023e76bc89f3fe9238ebd0ccab0fc7c7c5 ; affected f24e9980eb860d8600cbe5ef3d2fd9295320d229 < 0f3604cbe4df14c5e58288ac9f57511e726a222d
Linux · Linuxaffected 2.6.34 ; unaffected 0 < 2.6.34 ; unaffected 5.10.258 ≤ 5.10.* ; unaffected 5.15.209 ≤ 5.15.* ; unaffected 6.1.175 ≤ 6.1.* ; unaffected 6.6.141 ≤ 6.6.*

Sources

SourceLicence
CVE List (CVEProject cvelistV5)CVE Program Terms of Use
EPSS (FIRST.org)FIRST — attribution requested
ENISA EUVDENISA — reproduction authorised, source acknowledged
CERT-FR (ANSSI)Licence Ouverte / Etalab 2.0
NVD (NIST) via fkie-cad/nvd-json-data-feedsPublic domain — this product uses data from the NVD API but is not endorsed or certified by the NVD