Medium severity · published Sep 17, 2024
CVE-2024-45811
server.fs.deny bypassed when using ?import&raw in vite
4.8
CVSS
1.1%
EPSS
No
On KEV
Description
Vite a frontend build tooling framework for javascript. In affected versions the contents of arbitrary files can be returned to the browser. `@fs` denies access to files outside of Vite serving allow list. Adding `?import&raw` to the URL bypasses this limitation and returns the file content if it exists. This issue has been patched in versions 5.4.6, 5.3.6, 5.2.14, 4.5.5, and 3.2.11. Users are advised to upgrade. There are no known workarounds for this vulnerability.
CVSS vector
CVSS:3.1/AV:A/AC:H/PR:N/UI:R/S:U/C:H/I:N/A:N
Attack vector
Adjacent
Complexity
High
Privileges
None
User interaction
Required
Confidentiality
High
Integrity
None
Availability
None
Scope
Unchanged
Exploitation
Is it being used?
Exploit prediction (EPSS)1.1% · higher than 65% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
VI
vite · vitejs
>= 5.4.0, < 5.4.6; >= 5.3.0, < 5.3.6; >= 5.0.0, < 5.2.14; >= 4.0.0, < 4.5.5; < 3.2.11 · source: vendor, CISA
References
NVD
https://nvd.nist.gov/vuln/detail/CVE-2024-45811
CVE.org
https://www.cve.org/CVERecord?id=CVE-2024-45811
github.com
https://github.com/vitejs/vite/commit/6820bb3b9a54334f3268fc5ee1e967d2e1c0db34
github.com
https://github.com/vitejs/vite/security/advisories/GHSA-9cwx-2883-4wfx
More from vite
7.5
CVE-2025-31125
Vite has a `server.fs.deny` bypassed for `inline` and `raw` with `?import` query
8.3
CVE-2024-52011
launch-editor vulnerable to command injection via the crafted request on Windows
7.5
CVE-2026-112942
launch-editor: `fs.existsSync()` existence check can be bypassed on Windows
7.5
CVE-2026-53571
Vite: `server.fs.deny` bypass on Windows alternate paths
7.5
CVE-2026-39364
Vite has a `server.fs.deny` bypass with queries
