CVE-2026-53571 json
Vite: `server.fs.deny` bypass on Windows alternate paths
published 2026-06-15 4 mo ago modified 2026-10-27 12 d ago also GHSA-fx2h-pf6j-xcff , EUVD-2026-38303
- cvss
- 7.5
- version 3.1, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.6%
- EPSS 0.6% chance of exploitation in 30 days, percentile 47%
- public exploits
- 0
- none known
Summary
Vite is a frontend tooling framework for JavaScript. Prior to 8.0.16, 7.3.5, and 6.4.3, the contents of files that are specified by server.fs.deny can be returned to the browser on Windows. Vite’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. This vulnerability is fixed in 8.0.16, 7.3.5, and 6.4.3.
Patch / fix
- npm vite 6.4.3, 7.3.5, 8.0.16
- npm vite-plus 0.1.24
- vitejs vite 6.4.3, 7.3.5, 8.0.16
- voidzero vite+ 0.1.24
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- no
- Technical impact
- partial
- Assessed
- 4 mo ago
Exploit prediction
0.58% chance of exploitation in the next 30 days, higher than 47% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- github.com https://github.com/vitejs/vite/security/advisories/GHSA-fx2h-pf6j-xcff referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 4.0 | 8.2 | CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N |
| CNA | 4.0 | 8.2 | CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X |
| NVD | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| npm | vite | >=8.0.0, <8.0.16 >=7.0.0, <7.3.5 <6.4.3 |
8.0.16 7.3.5 6.4.3 |
| npm | vite-plus | <0.1.24 |
0.1.24 |
Affected products
- vitejs vite
Classification
References
-
github.com
/vitejs/vite/security/advisories/GHSA-fx2h-pf6j-xcff
exploit, web, vendor-advisory
-
nvd.nist.gov
/vuln/detail/CVE-2026-53571
advisory
-
github.com
/vitejs/vite
package
Sources
- CVE List CVE-2026-53571
- GitHub Advisory GHSA-fx2h-pf6j-xcff
- NVD CVE-2026-53571
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.