Vulnerability · Published Mar 24, 2025 · Assigned by GitHub_M

CVE-2025-30208Vite bypasses server.fs.deny when using `?raw??`

Medium 5.3

In plain English

A medium-severity information exposure in vite from vitejs. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 74.8% (higher than 99.5% of all known vulnerabilities). Ready-made attack tooling exists: Nuclei, public proof-of-concept code. Fixed versions are available - upgrade the affected package.

Severity (CVSS 3.1)5.3Medium
Exploit odds (30 days)74.8%top 0.5% of all CVEs
Exploited in the wildNo reportsCISA SSVC: poc
Attack tooling2Nuclei, Public PoC

Official description

Vite, a provider of frontend development tooling, has a vulnerability in versions prior to 6.2.3, 6.1.2, 6.0.12, 5.4.15, and 4.5.10. `@fs` denies access to files outside of Vite serving allow list. Adding `?raw??` or `?import&raw??` to the URL bypasses this limitation and returns the file content if it exists. This bypass exists because trailing separators such as `?` are removed in several places, but are not accounted for in query string regexes. The contents of arbitrary files can be returned to the browser. Only apps explicitly exposing the Vite dev server to the network (using `--host` or `server.host` config option) are affected. Versions 6.2.3, 6.1.2, 6.0.12, 5.4.15, and 4.5.10 fix the issue.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
npmvite6.2.3GHSA-x574-m823-4x7w
npmvite6.1.2GHSA-x574-m823-4x7w
npmvite6.0.12GHSA-x574-m823-4x7w
npmvite5.4.15GHSA-x574-m823-4x7w
npmvite4.5.10GHSA-x574-m823-4x7w

Affected products (as reported)

VendorProductVersions
vitejs vite < 4.5.10>= 5.0.0, < 5.4.15>= 6.0.0, < 6.0.12>= 6.1.0, < 6.1.2>= 6.2.0, < 6.2.3

Weakness: CWE-200, CWE-284 · Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:N/A:N

References