CyberRota Analysis
AI-GeneratedThe vulnerability affects the Linux kernel's handling of the DRAW_PRIMITIVES command in the vmwgfx driver, where insufficient validation of the user-supplied header size can lead to an out-of-bounds read of kernel memory. This flaw allows attackers to exploit the system by manipulating the command stream, potentially leading to information disclosure or system instability. Organizations using affected Linux kernel versions, particularly those relying on the vmwgfx driver for graphics processing, should prioritize patching this vulnerability to mitigate the risk of exploitation.
Original NVD Description
In the Linux kernel, the following vulnerability has been resolved: drm/vmwgfx: validate DRAW_PRIMITIVES header size before division vmw_cmd_draw() computes maxnum = (header->size - sizeof(cmd->body)) / sizeof(*decl); where header->size is u32 and is taken straight from the user-supplied command stream. When header->size is less than sizeof(cmd->body) the unsigned subtraction wraps to nearly 4 GiB, producing a huge maxnum. Any user-controlled cmd->body.numVertexDecls then passes the bound and the loop dereferences decl[i] far past the end of the kernel command bounce buffer, producing an out-of-bounds read of kernel memory. Reject undersized headers up front.