{
  "affected": [
    {
      "ranges": [
        {
          "database_specific": {
            "extracted_events": [
              {
                "introduced": "0.9.12"
              },
              {
                "fixed": "0.9.15"
              }
            ],
            "source": [
              "DESCRIPTION",
              "REFERENCES"
            ]
          },
          "events": [
            {
              "introduced": "0a70095271d845d16a3ed17354841b01f33963ad"
            },
            {
              "fixed": "9b54b1ec32731bd23158ca014dc18014db4194c3"
            },
            {
              "fixed": "540332be3e0acc566fa64da6f1b4680c72c724dd"
            }
          ],
          "repo": "https://github.com/libvnc/libvncserver",
          "type": "GIT"
        }
      ]
    }
  ],
  "aliases": [
    "GHSA-v9pm-47h4-jcq8"
  ],
  "database_specific": {
    "cna_assigner": "GitHub_M",
    "cwe_ids": [
      "CWE-122",
      "CWE-787"
    ],
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/50xxx/CVE-2026-50538.json"
  },
  "details": "LibVNCClient is a library for easy implementation of a VNC client. In versions 0.9.12 through 0.9.15, a malicious (or man-in-the-middle) VNC server can force a connecting `libvncclient` to write attacker-controlled data past the end of its framebuffer. This is an out-of-bounds heap write with attacker-controlled length, contents, and offset. It needs no authentication (the attacker\nis the server), works in a default build with default settings, and fires from a single `FramebufferUpdate` the moment the victim connects. It crashes any client unconditionally (denial of service); we also demonstrated it overwriting an application callback pointer and redirecting execution to attacker-chosen code (code execution) under the default configuration. Commit 540332be3e0acc566fa64da6f1b4680c72c724dd patches the issue.",
  "id": "CVE-2026-50538",
  "modified": "2026-08-27T11:31:14.784117231Z",
  "published": "2026-08-21T21:03:58.147Z",
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/50xxx/CVE-2026-50538.json"
    },
    {
      "type": "ADVISORY",
      "url": "https://github.com/LibVNC/libvncserver/security/advisories/GHSA-v9pm-47h4-jcq8"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-50538"
    },
    {
      "type": "FIX",
      "url": "https://github.com/LibVNC/libvncserver/commit/540332be3e0acc566fa64da6f1b4680c72c724dd"
    }
  ],
  "schema_version": "1.9.0",
  "severity": [
    {
      "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H",
      "type": "CVSS_V3"
    }
  ],
  "summary": "libvncclient Tight decoder has an attacker-controlled heap out-of-bounds write"
}