CyberRota Analysis
AI-GeneratedThe vulnerability affects the Linux kernel's sk_msg functionality, specifically the handling of the sg.copy bitmap within scatterlist entries. An attacker could exploit this flaw to manipulate the ownership state of memory pages, potentially allowing unauthorized write access to sensitive data in the page cache through BPF (Berkeley Packet Filter) operations. Organizations using Linux systems, particularly those leveraging BPF for networking or security functions, should prioritize patching this critical vulnerability to mitigate the risk of data exposure and system compromise.
Original NVD Description
In the Linux kernel, the following vulnerability has been resolved: net: skmsg: preserve sg.copy across SG transforms The sk_msg sg.copy bitmap is part of the scatterlist entry ownership state. A set bit tells sk_msg_compute_data_pointers() not to expose the entry through writable BPF ctx->data. This protects entries backed by pages that are not private to the sk_msg, such as splice-backed file page-cache pages. Several sk_msg transform paths move, copy, split, or compact msg->sg.data[] entries without moving the matching sg.copy bit. This can make an externally backed entry arrive at a new slot with a clear copy bit. A later SK_MSG verdict can then expose sg_virt(sge) as writable ctx->data and BPF stores can modify the original page cache. Keep sg.copy synchronized with sg.data[] whenever entries are transferred, shifted, split, or copied into a new sk_msg. Clear the bit when an entry is replaced by a newly allocated private page or freed. This covers the BPF pull/push/pop helpers, sk_msg_shift_left/right(), sk_msg_xfer(), and tls_split_open_record(), including the partial tail entry created during TLS open-record splitting.