Skip to main content

TightVNC Viewer EUVDEUVD-2026-94975

| CVE-2026-107611 HIGH
Out-of-bounds Read (CWE-125)
2026-10-08 securin GHSA-r575-8hw6-vfq3
7.1
CVSS 3.1 · Vendor: securin
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Lure victim to malicious VNC server
  2. Exploit
    Send crafted ZRLE tiles with oversized palette indices
  3. Execution
    Trigger unvalidated out-of-bounds heap read in decoder
  4. Impact
    Leak heap bytes to framebuffer or crash viewer

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Bounds checking, read limits
MITRE ATT&CK

1 technique across 1 tactic: Collection

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires the victim to run TightVNC Viewer for Windows (version before 2.8.88) and to initiate a VNC session to an attacker-controlled or compromised server (UI:R); the server must negotiate ZRLE encoding and send tiles whose palette indices exceed the declared palette size. Limiting factors: no code execution is achieved, impact is confined to crashing the viewer (DoS) and limited heap disclosure into the rendered framebuffer; exploitation is server-to-client, so the attacker must control or MITM the server the victim connects to rather than reaching the victim directly. No authentication of the viewer is required by the server side (PR:N), and default viewer configurations are affected since ZRLE is a standard supported encoding.

Impact

This is a medium-to-high severity client-side flaw (CVSS 7.1) whose score is driven almost entirely by availability impact (A:H, viewer crash) plus a low confidentiality leak (C:L, heap bytes rendered into the framebuffer). The CVSS vector is internally consistent with the description: AV:N/AC:L/PR:N are correct because a VNC server transmits the malicious ZRLE tiles over the network with no authentication of the viewer, and UI:R correctly reflects that the victim must actively initiate a connection to the attacker-controlled or compromised server. This is a reverse/server-to-client attack, not a remotely reachable service bug, which materially lowers real-world risk versus the raw 7.1 would suggest. No EPSS score was provided, so exploitation probability cannot be quantified. There is no CISA KEV listing and no POC referenced - exploitation status is 'no public exploit identified at time of analysis.' No SSVC decision data was supplied. Net: this is a legitimate bug to patch (an out-of-bounds read is confirmed by vendor with a fix), but it is a lower operational priority than its 7.1 implies because it requires user interaction, an attacker-controlled server, and yields only crash plus minor information disclosure rather than code execution. Missing signals (EPSS, SSVC, POC) should be treated as unknown, not as low - verify against vendor advisory if prioritizing.

Exploit ScenarioDerived

An attacker stands up a malicious VNC server (or compromises a legitimate one) and lures a TightVNC Viewer user to connect, for example via a phishing link, a rogue connection profile, or a man-in-the-middle on an existing session. Once connected, the server sends ZRLE-encoded tiles containing palette indices larger than the declared palette size; readPaletteRleTile()/readPackedPaletteTile() use those indices without bounds-checking, reading heap memory beyond the palette allocation. The result is either garbled heap data copied into the displayed framebuffer (minor information disclosure) or a read fault that terminates the viewer. No public exploit identified at time of analysis.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 08, 2026

Out-of-bounds heap reads in the ZRLE decoder of GlavSoft TightVNC Viewer for Windows (versions before 2.8.88) let a malicious or compromised VNC server crash the viewer and leak small amounts of adjacent heap memory into the rendered framebuffer. The victim must initiate the VNC session to the attacker-controlled or man-in-the-middle'd server and the connection must negotiate ZRLE encoding; the server then sends palette-based tiles whose colour indices exceed the declared palette size, causing readPaletteRleTile() and readPackedPaletteTile() to index past the end of the palette allocation. The assessed vector is CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:H (7.1), a medium-to-high client-side flaw whose score is driven almost entirely by availability impact (viewer termination) plus a limited confidentiality leak (heap bytes rendered as garbled colours), with no code execution achieved; no public exploit code has been identified at time of analysis, and vendor patches are available in 2.8.88.

RemediationAI

Upgrade TightVNC Viewer for Windows to 2.8.88 or later, which is the vendor-released fix containing the validated palette-index handling; verify the installed build against the release notes at https://www.tightvnc.com/whatsnew.php and track the upstream defect at https://sourceforge.net/p/vnc-tight/bugs/1657/. Where an immediate upgrade is not possible, the most effective compensating control is to avoid connecting the viewer to untrusted or unverified VNC servers at all, and where remote access is needed, tunnel the VNC session through an authenticated, encrypted channel such as SSH port forwarding or a VPN so that a network attacker cannot impersonate or MITM the server and inject crafted ZRLE tiles; the trade-off is operational overhead in setting up and maintaining the tunnel. If the viewer's encoding negotiation allows it, deprioritizing or disabling ZRLE so that a less capable encoding (for example Hextile or raw) is negotiated removes the vulnerable code path, at the cost of higher bandwidth consumption and reduced responsiveness on slow links, and this depends on the client honoring the configured encoding preference chain versus the server's proposal. Restricting outbound connections from workstations to known-good VNC endpoints at the firewall is a further mitigation, but it also blocks legitimate ad-hoc administration sessions. Note that no vendor patch removes the underlying protocol weakness for older builds, so these controls are interim measures only.

