CyberRota Analysis
AI-GeneratedThe vulnerability affects the Linux kernel's libceph component, specifically in the handling of CEPH_MSG_OSD_MAP messages, where a multiplication overflow can lead to out-of-bounds memory accesses during the decoding process. This flaw could be exploited by sending a maliciously crafted osdmap, potentially allowing an attacker to read sensitive data or cause a denial of service. Organizations utilizing Linux systems with Ceph storage should prioritize patching this vulnerability to mitigate the risk of exploitation.
Original NVD Description
In the Linux kernel, the following vulnerability has been resolved: libceph: Fix multiplication overflow in decode_new_up_state_weight() If a message of type CEPH_MSG_OSD_MAP contains a (maliciously) corrupted osdmap, out-of-bounds memory accesses may occur in decode_new_up_state_weight(). This happens because the bounds check for the new_state part is based on calculating its length depending on a len value read from the incoming message. This calculation may overflow leading to an incorrect bounds check. Subsequently, out-of-bounds reads may occur when decoding this part. This patch switches the multiplication to use check_mul_overflow() to abort processing the osdmap if an overflow occurred. Therefore, osdmaps/messages containing large values for len that result in a multiplication overflow are treated as invalid. [ idryomov: rename new_state_len -> new_state_item_size, formatting ]