
CVE-2025-30208 - Vite Arbitrary File Read PoC
This is a Proof-of-Concept (PoC) script to exploit CVE-2025-30208, allowing arbitrary file reads on Vite development servers.
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's 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.
requestsargparseurllib3coloramaYou can install dependencies using:
pip install -r requirements.txt
python3 CVE-2025-30208.py http://localhost:5173 -f /etc/passwd
python3 CVE-2025-30208.py -l domains.txt -f /etc/passwd
domains.txt should contain one target URL per line.-v : Display file content if vulnerable.-o output.txt : Save vulnerable URLs to a file.Example:
python3 CVE-2025-30208.py http://localhost:5173 -f /etc/passwd -v -o results.txt
This script is for educational and authorized security testing purposes only. Unauthorized use against systems you do not own is illegal and unethical.