Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as SPICE client
-
DeliveryAwait/trigger VM live migration
-
ExploitSend crafted max_encoders in GLZ migration data
-
Executionsize_t-to-int truncation yields undersized malloc
-
PersistHeap buffer overflow in spice-server
-
ImpactService crash or code execution on host
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Integer overflow checks
MITRE ATT&CK
1 technique across 1 tactic: Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires (1) an authenticated SPICE client connection to the target VM (PR:L), and (2) a VM live migration to be in progress, because the vulnerable code is the GLZ encoder dictionary restore path that only runs when processing migration data. The specific trigger is a crafted oversized max_encoders value whose size_t allocation size is truncated to int in the malloc callback. Limiting factors: the attacker must already be an authenticated SPICE client, the live-migration window must be reachable (contributing to AC:H), and GLZ (LZ) compression/encoding must be in use for the session. This is not exploitable against a default, idle, non-migrating VM, which meaningfully narrows real-world opportunity despite the network attack vector. |
| Impact | This is a genuine but conditional risk, not a drop-everything emergency. The provided CVSS 3.1 vector (AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H, base 7.5) tells a consistent story: network-reachable (SPICE client), but high attack complexity (AC:H) and low-privilege-but-authenticated (PR:L), with full CIA impact from a heap overflow. The AC:H is corroborated by the description, which requires a specific race/state window - the vulnerability lives in the GLZ encoder dictionary restore path that only executes during VM live migration - so an attacker cannot trigger it on demand against a static, non-migrating VM. No EPSS score, no CISA KEV listing, and no public POC are present in the input, so exploitation signals point to no confirmed or widespread exploitation at this time. The description's 'malicious authenticated SPICE client' aligns correctly with PR:L, so there is no network-vs-local conflict to flag. Net assessment: a legitimately high-severity memory-corruption bug in a virtualization component with plausible RCE/host-impact, but gated behind authentication AND the live-migration window, making opportunistic mass exploitation unlikely. Prioritize patching on multi-tenant or untrusted-guest virtualization hosts; it is lower urgency for single-tenant deployments that rarely migrate or tightly control SPICE access. |
| Exploit ScenarioDerived | An authenticated but malicious SPICE client connected to a VM waits for (or induces) a live migration, then supplies a crafted oversized max_encoders value in the GLZ dictionary migration data. The size_t-to-int truncation produces an undersized malloc while the code writes against the original large size, causing a massive heap buffer overflow on the receiving spice-server that can crash the host service or potentially lead to code execution. No public exploit code is identified at time of analysis, and the high attack complexity (dependence on the migration window) limits reliability. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 16, 2026
Heap buffer overflow in spice-server's GLZ encoder dictionary restore path allows an authenticated SPICE client to corrupt memory during a VM live migration by supplying a crafted max_encoders value; a size_t allocation size is truncated to int before the malloc callback, enabling a large out-of-bounds heap write. Exploitation requires an authenticated SPICE client connection (PR:L) and an active live migration with GLZ compression in use, which narrows the practical window; no public exploit identified at time of analysis. An upstream fix is proposed in GitLab merge request 253.
RemediationAI
Apply the upstream fix referenced in GitLab merge request 253 (https://gitlab.freedesktop.org/spice/spice/-/merge_requests/253) or a vendor-released spice-server update once available, and monitor the Red Hat advisory at https://access.redhat.com/security/cve/CVE-2026-105959 for patched packages. Until a patch is deployed, reduce exposure by restricting authenticated SPICE client access to trusted users and hosts, and by limiting who can trigger or participate in VM live migrations. If GLZ compression is not operationally required, consider disabling it for migration streams (for example, preferring another supported compression method) as a compensating control; this may increase migration bandwidth usage and latency. Because exploitation requires an authenticated client plus an active migration window with GLZ in use, enforcing strict client authentication and monitoring migration parameters for anomalous max_encoders values can lower risk but does not eliminate the flaw.
Affected ProductsAI
spice-server as shipped in Red Hat Enterprise Linux and other distributions that include the SPICE remote desktop stack. The vulnerable code is the GLZ encoder dictionary restore path, exercised only when a SPICE client is authenticated and a VM live migration occurs with GLZ compression in use. No specific CPE strings were provided in the intelligence. Red Hat tracking is available at https://access.redhat.com/security/cve/CVE-2026-105959 and https://bugzilla.redhat.com/show_bug.cgi?id=2554008. An upstream fix is proposed in GitLab merge request 253 (https://gitlab.freedesktop.org/spice/spice/-/merge_requests/253); the exact released patched version is not confirmed in the provided data.
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The SPICE protocol server (spice-server) provides remote desktop access to virtual machines, including live migration between hypervisors. GLZ is a dictionary-based LZ-style compression codec used to reduce bandwidth for graphics and migration streams. In the GLZ encoder dictionary restore path-executed when a client participates in a live migration-a size_t value representing the required allocation size is implicitly truncated to an int before being passed to the malloc callback. When a malicious authenticated SPICE client supplies an oversized max_encoders value in migration data, the truncated size becomes far smaller than the actual need, and subsequent dictionary writes exceed the heap allocation, producing a heap buffer overflow. This is an integer overflow/wraparound (CWE-190) that directly leads to memory corruption.
Know when the next one hits your stack
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
Authenticated SPICE client gives PR:L; dependence on the live-migration window makes it AC:H; network-delivered migration data is AV:N; heap overflow in spice-server yields full C/I/A impact.
Primary rating from Vendor (redhat).
CVSS VectorVendor: redhat
DescriptionCVE.org
A flaw was found in spice-server. The GLZ encoder dictionary restore path truncates a size_t allocation size to int when calling the malloc callback, allowing a malicious authenticated SPICE client during VM live migration to trigger a massive heap buffer overflow by sending a crafted max_encoders value in migration data.
Executive ViewAI
spice-server, a component used in virtualized environments for remote access, contains a high-severity heap buffer overflow that an authenticated attacker could exploit during a live migration with GLZ compression, potentially causing memory corruption and disrupting virtual machine operations. While no public exploit has been identified, the lack of a vendor patch and the potential for host-level impact make this a significant risk for organizations relying on SPICE for virtualization management. Leadership should prioritize interim mitigations and monitor for the upstream fix (GitLab merge request 253) to protect critical infrastructure.
Disable GLZ compression for SPICE during live migration, restrict authenticated SPICE client connections to trusted networks and users, enforce strong authentication, monitor for abnormal migration behavior, and consider applying the upstream fix from GitLab merge request 253 if testing validates stability. No vendor patch is available; these interim measures reduce risk until an official update is released.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.
Integer overflow occurs when an arithmetic operation produces a result that exceeds the maximum value a given integer type can store.
EUVD-2026-102846
GHSA-m5f2-676c-jfj7
NVD
CVE.org
Vulnrichment
Exploit-DB