Database/Kernel, userspace & hypervisor
Linux kernel libceph: unchecked decodes in decode_locker() let a malicious OSD read out of bounds
Impact
The in-kernel Ceph client parses locker records returned by an OSD without bounds-checking three decode steps, so a malicious or compromised OSD can walk the decode pointer past the validated buffer (including by sending a 32-bit length of 0xffffffff) and cause slab-out-of-bounds reads in kernel context. The realistic outcomes are a kernel crash of the client node and possible disclosure of adjacent slab contents; the record does not claim write primitives or code execution. This matters on GPU nodes that mount krbd or CephFS volumes for datasets and checkpoints, because the trust flows the wrong way: one storage node under an attacker's control reaches every compute node that issues lock.get_info, which RBD does on exclusive-lock acquisition. A crashed node in mid-training loses the job and takes a drain-and-reboot cycle to return.
Who can reach it
A malicious or compromised Ceph OSD that a kernel RBD/CephFS client talks to. Per the commit message, no privilege beyond establishing an OSD session is required; the attacker must be able to answer the client's lock.get_info request.
What to do
Update to a stable kernel containing the decode_locker() safe-decode fix and reboot each affected client node - there is no runtime toggle, and the parsing path is exercised by any normal RBD exclusive-lock acquisition. Nodes that mount Ceph volumes must be drained before reboot. Until patched, the only mitigation is limiting which OSDs kernel clients will talk to; the record names no fixed release numbers, only the stable commits.
References
Related entries
- Microsoft Hyper-V: vmswitch fails to validate guest OID requestsCVE-2021-28476 · Microsoft Hyper-VCritical
- Incus: instance snapshots bypass restricted.containers.lowlevel, giving command execution on the hostCVE-2026-48751 · Incus (instance snapshots ignore restricted.containers.lowlevel)Critical
- VMware ESXi (OpenSLP): Use-after-free in OpenSLP on port 427 - unauthenticated remote code execution on the hypervisorCVE-2020-3992 · VMware ESXi (OpenSLP)Critical
- Linux kernel mlx5_core kTLS RX offload: TLS RX resync list corruption: entries are moved by the resync handlerCVE-2021-47215 · Linux kernel mlx5_core kTLS RX offloadCritical
- Linux kernel (drivers/nvme/host): The NVMe/RDMA initiator destroys the queue pair before the connection manager ID, soCVE-2021-47378 · Linux kernel (drivers/nvme/host)Critical
- Linux kernel (net/tls): KTLS stored a negative errno into the socket error field where a positive value is expected. ACVE-2021-47496 · Linux kernel (net/tls)Critical
This entry is curated: imported from vendor advisories with machine assistance, not yet individually verified. Confirm against your vendor's advisory before acting, and report anything wrong.