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
LinuxLinuxba75bb98cfb93b62c54af25bf67ff90857264bbe < caf082ef8609a6ac26159ce115f55ab7d00231a3affected
LinuxLinuxba75bb98cfb93b62c54af25bf67ff90857264bbe < e3ccd4ecab09b22f507f49cb7ed9990c7158ceabaffected
LinuxLinuxba75bb98cfb93b62c54af25bf67ff90857264bbe < 0591a15815b498be628a937146e44487d599ba33affected
LinuxLinuxba75bb98cfb93b62c54af25bf67ff90857264bbe < cd0d41bc569632eaaeccde9d2a6bc919ec00c407affected
LinuxLinuxba75bb98cfb93b62c54af25bf67ff90857264bbe < e67e8b694872c9bc66996040f9de9242f6236ed9affected
LinuxLinuxba75bb98cfb93b62c54af25bf67ff90857264bbe < 3b249546f59c3d6d3592c10657f82bc3f1faa07caffected
LinuxLinuxba75bb98cfb93b62c54af25bf67ff90857264bbe < 40480eee361ed9676b3f844d532ac28b47251634affected
LinuxLinux2.6.34affected
LinuxLinux0 < 2.6.34unaffected
LinuxLinux5.15.216 <= 5.15.*unaffected
LinuxLinux6.1.183 <= 6.1.*unaffected
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 <= *unaffected

Weaknesses

References