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
svn-extractor — script simples para extrair todos os recursos web por meio de pasta .SVN exposta na rede. | Kitploit
Ferramentas/GitHubGitHub/anantshri/svn-extractor
ReconhecimentoAnálise de VulnerabilidadesColeta de InformaçõesSegurança WebTestes de Penetração
GitHubanantshri/svn-extractor

svn-extractor

script simples para extrair todos os recursos web por meio de pasta .SVN exposta na rede.

Ver Repositório
484125há 2 anosRevisado pelo Kitploit

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
Site

Svn-Extractor

Muitas vezes, testadores de penetração de aplicações web se deparam com a presença de pastas .svn. Para aqueles que não sabem, a pasta .svn é usada pelo sistema de controle de versão SVN para realizar suas operações. Para um pentest de caixa-preta, essa pasta contém uma enorme quantidade de informações. Algumas das principais áreas onde isso pode ajudar incluem.

  1. Descobrir arquivos e nomes de pastas ocultos

  2. Acessar o código-fonte dos arquivos.

  3. Baixar arquivos mesmo que as restrições estejam em vigor no htaccess.

Como isso pode ser alcançado.

  1. Descobrir arquivos e nomes de pastas ocultos

Existem duas maneiras pelas quais isso pode ser alcançado, dependendo da versão do SVN em uso.
para <1.6 tínhamos arquivos .svn/entries que continham uma lista de arquivos/pastas, bem como nomes de usuário usados para commitar esses arquivos.
para >1.6 temos .svn/wc.db que contém dados semelhantes, mas em formato sqlite3.
Esses arquivos podem ser diretamente acessíveis através da URL.

  1. Acessar o código-fonte / baixar arquivos mesmo que o htaccess bloqueie seu acesso.

O SVN mantém uma cópia de backup de todos os arquivos em dois locais separados.

  1. .svn/text-base/ "filename" .svn-base
  2. .svn/pristine/ "XX" / "CHECKSUM" .svn-base

onde

filename é o nome real do arquivo.

CHECKSUM é o hash Sha1 do arquivo.

XX são os dois primeiros caracteres do CHECKSUM.

O primeiro tipo de entrada tem uma limitação: suponha que o nome do arquivo seja testme.php, então o caminho se torna.

.svn/text-base/testme.php.svn-base

um grande número de servidores executará o arquivo e servirá a saída.

É aí que a opção 2 se destaca; no entanto, essa informação está disponível apenas no caso do wc.db (versão SVN >1.6) e isso requer que o diretório .sv/pristine seja acessível pela web.

No entanto, após pesquisar muito, não consegui encontrar um único código que pudesse fazer ambas as coisas de uma só vez.

então aqui está uma ferramenta que pode realizar ambas as operações em um único script.

Uso

minimal

svn-extractor.py --url "url with .svn available"

alloptions

root@kitploit:~
$ python svnextractor.py --help  
usage: svn_extractor.py [-h] --url TARGET [--debug] [--noextract] [--userlist]
                        [--wcdb] [--entries] [--proxy PROXY] [--match MATCH]

This program is used to extract the hidden SVN files from a webhost
considering either .svn entries file (<1.6) or wc.db (> 1.7) are available
online. This program actually automates the directory navigation and text
extraction process

optional arguments:
  -h, --help     show this help message and exit
  --url TARGET   Provide URL
  --debug        Provide debug information
  --noextract    Don't extract files just show content
  --userlist     show the usernames used for commit
  --wcdb         check only wcdb
  --entries      check only .svn/entries file
  --proxy PROXY  Provide HTTP Proxy in http(s)://host:port format
  --match MATCH  only download files that match regex

Créditos (C) Anant Shrivastava http://anantshri.info Saudações a Amol Naik, Akash Mahajan, Prasanna K, Lava Kumar pelas valiosas contribuições

Referências

Seria injusto dizer que fiz toda a pesquisa sozinho, então aqui estão os links para vários recursos que usei para obter as informações.

  1. http://pen-testing.sans.org/blog/pen-testing/2012/12/06/all-your-svn-are-belong-to-us (técnica manual para wc.db)

  2. http://www.adamgotterer.com/post/28125474053/hacking-the-svn-directory-archive (técnica manual para .svn/entries)

  3. http://www.cirt.net/svnpristine (única ferramenta automatizada que encontrei online fazendo a mágica do wc.db)

Baixar ferramenta