Description
UltraVNC repeater through 1.8.2.2 contains a global buffer overflow in its embedded HTTP administration server. The functions wi_senderr() and wi_replyhdr() in repeater/webgui/webutils.c write the caller-supplied HTTP request URI into a fixed 1000-byte global buffer (hdrbuf) via unchecked sprintf calls. The HTTP receive buffer accepts URIs up to approximately 150 KB (WI_RXBUFSIZE = 153600), so an unauthenticated attacker who can reach the repeater HTTP port (default TCP 80) can overflow hdrbuf by at least 500 bytes with a single HTTP request containing a URI of 1500 bytes or longer, corrupting adjacent .bss-segment globals. The overflow occurs before any authentication check, making it reachable without credentials. A remote, unauthenticated attacker can achieve arbitrary code execution on the host running the repeater.
Problem types
Product status
Any version
Timeline
| 2026-06-02: | Vulnerability discovered during security audit |
| 2026-06-17: | Reported to vendor (coordinated disclosure) |
| 2026-09-15: | Planned public disclosure (90-day window) |
Credits
Arjun Basnet, Securin (arjun.basnet@securin.io)
References
uvnc.com/ (UltraVNC project page)
github.com/ultravnc/UltraVNC (UltraVNC source repository)
www.securin.io/...ffer-overflow-repeater-http-admin-ultravnc