vite allows server.fs.deny bypass via backslash on Windows
Package
Affected versions
>= 7.1.0, <= 7.1.10
>= 7.0.0, <= 7.0.7
>= 6.0.0, <= 6.4.0
>= 2.9.18, < 3.0.0
>= 3.2.9, < 4.0.0
>= 4.5.3, < 5.0.0
>= 5.2.6, <= 5.4.20
Patched versions
7.1.11
7.0.8
6.4.1
5.4.21
5.4.21
5.4.21
5.4.21
Description
Published to the GitHub Advisory Database
Oct 20, 2025
Reviewed
Oct 20, 2025
Published by the National Vulnerability Database
Oct 20, 2025
Last updated
Oct 21, 2025
Summary
Files denied by
server.fs.deny
were sent if the URL ended with\
when the dev server is running on Windows.Impact
Only apps that match the following conditions are affected:
server.host
config option)Details
server.fs.deny
can contain patterns matching against files (by default it includes.env
,.env.*
,*.{crt,pem}
as such patterns). These patterns were able to bypass by using a back slash(\
). The root cause is thatfs.readFile('/foo.png/')
loads/foo.png
.PoC

### References - https://github.com/vitejs/vite/security/advisories/GHSA-93m4-6634-74q7 - https://github.com/vitejs/vite/commit/f479cc57c425ed41ceb434fecebd63931b1ed4ed - https://nvd.nist.gov/vuln/detail/CVE-2025-62522