Home

Description

UltraVNC repeater through 1.8.2.2 contains an off-by-one error in the Base64 decode helper used for HTTP Basic authentication. In repeater/webgui/webutils.c:817, the wi_uudecode() function checks whether the input length exceeds the output buffer with a strict greater-than comparison (>), while the correct check should be greater-than-or-equal (>=). When strlen(authdata) equals sizeof(decode), the decoded output length (approximately 3/4 of input) does not overflow the buffer in current practice because the outer HTTP request bounds constrain the Authorization header. However, the defective check leaves a latent off-by-one condition that could become exploitable if the buffering constraints change. The current risk is limited to a one-byte write at the boundary of a 1024-byte stack buffer under constrained conditions.

PUBLISHED Reserved 2026-05-05 | Published 2026-07-01 | Updated 2026-07-09 | Assigner securin




LOW: 3.7CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L

Problem types

Off-by-one Error

Product status

Default status
unaffected

Any version
affected

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) finder

References

uvnc.com/ (UltraVNC project page) vendor-advisory

github.com/ultravnc/UltraVNC (UltraVNC source repository) product

www.securin.io/...ecode-off-by-one-bounded-ultravnc-repeater

cve.org (CVE-2026-44042)

nvd.nist.gov (CVE-2026-44042)

Download JSON