CVE-2026-44988 PUBLISHED

LibVNCClient Tight Gradient decoding allows malicious server-triggered heap/stack OOB writes

Assigner: GitHub_M
Reserved: 08.05.2026 Published: 27.05.2026 Updated: 27.05.2026

LibVNCClient is a library for easy implementation of a VNC client. In 0.9.15 and earlier, LibVNCClient's Tight encoding decoder uses fixed-size 2048-pixel scratch buffers for the Gradient filter, but it does not reject Tight rectangles whose width is larger than 2048 pixels. A malicious VNC server can send a crafted FramebufferUpdate rectangle using Tight encoding with NoZlib | ExplicitFilter and the Gradient filter. When a LibVNCClient-based client connects, the client processes the server-controlled rectangle width and writes beyond fixed-size Gradient buffers. This vulnerability is fixed with commit 5b270544b85233668b98161323297d418a8f5fd1.

Metrics

CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
CVSS Score: 8.8

Product Status

Vendor LibVNC
Product libvncserver
Versions
  • Version <= 0.9.15 is affected

References

Problem Types

  • CWE-787: Out-of-bounds Write CWE