CVE-2026-93894

Workspace Buffer Overflow in Vinyl Cache .upper() and .lower() Methods Leading to Remote Denial of Service

Published Sep 18, 2026 CVSS 4.0 · 2.3 Low EPSS < 1% KEV · Not listed
Description
In Vinyl Cache before 9.0,2, workspace buffer overflow vulnerability was found in the .upper() and .lower() string type methods of VCL. This can be used as a remote denial of service (DoS) vector to make the child process segfault or assert, and then restart. Effectively exploiting this vulnerability requires prior knowledge about the VCL in use and the ability to craft a request that contains a string that is long enough to fill the remaining workspace at the call site while staying under the different request size limits (http_req_size, http_req_hdr_len, etc.).

Remediation

Vendor Solution

Update to unaffected Version


Vendor Workaround

replace the .upper() and .lower() VCL type method calls by their respective vmod_std counterparts: std.toupper() and std.tolower().

Tracking

Sign in to view the affected projects.

Advisories

No advisories available
History
Type Values Removed Values Added
First Time appeared Varnish-software
Varnish-software varnish Cache
Vinyl-cache
Vinyl-cache vinyl Cache
Vendors & Products Varnish-software
Varnish-software varnish Cache
Vinyl-cache
Vinyl-cache vinyl Cache
Type Values Removed Values Added
Title Workspace Buffer Overflow in Vinyl Cache .upper() and .lower() Methods Leading to Remote Denial of Service
Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Type Values Removed Values Added
Description In Vinyl Cache before 9.0,2, workspace buffer overflow vulnerability was found in the .upper() and .lower() string type methods of VCL. This can be used as a remote denial of service (DoS) vector to make the child process segfault or assert, and then restart. Effectively exploiting this vulnerability requires prior knowledge about the VCL in use and the ability to craft a request that contains a string that is long enough to fill the remaining workspace at the call site while staying under the different request size limits (http_req_size, http_req_hdr_len, etc.).
Weaknesses CWE-787
References
Metrics cvssV4_0

{'score': 2.3, 'vector': 'CVSS:4.0/AV:N/AC:H/AT:P/PR:L/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N/AU:N/R:A/V:D/RE:L/U:Clear'}

Weaknesses

Sources

Status
PUBLISHED
Assigner
mitre
Published
Updated
Sep 19, 2026, 2:01 PM
Reserved
Sep 18, 2026, 8:30 PM
Status
Deferred
Published
Sep 18, 2026, 9:18 PM
Modified
Sep 22, 2026, 8:00 PM