CyberRota Analysis
AI-GeneratedThe vulnerability in the Linux kernel affects the dm-pcache component, where improper validation of geometry fields from on-disk cache_info can lead to out-of-bounds access in the cache's segment array. This flaw allows an attacker with CAP_SYS_ADMIN privileges to exploit oversized segment counts or out-of-range segment IDs, potentially resulting in unauthorized read and write operations on the device. Organizations using Linux systems that implement dm-pcache should prioritize addressing this vulnerability to mitigate the risk of data corruption or unauthorized access.
Original NVD Description
In the Linux kernel, the following vulnerability has been resolved: dm-pcache: validate geometry fields from on-disk cache_info cache_segs_init() iterates cache_info->n_segs times indexing cache->segments[], which is sized to the cache device geometry, and get_seg_id() takes each segment id from the on-media cache_info and the per-segment next_seg link. Both come from cache device metadata that is only CRC-protected with a fixed public seed, so whoever supplies the cache device on a table load (CAP_SYS_ADMIN) controls them: an oversized n_segs or an out-of-range id drives an out-of-bounds access of cache->segments[] and a wild CACHE_DEV_SEGMENT() pointer into the device mapping -- an out-of-bounds read and write from on-disk data. Reject an n_segs that exceeds the device segment count and a segment id that is out of range before either is used. Valid metadata is unaffected.