Affected VersionsENISA

TightVNC 0 <2.8.88

Affected Packages

euvd tightvnc fix: 2.8.88

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

TightVNC is a cross-platform implementation of the RFB (VNC) protocol, and ZRLE (Zlib Run-Length Encoding) is one of the standard encodings a server may negotiate. In indexed-colour (palette) mode, a ZRLE tile carries a declared palette size followed by palette entries (RGB triples) and then per-pixel palette indices; the decoder is expected to validate every index against the palette size before performing a lookup. In TightVNC Viewer for Windows before 2.8.88, the routines readPaletteRleTile() and readPackedPaletteTile() use the attacker-supplied index directly as an offset into the palette array, which is a classic CWE-125 out-of-bounds read. Because the palette lives on the heap, indices past the allocation read adjacent heap memory: the resulting bytes are copied into the framebuffer and displayed as garbled colours (low confidentiality impact), or the out-of-range access faults and terminates the viewer (high availability impact). The CPE cpe:2.3:a:glavsoft:tightvnc:*:*:*:*:*:*:*:* confirms the affected product family is GlavSoft's TightVNC, and the missing version constraints in the CPE mean all releases prior to the fixed build must be assumed vulnerable. The flaw is server-to-client: the attacker controls or intercepts the server the viewer connects to, rather than reaching the viewer directly, and no privileges are required on the viewer side per the PR:N element of the assessed vector.

Know when Tightvnc gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (securin) PRIMARY 7.1 HIGH
AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:H
vuln.today AI 7.1 HIGH

Malicious server delivers tiles over the network (AV:N/AC:L/PR:N) but the victim must connect (UI:R); crash gives A:H and heap bytes rendered to screen give C:L, with no integrity impact.

3.1 AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:H
4.0 AV:N/AC:L/AT:N/PR:N/UI:A/VC:L/VI:N/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (securin).

CVSS VectorVendor: securin

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
Required
Scope
Unchanged
Confidentiality
Low
Integrity
None
Availability
High

DescriptionCVE.org

An out-of-bounds read vulnerability in the ZRLE decoder of GlavSoft TightVNC Viewer for Windows before 2.8.88 allows a malicious or compromised VNC server to read heap memory beyond the palette allocation and crash the viewer by sending ZRLE-encoded tiles whose palette indices exceed the declared palette size. readPaletteRleTile() and readPackedPaletteTile() use the attacker-supplied index to look up colours without validating it against the palette size; out-of-bounds heap data is copied into the framebuffer (garbled display) or the read faults, terminating the viewer.

Executive ViewAI

Why It Matters

TightVNC Viewer for Windows versions before 2.8.88 contains a heap out-of-bounds read that an attacker can trigger by luring a user to connect to a malicious or compromised VNC server. This unauthenticated flaw requires user interaction and can crash the viewer while leaking small amounts of heap memory, posing a moderate risk to organizations that rely on VNC for remote administration. No public exploit identified at time of analysis, but vendor patches are available.

Business Impact: Medium
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.2%
Top 87% exploitable
Prevalence
Medium
popular free Windows VNC client, common but not universally deployed
Data Quality
4 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
Medium
Technical Impact
Partial

Priority Score

36
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +36
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

CVE-2023-27830 CRITICAL POC
9.0 Apr 12

TightVNC before v2.8.75 allows attackers to escalate privileges on the host operating system via replacing legitimate fi

CVE-2021-42785 CRITICAL
9.8 Nov 23

Buffer Overflow vulnerability in tvnviewer.exe of TightVNC Viewer allows a remote attacker to execute arbitrary instruct

CVE-2019-8287 CRITICAL
9.8 Oct 29

TightVNC code version 1.3.10 contains global buffer overflow in HandleCoRREBBP macro function, which can potentially res

CVE-2019-15679 CRITICAL
9.8 Oct 29

TightVNC code version 1.3.10 contains heap buffer overflow in InitialiseRFBConnection function, which can potentially re

CVE-2019-15678 CRITICAL
9.8 Oct 29

TightVNC code version 1.3.10 contains heap buffer overflow in rfbServerCutText handler, which can potentially result cod

CVE-2026-107615 HIGH
7.8 Oct 08

Local privilege escalation in GlavSoft TightVNC Server for Windows before 2.8.88 allows an authenticated local user to e

CVE-2026-107612 HIGH
7.8 Oct 08

Local privilege escalation in TightVNC Server for Windows before 2.8.88 allows an authenticated low-privileged user to t

CVE-2019-15680 HIGH
7.5 Oct 29

TightVNC code version 1.3.10 contains null pointer dereference in HandleZlibBPP function, which results Denial of System

CVE-2026-107614 MEDIUM
6.1 Oct 08

Denial of service in TightVNC Server for Windows before 2.8.88: a local authenticated user can trigger an integer underf

CVE-2026-107613 MEDIUM
5.9 Oct 08

Denial of service in GlavSoft TightVNC Server for Windows (versions before 2.8.88) allows unauthenticated remote attacke

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy