## https://sploitus.com/exploit?id=29CE3C0E-B1EB-5774-B333-4CDFB4EDD2C6
# 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.
## Vulnerability Details
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.
## Affected Versions
- <= 6.2.2
- <= 6.1.1
- <= 6.0.11
- <= 5.4.14
- <= 4.5.9
## Features
- Checks if a Vite server is vulnerable to arbitrary file read.
- Supports single target and multiple domain testing.
- Option to save vulnerable URLs to an output file.
- Verbose mode to display file content (first 500 characters for safety).
## Requirements
- Python 3.x
- Required modules:
- `requests`
- `argparse`
- `urllib3`
- `colorama`
You can install dependencies using:
```sh
pip install -r requirements.txt
```
## Usage
### Single Target
```sh
python3 exploit.py http://localhost:5173 -f /etc/passwd
```
### Multiple Targets
```sh
python3 exploit.py -l domains.txt -f /etc/passwd
```
- `domains.txt` should contain one target URL per line.
### Additional Options
- `-v` : Display file content if vulnerable.
- `-o output.txt` : Save vulnerable URLs to a file.
Example:
```sh
python3 exploit.py http://localhost:5173 -f /etc/passwd -v -o results.txt
```
## Disclaimer
This script is for educational and authorized security testing purposes only. Unauthorized use against systems you do not own is illegal and unethical.