Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessLure victim viewer to malicious/MITM RFB endpoint
-
DeliverySend rfbConnFailed/rfbVncAuthFailed with reasonLen 0xFFFFFFFF
-
ExploitInteger overflow shrinks allocation to 256 bytes
-
ExecutionReadExact writes ~4GiB past heap buffer
-
PersistCorrupt heap for control flow
-
ImpactExecute code as viewer user
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 the victim to actively initiate an outbound UltraVNC viewer connection to an attacker-controlled endpoint - either a malicious VNC server or a man-in-the-middle positioned on the RFB stream (UI:P, passive user interaction). No authentication is needed (PR:N): the vulnerable rfbConnFailed and rfbVncAuthFailed message paths execute before any successful auth, so the attacker never needs valid VNC credentials. The concrete trigger is a server-supplied CARD32 reasonLen of 0xFFFFFFFF in the RFB failure-response path. Limiting factors: this is not a server-side listener bug, so it cannot be triggered by unsolicited inbound scanning - the attacker must lure the viewer or control the network path; exploitation is confined to the viewer/client component (versions through 1.8.2.2), and RCE beyond the confirmed heap-corruption crash is potential rather than demonstrated. |
| Impact | The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:P/VC:H/VI:H/VA:H, score 8.7) is internally consistent with the description: network-reachable, low complexity, no privileges, but requiring passive user interaction (UI:P) because the victim must initiate an outbound viewer connection. This is a client-side/reverse-direction vulnerability - the attacker does not scan and hit a listening service; instead the victim's viewer must connect to a malicious server or traverse an attacker-controlled network path, which meaningfully narrows opportunistic mass exploitation. No EPSS score, KEV listing, or SSVC decision was provided in the input, so probabilistic and automatable signals are unavailable and cannot be asserted. The counterweight is that the researcher independently reproduced a controlled heap-buffer-overflow write under AddressSanitizer, confirming the memory-safety defect is real and triggerable pre-auth; RCE is described as potential rather than demonstrated. Net: a genuine high-severity client-side memory-corruption issue, but real-world risk depends on luring or MITM-ing viewer connections rather than default exposure, favoring targeted over widespread exploitation. |
| Exploit ScenarioDerived | An attacker stands up a malicious VNC server (or interposes as a man-in-the-middle on an existing RFB session) and induces a victim to point their UltraVNC viewer at it - for example via a support link, a spoofed internal host, or ARP/DNS redirection. During the pre-authentication handshake the server returns an rfbConnFailed or rfbVncAuthFailed message with reasonLen=0xFFFFFFFF, overflowing the size calculation and writing past a 256-byte heap buffer in the victim's viewer, corrupting the heap toward code execution as the connecting user. The heap-buffer-overflow write was confirmed with AddressSanitizer, though a public weaponized exploit is not identified. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv3 – Jul 01, 2026
Remote code execution in the UltraVNC Viewer (all versions through 1.8.2.2) stems from an integer overflow in the RFB failure-response parser: a malicious or man-in-the-middle VNC server can send a reasonLen of 0xFFFFFFFF that wraps to 0 during buffer sizing, then stream 4 GiB into a 256-byte heap allocation. The flaw is reachable pre-authentication through connection-failure and auth-failure messages, so merely connecting a viewer to an attacker-controlled endpoint can corrupt the heap and potentially execute code as the user running the viewer. No public exploit identified at time of analysis, though the researcher confirmed a reliable heap-buffer-overflow write with AddressSanitizer.
Earlier versions of this analysis (2)
Client-side remote code execution in the UltraVNC viewer (vncviewer) through version 1.8.2.2 arises from an integer overflow in the RFB failure-response parser that a malicious or man-in-the-middle VNC server can trigger before any authentication succeeds. When the viewer connects, a server-supplied 4-byte reasonLen of 0xFFFFFFFF wraps to zero (reasonLen+1) so only 256 bytes are allocated, after which the code reads the original ~4 GiB length into that undersized heap buffer, corrupting the heap of the process running the viewer. There is no public exploit identified at time of analysis, though the researcher (securin) confirmed a heap-buffer-overflow WRITE with AddressSanitizer on a portable reproduction harness; the CVSS 4.0 base score is 8.7 (High).
Heap buffer overflow in the UltraVNC viewer (vncviewer) through version 1.8.2.2 allows a malicious or man-in-the-middle VNC server to corrupt memory in the connecting client, potentially achieving remote code execution as the user running the viewer. The flaw lives in the RFB failure-response parsing path, where a 4-byte attacker-controlled length field overflows during a size calculation, and it is reachable pre-authentication via the rfbConnFailed and rfbVncAuthFailed messages. No CISA KEV listing or public exploit has been identified, though the researcher confirmed the crash with AddressSanitizer using a reproduction harness.
RemediationAI
No vendor-released patch or fixed version number was identified in the provided data, so the exact upgrade target cannot be cited yet - monitor the vendor advisory at https://uvnc.com/ and the source repository at https://github.com/ultravnc/UltraVNC for a release above 1.8.2.2 and upgrade viewers immediately once published. Because this is a client-side flaw triggered by the viewer connecting outward, the most effective compensating control is to restrict which endpoints operators may connect to: only connect UltraVNC viewers to known, trusted servers and avoid connecting to untrusted or attacker-supplied addresses (trade-off: operational friction for ad-hoc support sessions). To defeat the man-in-the-middle vector, tunnel RFB traffic over an authenticated encrypted channel such as a VPN or SSH tunnel and disable plaintext RFB over untrusted networks (trade-off: added setup and no protection if the endpoint server itself is malicious). Where feasible, run the viewer as a low-privileged user and segment/limit outbound connectivity from support workstations to reduce blast radius until a patched build is available.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
UltraVNC is a Windows remote-desktop client/server implementing the RFB (Remote Framebuffer) protocol used by the VNC family. The bug lives in vncviewer/ClientConnection.cpp, where a server-supplied 4-byte CARD32 reasonLen field is passed as reasonLen+1 into CheckBufferSize(). Both operands are unsigned 32-bit, so reasonLen=0xFFFFFFFF makes reasonLen+1 wrap to 0 (the CWE-190 integer-overflow root cause), and CheckBufferSize allocates only its 256-byte minimum. The follow-on ReadString(m_netbuf, reasonLen) then performs a ReadExact for the original ~4 GiB length into that undersized heap buffer, producing an out-of-bounds heap WRITE at offset 256. The vulnerable code paths are rfbConnFailed (auth-scheme negotiation) and rfbVncAuthFailed (post-handshake), both of which execute before any successful authentication. CPE cpe:2.3:a:uvnc:ultravnc identifies the affected product.
Know when Ultravnc gets its next vulnerability
- 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
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
Network-reachable pre-auth flaw (AV:N/PR:N) but victim must initiate the viewer connection (UI:R); heap corruption enabling code execution as the user gives C/I/A:H, scope unchanged.
Primary rating from Vendor (securin).
CVSS VectorVendor: securin
Lifecycle Timeline
1DescriptionCVE.org
UltraVNC viewer through 1.8.2.2 contains an integer overflow leading to a heap buffer overflow in the RFB protocol failure-response parsing path. In vncviewer/ClientConnection.cpp, the 4-byte network-supplied reasonLen field (type CARD32) is passed as reasonLen+1 to CheckBufferSize(). Because both operands are unsigned 32-bit, a reasonLen of 0xFFFFFFFF overflows to 0, causing CheckBufferSize to allocate only 256 bytes. The subsequent ReadString(m_netbuf, reasonLen) call then performs ReadExact for the original 4 GiB length into that 256-byte heap buffer. This overflow is reachable via rfbConnFailed (auth-scheme negotiation) and rfbVncAuthFailed (post-handshake) message types without successful authentication. A malicious VNC server, or any man-in-the-middle on the RFB stream, can trigger this condition when the victim viewer connects, potentially resulting in remote code execution as the user running the viewer. The crash was confirmed with AddressSanitizer on a portable reproduction harness (heap-buffer-overflow WRITE at offset 256).
Executive ViewAI
UltraVNC Viewer versions through 1.8.2.2 contain a high-severity remote code execution vulnerability (CVSS 8.7) with no public exploit identified at time of analysis. The vulnerability can be triggered by connecting to a malicious VNC server; organizations must urgently implement mitigations as no vendor patch is currently available.
No vendor-released patch identified at time of analysis. Interim mitigations: restrict VNC access to whitelisted trusted servers via firewall rules, tunnel all VNC traffic through VPN with endpoint certificate validation, disable VNC services if not operationally essential, implement EDR monitoring for suspicious process execution on affected systems, and maintain enhanced logging and alerting on VNC connection attempts and failures.
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.
Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.
Related Vulnerabilities in UltraVNC Memory Corruption and Cryptographic Flaws
View all 10UltraVNC Launcher 1.2.4.0 contains a denial of service vulnerability in the Repeater Host configuration field that allow
UltraVNC versions up to 1.6.4.0 suffer from an uncontrolled search path vulnerability in version.dll loaded by the Servi
UltraVNC Launcher 1.2.4.0 contains a denial of service vulnerability in its password configuration properties that allow
UltraVNC revision 1203 has out-of-bounds access vulnerability in VNC client inside RAW decoder, which can potentially re
UltraVNC revision 1211 has multiple improper null termination vulnerabilities in VNC server code, which result in out-of
UltraVNC revision 1211 has a heap buffer overflow vulnerability in VNC server code inside file transfer offer handler, w
UltraVNC revision 1211 has a heap buffer overflow vulnerability in VNC server code inside file transfer request handler,
UltraVNC revision 1211 has multiple off-by-one vulnerabilities in VNC server code, which can potentially result in code
UltraVNC revision 1211 has a heap buffer overflow vulnerability in VNC server code inside file transfer handler, which c
UltraVNC revision 1206 has multiple off-by-one vulnerabilities in VNC client code connected with improper usage of Clien
UltraVNC revision 1207 has multiple out-of-bounds access vulnerabilities connected with improper usage of ClientConnecti
UltraVNC revision 1207 has multiple out-of-bounds access vulnerabilities connected with improper usage of SETPIXELS macr
EUVD-2026-40884
GHSA-wxqv-4fpj-f62j
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB