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
vucsa — Absichtlich verwundbare Client-Server-Anwendung zum Erlernen von Penetrationstests von Nicht-HTTP-Thick-Clients. Enthält Herausforderungen für SQL Injection, RCE, XML-Angriffe, Buffer Over-read und Zugriffskontroll-Schwachstellen. | Kitploit
Tools/GitHubGitHub/warxim/vucsa
SchwachstellenanalyseWebanwendungs-ExploitationCTFPenetrationstestsLernen & BildungBinary-Exploitation
GitHubwarxim/vucsa

vucsa

Absichtlich verwundbare Client-Server-Anwendung zum Erlernen von Penetrationstests von Nicht-HTTP-Thick-Clients. Enthält Herausforderungen für SQL Injection, RCE, XML-Angriffe, Buffer Over-read und Zugriffskontroll-Schwachstellen.

Repository anzeigen
101283vor 3 JahrenVon Kitploit geprüft
Webseite

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Vulnerable Client-Server Application (VuCSA)

Verwundbare Client-Server-Anwendung (VuCSA)

Die verwundbare Client-Server-Anwendung (VuCSA) wurde entwickelt, um zu lernen/zu präsentieren, wie Penetrationstests von Nicht-HTTP-Client-Server-Anwendungen durchgeführt werden. Sie ist in Java (mit JavaFX-GUI) geschrieben.

Derzeit enthält die verwundbare Anwendung die folgenden Herausforderungen:

  1. Pufferüberlesen (simuliert)
  2. Befehlsausführung
  3. SQL-Injection
  4. Enumeration
  5. XML
  6. Horizontale Zugriffskontrolle
  7. Vertikale Zugriffskontrolle
  8. RCE-Deserialisierung

Wenn du wissen möchtest, wie diese Herausforderungen gelöst werden, schau dir die PETEP-Website an, die beschreibt, wie das Open-Source-Tool PETEP genutzt wird, um sie auszunutzen.

Tipp 1: Bevor du mit dem Hacken beginnst, vergiss nicht, die untenstehende Datenstruktur der Nachrichten zu überprüfen. Wenn du den Netzwerkverkehr modifizierst, musst du wahrscheinlich die Struktur berücksichtigen, insbesondere die Payload-Längenbytes.

Tipp 2: Die meisten Herausforderungen können durch Modifikation des Netzwerkverkehrs ausgenutzt werden. Daher wird empfohlen, einen TCP-Proxy oder Prozess-Hooks für die Tests zu verwenden.

Tipp 3: Einige Herausforderungen haben Eingabevalidierungen und Einschränkungen, was bei Thick Clients üblich ist, aber das bedeutet nicht, dass der Server die gleiche Validierung verwendet.

Pufferüberlesen (simuliert) Schwachstelle

Bei dieser Herausforderung ist es dein Ziel, den Netzwerkverkehr zwischen Client und Server so zu manipulieren, dass ein Pufferüberlesen auftritt.

Befehlsausführung-Schwachstelle

Die Befehlsausführung-Herausforderung stellt eine sehr einfache Schwachstelle zur Befehlsausführung dar. Das Ziel ist es, einen bösartigen Befehl auf dem Server auszuführen.

SQL-Injection-Schwachstelle

Die SQL-Injection-Herausforderung enthält eine Sucheingabe, die anfällig für SQL-Injection ist, aber wie du schnell merken wirst, erlaubt die Eingabe nicht die Eingabe der benötigten Zeichen.

Enumeration-Schwachstelle

Die Enumeration-Herausforderung basiert auf einem simulierten Anmeldeformular, das nicht vor Enumeration geschützt ist. Wirst du in der Lage sein, alle 5 Benutzer zu finden und ihre Passwörter zu erraten?

XML-Schwachstellen

Bei dieser Herausforderung findest du mehrere XML-Schwachstellen:

  • XML-External-Entity-Angriff (XXE-Injection)
  • XInclude-Angriff
  • XML-Bomb-Angriff

Horizontale Zugriffskontrolle Schwachstelle

Die Herausforderung zur horizontalen Zugriffskontrolle stellt einen Dokumentenleser dar, der es dem Benutzer ermöglicht, eigene Dokumente zu sehen und deren Inhalt zu lesen. Das Ziel ist es, 5 Dokumente anderer Benutzer zu finden.

Vertikale Zugriffskontrolle Schwachstelle

Die Herausforderung zur vertikalen Zugriffskontrolle basiert auf einem simulierten Benutzerpanel, das grundlegende Benutzerinformationen anzeigt. Das Ziel ist es, eine versteckte Admin-Funktionalität zu finden und zu prüfen, ob es möglich ist, diese als Gastbenutzer zu verwenden.

RCE-Deserialisierung Schwachstelle

Die RCE-Deserialisierung-Schwachstelle verwendet Java-Deserialisierung/Serialisierung zur Übertragung von Daten über das Netzwerk. Die Anwendung enthält zwei Pfade, die du nutzen kannst, um eine Remote-Code-Ausführung durch die verwundbare Java-Deserialisierung zu erreichen.

Du kannst beide Pfade finden, indem du die JAR-Datei des Servers untersuchst oder in den Quellcode schaust.

Das Ziel ist es, Exploits für beide Pfade zu erstellen und einen bösartigen Befehl auf dem Server auszuführen.

Tipp: Du kannst das Server-JAR als Bibliothek verwenden, um die Exploit-Erstellung zu erleichtern.

Anforderungen

Du benötigst Java 11 oder eine neuere Version, um VuCSA auszuführen.

Hinweis: Für Mac mit ARM64-Architektur (M1, M2-Chips) verwende die spezielle Build für Java 17.

So wird ausgeführt

Um den verwundbaren Server und Client auszuführen, kannst du eine der Releases auf GitHub verwenden oder gradle assemble ausführen, das Distributionspakete (sowohl für Windows als auch Unix) erstellt. Diese Pakete enthalten sh/bat-Skripte, die den Server und Client mit der JVM ausführen:

root@kitploit:~
# Linux / Mac
chmod +x client.sh server.sh
./client.sh
./server.sh

# Windows
client.bat
server.bat

Hinweis: Diese Ausführungsskripte enthalten nützliche Variablen, einschließlich des Pfads zur Java-Ausführungsdatei. Möglicherweise musst du ihn ändern, wenn er nicht im PATH ist oder du mehrere Java-Versionen verwendest.

Ausführungskonfiguration

Die Serverkonfiguration wird automatisch erstellt, falls sie nicht existiert, und danach aus server.json im selben Verzeichnis geladen, in dem der Server läuft:

root@kitploit:~
{
  "network": {
    "serverHost": "0.0.0.0",
    "serverPort": 8765
  }
}

Die Clientkonfiguration kann in der laufenden Anwendung angegeben werden.

Projektstruktur

Das Projekt ist in drei Module unterteilt:

  • vucsa-common – gemeinsame Funktionalität für Client und Server (einschließlich Protokollverarbeitungs-Hilfsprogramme)
  • vucsa-client – verwundbarer Client mit JavaFX-GUI
  • vucsa-server – verwundbarer Server für die Terminalnutzung

Datenstruktur

Nachrichten, die zwischen Server und Client übertragen werden, haben das folgende einfache Format:

root@kitploit:~
[type][target][length][payload]
  32b    32b     32b     ???

Diese vier Teile haben die folgende Bedeutung:

  • type – Typ der Nachricht (verwendet für Serialisierung/Deserialisierung)
  • target – Zielhandler, der die Nachricht erhält (Identifikator)
  • length – Länge der Nutzlast
  • payload – in Bytes serialisierte Daten

Um benutzerdefinierte Nutzlasten zu senden, musst du möglicherweise die Nutzlastlänge aktualisieren. Andernfalls funktioniert es nicht richtig. Im Tutorial wird ein automatisches Skript entwickelt, um die Nutzlastlängenbytes automatisch zu korrigieren.

Tutorial (Lösungen)

Die verwundbare Client-Server-Anwendung (VuCSA) enthält mehrere Schwachstellen, die auf verschiedene Weise ausgenutzt werden können. Der offizielle Leitfaden zur Ausnutzung dieser Schwachstellen verwendet den Open-Source-Penetration-Testing-Proxy (siehe PETEP-Methodik).

In der PETEP-Methodik wird der gesamte Prozess der Ausnutzung der Herausforderungen erläutert, einschließlich nützlicher Payloads.

Tool herunterladen