Severity by source
AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H
Race condition dependent on a parallel victim session raises AC to H; needs an authenticated user with VM.Console (PR:L), and a hijacked console yields full C/I/A over the target VM.
Primary rating from Vendor (mitre).
CVSS VectorVendor: mitre
Lifecycle Timeline
4DescriptionCVE.org
A race condition between the vncproxy and vncwebsocket API calls in Proxmox Virtual Environment (PVE) 9.x pve-manager 9.1.x before 9.1.9 and 8.4.x before 8.4.19; qemu-server 9.1.x before 9.1.7 and 8.4.x before 8.4.7; and pve-container 6.1.x before 6.1.3 and 5.3.x before 5.3.4 allows an attacker with privileges to call "vncproxy" to hijack a VNC session that is established in parallel by a different user for a different VM.
AnalysisAI
Session hijacking in Proxmox Virtual Environment (PVE 9.x/8.4.x) lets an authenticated user with rights to call the "vncproxy" API race the parallel "vncwebsocket" call and seize a VNC console session that a different user legitimately opened for a different VM. The flaw (CWE-362, CVSS 7.2) grants full interactive console access to another tenant's virtual machine, breaking isolation between users. There is no public exploit identified at time of analysis and it is not listed in CISA KEV.
Technical ContextAI
Proxmox VE exposes VM/CT console access through a two-step API flow: a client first calls vncproxy to spin up a proxied VNC server for a specific VM and obtain a one-time ticket/port, then completes the connection via the vncwebsocket endpoint that upgrades to the actual VNC stream. CWE-362 (Race Condition) here is a time-of-check/time-of-use style flaw: because the pairing between the vncproxy allocation and the vncwebsocket consumer is not atomically bound to the requesting user and target VM, two console requests happening in parallel can be crossed, so one user's websocket attaches to another user's freshly-allocated VNC session. The fix spans three affected components - pve-manager (the web UI/API daemon that brokers the calls), qemu-server (VM/QEMU console handling), and pve-container (LXC console handling) - indicating the defective handshake logic is shared across both VM and container console paths. The CPE data is uninformative (a placeholder 'n/a' string), so exact affected product identification comes from the version ranges in the description, not from structured CPE.
RemediationAI
Vendor-released patch: upgrade pve-manager to 9.1.9 (8.x line: 8.4.19), qemu-server to 9.1.7 (8.x line: 8.4.7), and pve-container to 6.1.3 (5.x line: 5.3.4); apply all three together via the standard Proxmox repositories (apt update && apt full-upgrade) since the fix is split across the console-handling packages, then restart the pveproxy/pvedaemon services as directed. Until patched, reduce exposure by tightening console permissions: revoke VM.Console from users who do not strictly need interactive console access so fewer accounts can call vncproxy, and restrict access to the API/web UI (TCP 8006) to trusted management networks or a VPN to shrink the pool of accounts that could race a session - the trade-off is that legitimate delegated console users lose noVNC/console access until re-granted. Avoid encouraging many users to open consoles simultaneously on shared clusters while unpatched. Track the official advisory at https://forum.proxmox.com/threads/proxmox-virtual-environment-security-advisories.149331/post-849971.
LibreNMS before 24.10.0 allows a remote attacker to execute arbitrary code via OS command injection involving AboutContr
Reachable assertion in Open5GS up to version 2.7.6 allows remote unauthenticated attackers to crash the Diameter CER han
A Command Injection issue in the payload build page in BYOB (Build Your Own Botnet) 2.0 allows attackers to execute arbi
Denial of service in Open5GS 2.7.6 and earlier allows network-adjacent attackers with low-privilege Diameter Gx peer acc
Denial of service in Open5GS HSS (Home Subscriber Server) versions 2.7.0 through 2.7.6 is triggered remotely by manipula
Remote command injection in Control Web Panel allows unauthenticated attackers to execute arbitrary OS commands as root
LINQPad before 5.52.01 Pro edition is vulnerable to Unsafe Deserialization in LINQPad.AutoRefManager::PopulateFromCache(
Remote code execution in dash-uploader (Python package for Plotly Dash) versions 0.1.0 through 0.7.0a2 allows unauthenti
Command injection in LiteLLM 1.18.10 lets attackers who can configure MCP (Model Context Protocol) servers supply arbitr
SQL injection in AzuraCast's backup restore flow (versions up to and including 0.23.7) lets an attacker achieve privileg
Arbitrary file read in Yu AI Code Mother v4.3 lets anonymous, remote attackers retrieve files outside the intended previ
Remote code execution in APScheduler (all versions through 3.10.x and 4.0.0a5) is achievable when applications deseriali
Same weakness CWE-362 – Race Condition
View allSame technique Information Disclosure
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-45182
GHSA-vjf4-fxgw-f2mh