Vulnerability Description
UltraVNC viewer through 1.8.2.2 contains an off-by-one stack buffer overflow in the RFB ServerInit message handler. In vncviewer/ClientConnection.cpp, when the server-supplied nameLength equals exactly 2024 the code declares a 2024-byte stack buffer _dn[2024] and calls ReadString(_dn, 2024). ReadString writes the NUL terminator at buf[length], i.e., _dn[2024], one byte past the end of the stack buffer. A malicious VNC server can trigger this condition by advertising a desktop name of length 2024 in its ServerInit message. On release builds without stack canaries the single-byte NUL overwrite adjacent stack data. On builds with /GS stack protection the canary is corrupted and the process terminates, resulting in denial of service. User interaction (connecting the viewer to the malicious server) is required.
CVSS Score
HIGH
Affected Products
| Vendor | Product | Versions |
|---|---|---|
| Uvnc | Ultravnc | <= 1.8.2.2 |
Related Weaknesses (CWE)
References
- https://github.com/ultravnc/UltraVNCProduct
- https://uvnc.com/ProductRelease Notes
- https://www.securin.io/zero-days/cve-2026-7831-off-by-one-stack-overflow-viewer-
FAQ
What is CVE-2026-7831?
CVE-2026-7831 is a vulnerability with a CVSS score of 7.6 (HIGH). UltraVNC viewer through 1.8.2.2 contains an off-by-one stack buffer overflow in the RFB ServerInit message handler. In vncviewer/ClientConnection.cpp, when the server-supplied nameLength equals exactl...
How severe is CVE-2026-7831?
CVE-2026-7831 has been rated HIGH with a CVSS base score of 7.6/10. Review the CVSS metrics above for detailed severity breakdown.
Is there a patch for CVE-2026-7831?
Check the references section above for vendor advisories and patch information. Affected products include: Uvnc Ultravnc.