Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
svn-extractor — Einfaches Skript zum Extrahieren aller Webressourcen mittels eines über das Netzwerk exponierten .SVN-Ordners. | Kitploit
Tools/GitHubGitHub/anantshri/svn-extractor
AufklärungSchwachstellenanalyseInformationsbeschaffungWebsicherheitPenetrationstests
GitHubanantshri/svn-extractor

svn-extractor

Einfaches Skript zum Extrahieren aller Webressourcen mittels eines über das Netzwerk exponierten .SVN-Ordners.

Repository anzeigen
484125vor 2 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
Webseite

Svn-Extractor

Oftmals werden Webanwendungs-Pentester mit dem Vorhandensein von .svn-Ordnern konfrontiert. Für diejenigen, die es nicht wissen: Der .svn-Ordner wird vom SVN-Versionskontrollsystem für seine Operationen verwendet. Für einen Blackbox-Pentest enthält dieser Ordner eine große Menge an Informationen. Einige der wichtigsten Bereiche, in denen dies helfen kann, sind:

  1. Versteckte Dateien und Ordnernamen aufdecken

  2. Auf den Quellcode der Dateien zugreifen.

  3. Dateien herunterladen, selbst wenn Einschränkungen in der htaccess aktiv sind.

Wie dies erreicht werden kann.

  1. Versteckte Dateien und Ordnernamen aufdecken

Es gibt zwei Möglichkeiten, dies zu erreichen, abhängig von der verwendeten SVN-Version.
Für <1.6 gab es .svn/entries-Dateien, die eine Liste der Dateien/Ordner sowie die Benutzernamen enthielten, die für das Einchecken dieser Dateien verwendet wurden.
Für >1.6 haben wir .svn/wc.db, das ähnliche Daten, jedoch im sqlite3-Format, enthält.
Diese Dateien könnten direkt über die URL zugänglich sein.

  1. Auf den Quellcode zugreifen / Dateien herunterladen, selbst wenn htaccess den Zugriff blockiert.

SVN bewahrt eine Sicherungskopie aller Dateien an zwei getrennten Orten auf.

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

wobei

filename der tatsächliche Name der Datei ist.

CHECKSUM die Sha1-Summe der Datei ist.

XX sind die ersten beiden Zeichen von CHECKSUM.

Der erste Eintragstyp hat eine Einschränkung: Angenommen, der Dateiname ist testme.php, dann wird der Pfad zu:

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

Eine große Anzahl von Servern führt die Datei aus und liefert die Ausgabe.

Genau hier glänzt Option 2. Diese Informationen sind jedoch nur im Fall von wc.db (SVN-Version >1.6) verfügbar, und es ist erforderlich, dass das .sv/pristine-Verzeichnis über das Web zugänglich ist.

Nach langer Suche konnte ich jedoch keinen einzelnen Code finden, der beides auf einmal erledigt.

Hier ist also ein Tool, das beide Operationen in einem Skript durchführen kann.

Verwendung

minimal

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

alle Optionen

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

Referenzen

Es wäre unfair zu behaupten, ich hätte die gesamte Recherche selbst durchgeführt. Hier sind also die Links zu den verschiedenen Ressourcen, die ich verwendet habe, um die Informationen zu erhalten.

  1. http://pen-testing.sans.org/blog/pen-testing/2012/12/06/all-your-svn-are-belong-to-us (manuelle Technik für wc.db)

  2. http://www.adamgotterer.com/post/28125474053/hacking-the-svn-directory-archive (manuelle Technik für .svn/entries)

  3. http://www.cirt.net/svnpristine (einziges automatisiertes Tool, das ich online finden konnte, das die wc.db-Magie beherrscht)

Tool herunterladen