Bug 2493581 (CVE-2026-57965) - CVE-2026-57965 spice-vdagent: Integer overflow in udscs_write() leading to heap buffer overflow
Summary: CVE-2026-57965 spice-vdagent: Integer overflow in udscs_write() leading to he...
Keywords:
Status: NEW
Alias: CVE-2026-57965
Product: Security Response
Classification: Other
Component: vulnerability
Version: unspecified
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Product Security
QA Contact:
URL:
Whiteboard:
Depends On: 2494104
Blocks:
TreeView+ depends on / blocked
 
Reported: 2026-06-26 15:37 UTC by OSIDB Bzimport
Modified: 2026-06-29 07:56 UTC (History)
2 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Embargoed:


Attachments (Terms of Use)

Description OSIDB Bzimport 2026-06-26 15:37:06 UTC
An integer overflow vulnerability was found in spice-vdagent. In src/udscs.c, the udscs_write() function computes a buffer size as buf_size = sizeof(header) + size, where buf_size is a guint (unsigned 32-bit). When size is >= 0xFFFFFFF1 (since sizeof(header) is 16), this addition wraps to zero or a very small value. g_malloc(0) returns a valid tiny allocation (typically 1 byte), and the subsequent memcpy(buf + 16, data, size) writes approximately 4GB past the end of the buffer, causing a heap buffer overflow. This has been confirmed with AddressSanitizer (heap-buffer-overflow). On a normal (non-ASAN) build the daemon crashes with SIGBUS.

The trigger path is through VDAgentMessage.size in clipboard or file transfer messages from the SPICE host. The size validation at vdagentd.c:572 only checks >= min_size with no upper bound.

Note: exploitation requires a malicious or compromised SPICE host to send a crafted message with a large size field. In standard SPICE deployments, the host is trusted.


Note You need to log in before you can comment on or make changes to this bug.