Joomla gehackt und Update fehl geschlagen

  • Hallo,

    Ich hoffe mein Eintrag ist hier richtig. Falls nein bitte ich um Nachsicht.

    Ich habe ein großes Problem mit einer Joomla Datenbank. In den letzten Jahren ist eine kleine Joomla Vereinsseite öfters gehackt worden. Die Seite wurde dann mittels Backup jedesmal mit einer neuen Datenbank aufgesetzt. Der Stand blieb immer auf Joomla 2.5.8 und auch die Datenbank blieb immer auf dem Stand 5.x. Bei dem Update auf die aktuellen Versionen kam dann das ganze Große Chaos. Nichts ging mehr. Beim Aufrufen der Webseite kam div PHP Fehlermeldungen in endlos vielen Zeilen.

    Von den alten Daten gibt es aber eine Komplettkopie, die Mittels FTP auf einen USB Stick gezogen wurde.


    Zwischenzeitlich hat man sich entschieden, die Webseite zunächst Offline zu lassen und einen Neustart zu beginnen. Jedoch ist der Wunsch vorhanden, irgendwie die alten Texte / Beiträge in die neue Seite zu integrieren. Idee war es, die alten Daten noch einmal online zu stellen und dann die Texte ggf manuell heraus zu kopieren. Gesagt getan und gescheitert. Beim „Hochladen“ der Daten kommt der Providerhinweis, dass ein Trojaner enthalten ist und kein Datentransfer zugelassen wird. Eine Anlyse hat ergeben, dass eine veraltete Java Version den Trojaner mit sich trägt. Da diese Anwendung zur Darstellung der alten Texte nicht benötigt wird, könnte darauf verzichtet werden. Nun meine Frage, wie kriegt man die alten Texte und Daten wieder dargestellt um zumindest manuell etwa zu retten ??? Leider ist Joomla bisher nicht mein Spezialgebiet, sodass ich nach diversen Versuchen gerade am verzweifeln bin.

    Aktuell habe ich eine aktuelle Joomla Version auf einem Webspace erstellt und möchte wirklich nur die Texte irgendwie da rein bekommen.

  • Ich würde parallel (in einer Subdomain zB) eine leere (!) 2.5.8 in dieselbe DB wie die alte installieren, diese mit der alten DB verknüpfen (Präfix in der configuration.php), und dann sofort auf 2.5.28 aktualisieren. Dann auf 3.2.1 springen gefolgt von 3.4.8, 3.6.5, und letztendlich 3.9.3. Fertig. Überflüssige Tabellen von Erweiterungen händisch löschen.


    Es ist sehr, sehr selten, dass sich Schadcode in einer DB versteckt, eine Prüfung auf merkwürdigen Code in den Inhalten schadet aber nicht.


    Edit: auch alle Bilder lassen sich mitnehmen, ins Verzeichnis /images gehören keine .php Dateien. Ggf löschen, und in die neue Installation kopieren.

  • Ich würde parallel (in einer Subdomain zB) eine leere (!) 2.5.8 in dieselbe DB wie die alte installieren, diese mit der alten DB verknüpfen (Präfix in der configuration.php), und dann sofort auf 2.5.28 aktualisieren. Dann auf 3.2.1 springen gefolgt von 3.4.8, 3.6.5, und letztendlich 3.9.3. Fertig. Überflüssige Tabellen von Erweiterungen händisch löschen.


    Es ist sehr, sehr selten, dass sich Schadcode in einer DB versteckt, eine Prüfung auf merkwürdigen Code in den Inhalten schadet aber nicht.


    Edit: auch alle Bilder lassen sich mitnehmen, ins Verzeichnis /images gehören keine .php Dateien. Ggf löschen, und in die neue Installation kopieren.

    Das würde ich in dem Fall nicht mehr machen. Gerade wenn man sich nicht auskennt und wie der TE schon schreibt mehrfach backups installiert hat ohne die Lücken zu schließen. Außerdem schreibt er ja schon er will aus der alten nur die Beiträge übernehmen und den Rest neu machen.

    Da würde ich, wie von Eumel/Marco vorgeschlagen die alte Seite lokal installieren und mit J2XML die Beiträge in die neue installation kopieren.

  • Man kann das natürlich auch umständlich machen. Zudem Windows lokal mit dem Schadcode im Backup Probleme machen kann.

    Für einen Profi, wie dich erscheint dieser Weg so. Ich glaube aber für einen Laien ist der andere Weg der bessere bzw. auch einfach sicherere! Außerdem ist es mit der reinen Migration von 2.5. auf 3.9 ja noch lange nicht getan. Der Schadhafte PHP Code muss ja auch noch gefunden werden und komplett gelöscht werden. Außerdem meist braucht man auch noch ein neues Template oder muss das alte Anpassen, da die meisten 2.5 Versionen noch aus der Zeit vor der responsiv Welle stammen.

  • Bis hierhin euch bereits vielen Dank für die schnelle Antwort und Hilfestellung!!!!

    Ich werde bei Ideen aufgreifen und ausprobieren und mich natürlich mit einem Ergebnis (egal ob positiv oder negativ) zurück melden.


    Natürlich nehme ich gerne weitere hilfreiche Ideen an.....

  • Ehrlich gesgt, würde ich die gesamte alte Instaallation ins Datennirvana schicken.

    Wenn nie eine korrekte Bereinigung der Seite stattgefunden hat, ist jedes Backup wertlos, da verseucht. Kann mann natürlich gegen entsprechende Zahlung bereinigen lassen.

    Da die Website aber Stand 2.5.8 war, würde ich einen komplett Neustart machen.

    Vielleicht ginge noch mit J2xml die Daten auslesen. Altes Jommlo komplett wieder löschen neues Joomla 2.5.8 aufsetzen Daten mit J2xml einlesen und dann Schrittweise über zuerst 2.5.28 nach 3. jeweils Schrittweise siehe Anleitungen updaten.

    Denke Neuanfang ist doch die einfachere Variante und vor allem die Sicherere.

  • Um wie viele Beiträge handelt es sich denn ungefähr?


    Bei 20 Beiträgen lohnt keine Diskussion und man sollte alles komplett neu machen.

    Bei 2000 Beiträgen schaut es ein wenig anders aus. Sollte der Hack dann in der DB stecken, dann hast du ein wirkliches Problem.

    Ansonsten haben beide genannten Methoden ihre Berechtigung. In beiden Fällen sollte man aber mit Vorsicht und etwas Erfahrung rangehen.

  • Für einen Profi, wie dich erscheint dieser Weg so. Ich glaube aber für einen Laien ist der andere Weg der bessere bzw. auch einfach sicherere! Außerdem ist es mit der reinen Migration von 2.5. auf 3.9 ja noch lange nicht getan. Der Schadhafte PHP Code muss ja auch noch gefunden werden und komplett gelöscht werden. Außerdem meist braucht man auch noch ein neues Template oder muss das alte Anpassen, da die meisten 2.5 Versionen noch aus der Zeit vor der responsiv Welle stammen.

    Mit meiner Methode gibt es keinen Schadcode in Verzeichnissen und Dateien mehr, bitte genauer lesen :). Und das ist die schnellste Methode, wenn es nur um die Inhalte geht, natürlich gäbe es noch Nacharbeiten wegen der dann nicht mehr vorhandenen Erweiterungen, aber das ist ein Klacks. Die Prozedur lässt sich in weniger als eine Stunde bewerkstelligen, da es dann nur den Core gibt, der beim Updaten keine Probleme macht.

  • Das Problem dabei ist aber, dass du nicht weißt wo überall Schadecode und Backdoors liegen.

    Nach der Paralellinstallation und dem sichern der Bilder muss der gesamte Webspace bis auf die Neuinstallation gelöscht werden.

    Auch das Löschen der überflüssigen Tabellen ist für einen Laien nicht einfach.

    Ich halte Neuanfang weiterhin für die bessere Wahl.

  • Möglichkeiten sind oben genannt.

    Es geht auch noch die DB lokal einzuspielen und ein Joomla 2.5.8 zu installieren und auf die DB zeigen zu lassen. Dann lokal updaten wie j!-n beschrieben hat.

    Zum Schluss Webspace komplett löschen und die upgedatete Version auf diesen transferieren.

    Die Frage ist nur, ob jemand der bei 2.5.8 hängen geblieben ist, die notwendigen Dinge zu beachten, damit er den Hack nicht mitschleppt. Da Sicherheit wichtiger sein sollte, als den Inhalt zu retten, halte ich Neuanfang für sinnvoll.

  • Aufgrund des Hacks und der Updateprobleme wurde die gesamte Seite nebst Datenbank zwischenzeitlich gelöscht. Es gibt also nur noch eine Kopie aller Daten die mittels FTP runter geladen wurden. Wie bereits dargestellt, geht es ausschließlich um die Beiträge Größenordnung liegt bei 200 bis 300, die bis ca. 2013 zurück gehen. Die Bilder konnte ich bereits „ auslesen“ und nach diversen Scan mit unterschiedlichen Anti-Malwareprogrammen sind diese auch sauber. 2 oder 3 Bilder sind hops gegangen, dass ist aber nicht schlimm.

  • Es gibt also nur noch eine Kopie aller Daten die mittels FTP runter geladen wurden. Wie bereits dargestellt, geht es ausschließlich um die Beiträge Größenordnung liegt bei 200 bis 300, die bis ca. 2013 zurück gehen.

    In welcher Form liegen die Daten parat? AkeebaBackup oder ähnliches oder manuell heruntergeladen?

    Fall Letzteres: Wurde die DB denn auch exportiert?

  • Da die Inhalte in den Datenbank-Tabellen gespeichert werden, sollte eine DB-Export-Datei auf jeden Fall vorhanden sein. Diese kann auch gezippt sein. Sonst wird das nichts. Überprüfe das zunächst!


    Und dann müsstest du dir wohl wirklich tatkräftige Hilfe holen!

  • Vielen Dank an Alle !!! Ich werde noch ein paar Experimente starten und die Hilfestellungen versuchen in der Praxis anzuwenden.

    Im Äusserten nehme ich dann den „unschönen“ Tipp und schicke die Forumsbeiträge in die ewigen Jagdgründe 😢