CVE-2026-68155

Summary

In the Linux kernel, the following vulnerability has been resolved:

libceph: Reject monmaps advertising zero monitors

A message of type CEPH_MSG_MON_MAP contains a monmap that is sent from a monitor to the client. This monmap contains information about the existing monitors in the cluster. Currently, a monmap indicating that there are zero monitors in the cluster is treated as valid. However, it is impossible to have zero monitors in the cluster and still receive a valid monmap from a monitor. Therefore, such a monmap must be corrupted and should be treated as invalid. Furthermore, a monmap with a monitor count of zero can subsequently crash the client when attempting to open a session with a monitor in __open_session(). This happens because the "BUG_ON(monc->monmap->num_mon < 1)" assertion in pick_new_mon() is triggered.

This patch extends a check in ceph_monmap_decode() to also reject arriving mon_maps with num_mon == 0 rather than only with num_mon > CEPH_MAX_MON.

[ idryomov: drop "log output for unusual values of num_mon" part ]

Affected Software

VendorProductVersion RangeStatus
LinuxLinux1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < 0591a15815b498be628a937146e44487d599ba33affected
LinuxLinux1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < cd0d41bc569632eaaeccde9d2a6bc919ec00c407affected
LinuxLinux1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < e67e8b694872c9bc66996040f9de9242f6236ed9affected
LinuxLinux1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < 3b249546f59c3d6d3592c10657f82bc3f1faa07caffected
LinuxLinux1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < 40480eee361ed9676b3f844d532ac28b47251634affected
LinuxLinux0 < 6.6.148affected
LinuxLinux0 < 6.12.101affected
LinuxLinux0 < 6.18.42affected
LinuxLinux0 < 7.1.6affected
LinuxLinux6.6.148 <= 6.6.*unaffected
LinuxLinux6.12.101 <= 6.12.*unaffected
LinuxLinux6.18.42 <= 6.18.*unaffected
LinuxLinux7.1.6 <= 7.1.*unaffected
LinuxLinux7.2-rc5 <= *unaffected

Weaknesses

References