Grundlegende URL-Manipulation und -Kodierung
In diesem Schritt lernen Sie, wie Sie Hackbar für URL-Manipulationen und Kodierungs-/Dekodierungsoperationen verwenden, was grundlegende Fähigkeiten für Sicherheitstests sind.
Starten einer Test-Website
Zu Übungszwecken richten wir eine einfache Test-Website ein. Öffnen Sie ein neues Terminal und führen Sie aus:
mkdir -p ~/project/test-website
cd ~/project/test-website
Erstellen Sie nun eine einfache HTML-Datei mit einem einfachen Formular:
cat > index.html << EOF
<!DOCTYPE html>
<html>
<head>
<title>Test Website</title>
</head>
<body>
<h1>Login Form</h1>
<form action="login.php" method="GET">
<label for="username">Username:</label>
<input type="text" id="username" name="username"><br><br>
<label for="password">Password:</label>
<input type="password" id="password" name="password"><br><br>
<input type="submit" value="Login">
</form>
</body>
</html>
EOF
Starten wir einen einfachen HTTP-Server, um diese Seite zu hosten:
python3 -m http.server 8080
Sie sollten eine Ausgabe sehen, die anzeigt, dass der Server auf Port 8080 läuft:
Serving HTTP on 0.0.0.0 port 8080 (http://0.0.0.0:8080/) ...
Zugriff auf die Test-Website
Öffnen Sie ein neues Firefox-Fenster (lassen Sie den Server im Terminal laufen) und navigieren Sie zu:
http://localhost:8080
Sie sollten ein einfaches Login-Formular mit Benutzernamen- und Passwortfeldern sehen.
Verwenden von Hackbar zur Manipulation von URLs
Lassen Sie uns nun Hackbar verwenden, um die URL zu manipulieren:
-
Klicken Sie auf das Hackbar-Symbol, um das Hackbar-Panel zu öffnen.
-
Klicken Sie auf die Schaltfläche "Load URL" (URL laden), um die aktuelle URL in Hackbar zu laden.
-
Sie sollten http://localhost:8080
im URL-Feld von Hackbar sehen.
-
Versuchen Sie, die URL zu ändern, indem Sie einen Pfad hinzufügen, z. B.:
- Ändern Sie sie in
http://localhost:8080/index.html
- Klicken Sie auf "Execute" (Ausführen), um die Anfrage zu senden
-
Füllen Sie das Login-Formular mit Testanmeldeinformationen aus (z. B. Benutzername: "admin", Passwort: "password") und klicken Sie auf die Schaltfläche "Login".
-
Beobachten Sie die URL in der Adressleiste. Sie sollte in etwa so aussehen:
http://localhost:8080/login.php?username=admin&password=password
-
Die Seite zeigt wahrscheinlich einen "Not Found"-Fehler an, da login.php nicht existiert, aber wir sind an der URL-Struktur interessiert.
-
Öffnen Sie Hackbar erneut und klicken Sie auf "Load URL" (URL laden), um diese neue URL zu laden.
URL-Parameter-Manipulation
Sicherheitstests beinhalten oft die Manipulation von URL-Parametern:
-
Suchen Sie in Hackbar das URL-Feld, das die Login-URL enthält.
-
Versuchen Sie, den Benutzernamen-Parameter zu ändern:
- Ändern Sie
username=admin
in username=admin'
- Klicken Sie auf "Execute" (Ausführen), um die Anfrage zu senden
Diese einfache Änderung fügt ein einzelnes Anführungszeichen hinzu, was eine gängige Technik zum Testen von SQL-Injection-Schwachstellen ist.
Kodierung und Dekodierung mit Hackbar
Hackbar bietet verschiedene Kodierungs-/Dekodierungsoptionen:
-
Klicken Sie in Hackbar auf das Menü "Encoding" (Kodierung), um die verfügbaren Optionen anzuzeigen.
-
Versuchen Sie die URL-Kodierung:
- Geben Sie Text mit Sonderzeichen in das URL-Feld ein, z. B.
test space & special
- Wählen Sie den Text aus, den Sie kodieren möchten
- Wählen Sie im Menü "Encoding" (Kodierung) "URL encode" (URL kodieren)
- Der ausgewählte Text wird in das URL-kodierte Format konvertiert
-
Versuchen Sie die Base64-Kodierung:
- Geben Sie Text in das URL-Feld ein, z. B.
hackbar test
- Wählen Sie den Text aus, den Sie kodieren möchten
- Wählen Sie im Menü "Encoding" (Kodierung) "Base64 encode" (Base64 kodieren)
- Der ausgewählte Text wird in das Base64-Format konvertiert
-
Versuchen Sie die Dekodierung:
- Wählen Sie den kodierten Text aus
- Wählen Sie im Menü "Encoding" (Kodierung) die entsprechende Dekodierungsoption (URL decode (URL dekodieren) oder Base64 decode (Base64 dekodieren))
- Der Text wird in sein ursprüngliches Format zurückkonvertiert
Diese Kodierungs-/Dekodierungsfunktionen sind unerlässlich, wenn Sie Webanwendungen auf Sicherheitslücken testen, da sie es Ihnen ermöglichen, Daten in verschiedenen Formaten zu manipulieren.
Stoppen des Testservers
Wenn Sie diesen Schritt abgeschlossen haben, kehren Sie zu dem Terminal zurück, in dem der Python-HTTP-Server läuft, und drücken Sie Ctrl+C
, um ihn zu stoppen.