Skip to content
KitploitKITPLOIT
HerramientasBlog
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
svn-extractor — script simple para extraer todos los recursos web mediante la carpeta .SVN expuesta en la red. | Kitploit
Herramientas/GitHubGitHub/anantshri/svn-extractor
ReconocimientoAnálisis de VulnerabilidadesRecopilación de InformaciónSeguridad WebPruebas de Penetración
GitHubanantshri/svn-extractor

svn-extractor

script simple para extraer todos los recursos web mediante la carpeta .SVN expuesta en la red.

Ver Repositorio
484125hace 3 añosRevisado por Kitploit

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
Sitio web

Svn-Extractor

Muchas veces, los pentesters de aplicaciones web se encuentran con la presencia de carpetas .svn. Para aquellos que no lo saben, la carpeta .svn es utilizada por el sistema de control de versiones SVN para realizar sus operaciones. Para una prueba de penetración de caja negra, esta carpeta contiene una gran cantidad de información. Algunas de las áreas clave donde esto puede ayudar incluyen.

  1. Descubrir archivos ocultos y nombres de carpetas

  2. Acceder al código fuente de los archivos.

  3. Descargar archivos incluso si las restricciones están vigentes en htaccess.

Cómo se puede lograr esto.

  1. Descubrir archivos ocultos y nombres de carpetas

Hay dos formas en que esto se puede lograr según la versión de SVN en uso.
para <1.6 teníamos archivos .svn/entries que contenían listas de archivos / carpetas así como nombres de usuario utilizados para confirmar esos archivos.
para >1.6 tenemos .svn/wc.db que contiene datos similares pero en formato sqlite3.
Estos archivos podrían ser directamente accesibles a través de la URL.

  1. Acceder al código fuente / descargar archivos incluso si htaccess bloquea su acceso.

SVN mantiene una copia de seguridad de todos los archivos en dos ubicaciones separadas.

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

donde

nombredearchivo es el nombre real del archivo.

CHECKSUM es la suma Sha1 del archivo

XX son los dos primeros caracteres de CHECKSUM.

el primer tipo de entradas tiene una limitación, supongamos que el archivo se llama testme.php, entonces la ruta se convierte en.

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

un gran número de servidores ejecutarán el archivo y servirán la salida.

ahí es donde brilla la opción 2, sin embargo, esta información solo está disponible en el caso de wc.db (versión de SVN >1.6) y esto requiere que el directorio .sv/pristine sea accesible web.

Sin embargo, después de buscar mucho, no pude encontrar un solo código que pueda hacer ambas cosas de una sola vez.

así que aquí hay una herramienta que puede realizar ambas operaciones en un solo script.

Uso

mínimo

svn-extractor.py --url "url con .svn disponible"

todas las opciones

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

Credit (C) Anant Shrivastava http://anantshri.info Greets to Amol Naik, Akash
Mahajan, Prasanna K, Lava Kumar for valuable inputs

Referencias

Sería injusto decir que hice toda la investigación yo mismo, así que aquí están los enlaces a varios recursos que utilicé para obtener la información.

  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 herramienta automatizada que pude encontrar en línea que hace magia con wc.db)

Descargar herramienta