hacktricks/network-services-pentesting/3690-pentesting-subversion-svn-server.md
2024-02-10 15:36:32 +00:00

98 lines
7.7 KiB
Markdown

<details>
<summary><strong>Lernen Sie AWS-Hacking von Null auf Held mit</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Andere Möglichkeiten, HackTricks zu unterstützen:
* Wenn Sie Ihr **Unternehmen in HackTricks bewerben möchten** oder **HackTricks als PDF herunterladen möchten**, überprüfen Sie die [**ABONNEMENTPLÄNE**](https://github.com/sponsors/carlospolop)!
* Holen Sie sich das [**offizielle PEASS & HackTricks-Merchandise**](https://peass.creator-spring.com)
* Entdecken Sie [**The PEASS Family**](https://opensea.io/collection/the-peass-family), unsere Sammlung exklusiver [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Treten Sie der** 💬 [**Discord-Gruppe**](https://discord.gg/hRep4RUj7f) oder der [**Telegram-Gruppe**](https://t.me/peass) bei oder **folgen** Sie uns auf **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die** [**HackTricks**](https://github.com/carlospolop/hacktricks) und [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub-Repositories senden.
</details>
# Grundlegende Informationen
**Subversion** ist ein zentrales **Versionskontrollsystem**, das eine entscheidende Rolle bei der Verwaltung von aktuellen und historischen Daten von Projekten spielt. Als **Open-Source**-Tool arbeitet es unter der **Apache-Lizenz**. Dieses System ist weithin anerkannt für seine Fähigkeiten in der **Software-Versionierung und -Versionskontrolle**, um sicherzustellen, dass Benutzer Änderungen im Laufe der Zeit effizient verfolgen können.
**Standardport:** 3690
```
PORT STATE SERVICE
3690/tcp open svnserve Subversion
```
## Banner Grabbing
Banner Grabbing ist eine Technik, bei der Informationen über einen Dienst oder eine Anwendung gesammelt werden, indem der Begrüßungsbanner analysiert wird, der vom Server zurückgegeben wird. Dieser Banner enthält oft nützliche Informationen wie die Version der Software, die auf dem Server läuft, und andere Details, die für potenzielle Schwachstellen oder Angriffspunkte relevant sein können.
Es gibt verschiedene Tools, die für das Banner Grabbing verwendet werden können, wie z.B. Telnet, Netcat oder spezialisierte Banner Grabbing-Tools wie Bannergrab oder WhatWeb. Diese Tools ermöglichen es dem Angreifer, eine Verbindung zum Server herzustellen und den Begrüßungsbanner abzurufen, ohne dass eine Authentifizierung erforderlich ist.
Das Banner Grabbing kann bei der Pentest-Durchführung nützlich sein, um Informationen über den Zielserver zu sammeln und potenzielle Schwachstellen zu identifizieren. Es kann auch verwendet werden, um Informationen über die verwendete Softwareversion zu erhalten, um gezielte Angriffe durchzuführen oder Exploits zu entwickeln.
Es ist wichtig zu beachten, dass das Banner Grabbing in einigen Fällen als Angriff angesehen werden kann, insbesondere wenn es ohne Zustimmung des Eigentümers des Servers durchgeführt wird. Daher sollte es nur im Rahmen einer rechtmäßigen Pentest-Aktivität durchgeführt werden und immer mit Zustimmung des Eigentümers des Servers erfolgen.
```
nc -vn 10.10.10.10 3690
```
## Enumeration
Die Enumeration ist der erste Schritt bei der Pentest-Prüfung eines Subversion (SVN)-Servers. Sie ermöglicht es uns, Informationen über den Server und seine Konfiguration zu sammeln, um Schwachstellen zu identifizieren und potenzielle Angriffspunkte zu finden.
### 1. SVN-Version ermitteln
Um die Version des SVN-Servers zu ermitteln, können wir den Befehl `svn --version` verwenden. Dies gibt uns Informationen über die installierte SVN-Version und hilft uns, nach bekannten Schwachstellen zu suchen.
### 2. SVN-Repositorys erkunden
Wir können den Befehl `svn list` verwenden, um die verfügbaren Repositorys auf dem Server aufzulisten. Dies gibt uns einen Überblick über die vorhandenen Projekte und ermöglicht es uns, potenzielle Angriffsziele zu identifizieren.
### 3. SVN-Repositorys auschecken
Mit dem Befehl `svn checkout` können wir ein Repository auf unseren lokalen Rechner auschecken. Dies ermöglicht es uns, den Inhalt des Repositorys zu untersuchen und nach sensiblen Informationen wie Passwörtern oder Zugangsdaten zu suchen.
### 4. SVN-Log-Dateien überprüfen
Die Überprüfung der SVN-Log-Dateien kann uns wertvolle Informationen über die Aktivitäten auf dem Server liefern. Wir können den Befehl `svn log` verwenden, um die Log-Dateien anzuzeigen und nach verdächtigen Aktivitäten oder Anzeichen von Schwachstellen zu suchen.
### 5. SVN-Server-Konfiguration überprüfen
Es ist wichtig, die Konfiguration des SVN-Servers zu überprüfen, um potenzielle Schwachstellen zu identifizieren. Wir können die Konfigurationsdatei des Servers überprüfen, um nach unsicheren Einstellungen oder fehlkonfigurierten Berechtigungen zu suchen.
### 6. SVN-Server-Informationen sammeln
Wir können den Befehl `svn info` verwenden, um Informationen über den SVN-Server zu sammeln. Dies gibt uns Details wie den Servernamen, die URL und den Benutzernamen, die uns bei der weiteren Analyse und dem Angriff helfen können.
### 7. SVN-Server-Ports scannen
Ein Port-Scan kann uns helfen, offene Ports auf dem SVN-Server zu identifizieren. Wir können Tools wie Nmap verwenden, um nach offenen Ports zu suchen und potenzielle Angriffspunkte zu finden.
### 8. SVN-Server-Verzeichnisstruktur erkunden
Die Erkundung der Verzeichnisstruktur des SVN-Servers kann uns helfen, potenzielle Angriffsziele zu identifizieren. Wir können den Befehl `svn list` verwenden, um die Verzeichnisstruktur anzuzeigen und nach sensiblen Informationen oder Schwachstellen zu suchen.
### 9. SVN-Server-Authentifizierungsmethoden überprüfen
Es ist wichtig, die Authentifizierungsmethoden des SVN-Servers zu überprüfen, um potenzielle Schwachstellen zu identifizieren. Wir können die Konfigurationsdatei des Servers überprüfen, um nach unsicheren Authentifizierungsmethoden oder fehlenden Sicherheitsmaßnahmen zu suchen.
### 10. SVN-Server-Backup-Dateien überprüfen
Die Überprüfung von Backup-Dateien kann uns wertvolle Informationen liefern. Wir können nach Dateien mit den Erweiterungen `.bak`, `.old` oder `.swp` suchen, um nach sensiblen Informationen oder Schwachstellen zu suchen, die möglicherweise in den Backup-Dateien enthalten sind.
```bash
svn ls svn://10.10.10.203 #list
svn log svn://10.10.10.203 #Commit history
svn checkout svn://10.10.10.203 #Download the repository
svn up -r 2 #Go to revision 2 inside the checkout folder
```
<details>
<summary><strong>Lernen Sie AWS-Hacking von Null auf Held mit</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Andere Möglichkeiten, HackTricks zu unterstützen:
* Wenn Sie Ihr **Unternehmen in HackTricks bewerben möchten** oder **HackTricks als PDF herunterladen möchten**, überprüfen Sie die [**ABONNEMENTPLÄNE**](https://github.com/sponsors/carlospolop)!
* Holen Sie sich das [**offizielle PEASS & HackTricks-Merchandise**](https://peass.creator-spring.com)
* Entdecken Sie [**The PEASS Family**](https://opensea.io/collection/the-peass-family), unsere Sammlung exklusiver [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Treten Sie der** 💬 [**Discord-Gruppe**](https://discord.gg/hRep4RUj7f) oder der [**Telegram-Gruppe**](https://t.me/peass) bei oder **folgen** Sie uns auf **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die** [**HackTricks**](https://github.com/carlospolop/hacktricks) und [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub-Repositories senden.
</details>