Böser Joomla-Notfall-Hack: configuration.php auslesen (Stand Joomla 2.5.? und größer)
Eine alte Joomla 2.5.22 lief zwar noch, Backend noch erreichbar, aber FTP-Zugang war kaputt. Wenigstens die Datenbank sollte gerettet werden, aber Passwort für phpMyAdmin unbekannt. Nachdem die Seite eh mehr oder weniger futsch war, darf man sie auch selber hacken, um die Datenbank-Passwörter aus der configuration.php zu holen. Ausbaubare Grundidee.
Schritt für Schritt
- Gehen Sie im Backend unter Erweiterungen > Templates.
- Klicken Sie in der Spalte Template (nicht Spalte Stil) eines Frontend-Templates, das Sie nicht in Verwendung haben auf den Templatenamen. Ich verwende für meinen Test mit Joomla 2.5.22 das Atomic-Template.
- Klicken Sie auf der Folgeseite im Template-Editor auf Hauptseite bearbeiten (Joomla 2.5) bzw. auf den Link index.php (Joomla 3), um die Template-index.php für Bearbeitung zu öffnen.
- Leeren Sie im Editor die Datei. Alles rausschmeißen und fügen Sie stattdessen folgenden ein:
<?php
$content = file_get_contents('../../configuration.php');
echo $content;
- Speichern Sie die Datei im Editor.
- Rufen Sie nun im Frontend per Browser auf
example.org/templates/atomic/index.php
example.org ersetzen Sie durch Ihre Webseiten-Domain. - Die configuration.php wird im Browser ausgegeben. Wenn Sie in die Seitenquelltext-Ansicht des Browsers wechseln "schön formatiert".
- Leeren Sie anschließend die index.php oder setzen den alten Code wieder ein, da natürlich ein Sicherheitsrisiko bei Seiten, die noch öffentlich erreichbar.
- So könnte man natürlich auch anderen Code in die index.php einsetzen, z.B. um den Webspace zu zippen und herunterzuladen und mehr. Was davon möglich ist, hängt vom Umfang der Seite ab.