Vite server.fs.deny bypassed with loader query parameters
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Attack requirements
- Present
- Impact type
- Security bypass
- Confidentiality · integrity · availability
- Low · None · None
- Fix status
- Fixed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA and GitHub. Impact type from CWE-284.
Summary
Vite from 6.4.4 before 6.4.5 evaluates server.fs.deny before stripping loader query parameters such as ?raw, so the deny check can be bypassed. When the development server is exposed to the network and a sensitive file is inside server.fs.allow but matched by server.fs.deny, an unauthenticated remote attacker can append one of these query parameters to retrieve the denied file. The flaw is a validate-before-canonicalize ordering error (CWE-180) that results in improper access control (CWE-284).
Written with Claude Haiku 5.5 from the sources below · 2026-11-05
Description from the CNA
Vite is a frontend tooling framework for JavaScript. From 6.4.4 until 6.4.5, the Vite development server can evaluate server.fs.deny before stripping loader query parameters such as ?raw, ?import&raw, or ?import&url&inline. When the development server is exposed to the network and a sensitive file is inside server.fs.allow but matched by server.fs.deny, an unauthenticated attacker can append one of these queries and retrieve the denied file. This issue is fixed in version 6.4.5.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- Yes
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| vitejs | vite | 6.4.4 to before 6.4.5 | 6.4.5 | Patch available | CNA |
| — | vite (npm) | 6.4.4 to before 6.4.5 | 6.4.5 | Patch available | GHSA-8g5g-mxqh-grgj |
- vite Vendorvitejs Affected 6.4.4 to before 6.4.5 Fixed in 6.4.5 Patch available CNA
- vite (npm) Vendor— Affected 6.4.4 to before 6.4.5 Fixed in 6.4.5 Patch available GHSA-8g5g-mxqh-grgj
Remediation
Update Vite to version 6.4.5, which fixes the issue for the vitejs vite package and the npm vite package. The sources list no fixed version for Red Hat products.
Written with Claude Haiku 5.5 from the sources below · 2026-11-05
- Fix · CNA vite (vitejs) Fixed in 6.4.5
- Fix · GHSA-8g5g-mxqh-grgj vite (npm) Fixed in 6.4.5 Advisory →
Vendor assessments
Red Hat
Red Hat rating: Important. Red Hat's page for this CVE →
Not affected: 13 products
- Ansible Automation Orchestrator 2026
- OpenShift Serverless
- Red Hat AMQ Broker 7
- Red Hat Ansible Automation Platform 2
- Red Hat Build of Keycloak
- Red Hat Build of Podman Desktop
- Red Hat Hardened Images
- Red Hat JBoss Enterprise Application Platform 8
- Red Hat JBoss Enterprise Application Platform Expansion Pack
- Red Hat OpenShift AI (RHOAI)
- Red Hat OpenShift Dev Spaces
- Red Hat Trusted Artifact Signer
- streams for Apache Kafka 3
Timeline
- 2026-10-28 Threatist record created from CVE-2026-118662
- 2026-10-29 Alias added: GHSA-8g5g-mxqh-grgj
- 2026-10-29 Fix available: npm/[email protected] · GHSA-8g5g-mxqh-grgj
- 2026-10-29 CVSS score added · GHSA-8g5g-mxqh-grgj
- 2026-10-29 Weakness changed · GHSA-8g5g-mxqh-grgj
- 2026-10-29 7 new references · GHSA-8g5g-mxqh-grgj
- 2026-10-30 Priority changed: MEDIUM → LOW
- 2026-11-03 CISA SSVC decision points changed
- 2026-11-05 Affected versions changed · Red Hat
- 2026-11-05 CVSS score added · Red Hat
References
Other 6
- https://github.com/vitejs/vite/security/advisories/GHSA-8g5g-mxqh-grgj
- https://github.com/vitejs/vite/pull/22160
- https://github.com/vitejs/vite/pull/23855
- https://github.com/vitejs/vite/commit/91e40d7bf9777057bbd31c3eb036a54c9465697e
- https://github.com/vitejs/vite/releases/tag/v6.4.5
- https://github.com/vitejs/vite
More vitejs vulnerabilities
- TI-2025-22386 Vite has a `server.fs.deny` bypassed for `inline` and `raw` with `?import` query KEVCVSS 3.1HIGH 7.5
- TI-2025-41248 Code injection in vitejs vite-plugin-react CVSS 3.1CRITICAL 9.8
- TI-2026-28350 Vite Affected by Arbitrary File Read via Vite Dev Server WebSocket CVSS 4.0HIGH 8.2
- TI-2025-41735 @vitejs/plugin-rsc has Arbitrary File Read via `/__vite_rsc_findSourceMapURL` Endpoint on Development CVSS 3.1HIGH 7.5
- TI-2025-21544 Vite bypasses server.fs.deny when using `?raw??` CVSS 3.1HIGH 7.5
- TI-2023-16938 Vite Server Options (server.fs.deny) can be bypassed using double forward-slash (//) CVSS 3.1HIGH 7.5
Sources
- CVE-2026-118662 · CVE Program
- CVE-2026-118662 · NVD
- FIRST EPSS
- GHSA-8g5g-mxqh-grgj · GitHub Advisory Database · CC BY 4.0
- CVE-2026-118662 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences