CVE-2026-53571: Vite: `server.fs.deny` bypass on Windows alternate paths

Published Jun 15, 2026
·
Updated

Summary

The contents of files that are specified by server.fs.deny can be returned to the browser on Windows.

Impact

Only apps that match the following conditions are affected:

- explicitly exposes the Vite dev server to the network (using --host or server.host config option) - the sensitive file exists in the allowed directories specified by server.fs.allow - either of: - the sensitive file exists in an NTFS volume - the dev server is running on Windows and the sensitive file exists in a volume that 8.3 short name generation is enabled (it is enabled by default on system volumes)

Details

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.

PoC bash $ 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.pem

Other sources

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.

MITRE

Affected Software

9 affected componentsFixes available
npm/vite-plus<=0.1.23
0.1.24
npm/vite<=6.4.2
6.4.3
npm/vite>=7.0.0<=7.3.4
7.3.5
npm/vite>=8.0.0<=8.0.15
8.0.16
All of the following
Any of the following
vitejs Vite Node.js<6.4.3
vitejs Vite Node.js>=7.0.0<7.3.5
vitejs Vite Node.js>=8.0.0<8.0.16
Voidzero Vite\+ Node.js<0.1.24
Microsoft Windows

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade npm/vite-plus to a version that resolves this vulnerability.

    Fixed in 0.1.24
  2. Upgrade

    Upgrade npm/vite to a version that resolves this vulnerability.

    Fixed in 6.4.3
  3. Upgrade

    Upgrade npm/vite to a version that resolves this vulnerability.

    Fixed in 7.3.5
  4. Upgrade

    Upgrade npm/vite to a version that resolves this vulnerability.

    Fixed in 8.0.16

Event History

Jun 15, 2026
Advisory Published
via GitHub·05:17 PM
Data Sourced
via GitHub·05:17 PM
DescriptionWeaknessAffected Software
Jun 22, 2026
CVE Published
via MITRE·04:10 PM
Data Sourced
via MITRE·04:10 PM
DescriptionWeakness
Data Sourced
via NVD·06:16 PM
DescriptionSeverityWeaknessAffected Software
Free Weekly Intel

Don't miss critical vulnerabilities

Join thousands of security professionals who receive our weekly digest of trending CVEs, zero-days, and exploited vulnerabilities.

No spam. Unsubscribe anytime.

Frequently Asked Questions

1

What is the severity level of CVE-2026-53571?

CVE-2026-53571 has a high severity level of 8.2.

2

What vulnerability does CVE-2026-53571 address?

CVE-2026-53571 addresses a bypass vulnerability related to `server.fs.deny` on Windows alternate paths.

3

What impact does CVE-2026-53571 have on applications?

CVE-2026-53571 allows the contents of files specified by `server.fs.deny` to be returned to the browser, affecting network-exposed Vite dev servers.

4

How can I mitigate CVE-2026-53571 in my application?

To mitigate CVE-2026-53571, ensure that your Vite dev server is not exposed to the network or utilize updated configurations to secure file access.

5

Which software is affected by CVE-2026-53571?

CVE-2026-53571 affects npm/vite, vitejs Vite Node.js, npm/vite-plus, and Voidzero Vite+ Node.js.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203