CVE-2026-53571Medium▾ TwilightPoC availablevite: `server.fs.deny` bypass on Windows alternate paths
▾ Twilight zone — High severity, or a signal on a lesser flaw
impact 27.5 · likelihood 0.1 · exploitation 12
A public proof-of-concept already exists for this vulnerability — see Exploit availability below.
Public exploit / PoC code seen in 1 source. Availability, not in-the-wild use.
Exploit-prediction probability, daily snapshots since Jul 29.
Disclosure to exploitation, from the record and what we observed since indexing it.
Disclosed via GHSA
0.6%
1 GitHub repo
Last analysed / modified upstream
high → medium
The contents of files that are specified by server.fs.deny can be returned to the browser on Windows.
Only apps that match the following conditions are affected:
--host or server.host config option)server.fs.allowVite’s dev server denies direct access to sensitive files through server.fs.deny, including entries such as .env, .env.*, and *.{crt,pem}. However, on Windows, the deny logic does not correctly normalize NTFS ADS path forms before access checks are applied.
Because of this, requests such as /.env::$DATA?raw are treated as allowed paths, while Windows resolves them to the original file's default data stream.
Similar to that, Windows allows accessing a file using a different name with the 8.3 short name compatibility feature. Vite did not reject accessing files via them.
$ npm create vite@latest
$ cd vite-project/
$ npm install
$ npm run dev
Access via browser at http://localhost:5173/.env::$DATA?raw
<img width="388" height="129" alt="deecc1315123883cfd0f9c26a002845a" src="https://github.com/user-attachments/assets/895c6012-4e2e-4a35-babb-69bbf3ee7170" />
Example expected result:
/.env::$DATA?raw returns the contents of .env/tls.pem::$DATA?raw returns the contents of tls.pemvite >= 8.0.0, <= 8.0.15vite >= 7.0.0, <= 7.3.4vite <= 6.4.2vite-plus <= 0.1.23Upgrade to a patched release:
vite 8.0.16vite 7.3.5vite 6.4.3vite-plus 0.1.24Field changes observed since this record was first indexed.
Connected by shared product, vendor, weakness, or advisory.
CVE-2026-112947Medium· 6.3Vite: First 4 bytes of files outside of `server.fs` setting is exposed by `?vite-wasm-instance`
CVE-2026-112946Medium· 6.3Vite: Files outside `server.fs.allow` could be served when project paths match system paths on non-Windows machine
CVE-2026-39363High· 7.5Vite is a frontend tooling framework for JavaScript
CVE-2025-58752Medium· 5.3Vite is a frontend tooling framework for JavaScript
CVE-2026-112945Low· 2.1Vite: Cross origin script execution through Vite custom middleware
CVE-2026-39364High· 7.5Vite is a frontend tooling framework for JavaScript