Am Donnerstag bekam ich von der Google Search Console eine Meldung, meine Seite sei nicht so wirklich erreichbar. Nach dem Lesen der Mail habe ich kurz auf dem Handy versucht, den Blog aufzurufen. Und wurde auf irgendwelche Spam-Seiten weitergeleitet. Schöne Scheiße. Irgendjemand hat also den Blog gehackt. Nun ist es ja nicht so, dass dieser Blog hier die riesigen Zugriffszahlen hat oder hier eine Perle des Internets nach der anderen produziert würde, aber beim Gedanken daran, alles könnte verloren sein, bekam ich schon schlechte Laune.

Am Abend, nachdem die Kinder im Bett waren, habe ich mich hingesetzt und versucht, zu retten, was zu retten ist. Erst einmal eine Mail an den Hoster, damit der informiert ist und mir vielleicht Auskunft geben kann, von wo aus der Angriff erfolgte, bzw. wie die Redirects ausgelöst werden. Anschließend dann bei Google nach „WordPress Redirect Hack“ gesucht und mich ein bisschen schlau gemacht. Anschließend den Empfehlungen gefolgt und erst einmal geschaut, welche Dateien auf dem FTP-Server vllt. zu einem ungewöhnlichen Zeitpunkt geändert wurden oder ob sich Dateien mit komischen Namen finden lassen. Doch da kam ich nicht weiter.

In der Zwischenzeit antwortete der Support meines Hosters. Die Attacke wurde durch eine Sicherheitslücke in einem Plugin ausgelöst. Ein Plugin, was ich im Rahmen der Anpassungen für die DSGVO eingebunden hatte. Schönen Dank auch, liebe EU! Plugin also auf die neueste Version gehievt. Parallel hatte ich in den Datenbanken nach der URL gesucht, die beim initialen Aufruf des Blogs geladen wurde und von wo aus die Nutzer weitergeleitet wurden. Tatsächlich fand ich den entsprechenden Eintrag in der wp-options-Tabelle, wo die URL in den Eintrag für die Site URL geschrieben wurde. Die schadhafte URL habe ich dann entfernt und nach einem Reload war der Blog wieder erreichbar. Doch ich kam leider nicht mehr in den Admin-Bereich.

Die Suche im Internet nach der entsprechenden Fehlermeldung „Warning: Header may not contain more than a single header, new line detected in…“ förderte die Erkenntnis zutage, dass da irgendwo ein Leerzeichen zu viel sein soll. Also, die wp-login-Datei angeschaut, die Datei neu hochgeladen und einmal mit der wp-login.php eines frischen WordPress-Installationspakets verglichen. Fazit: wie sie sehen, sehen sie nichts. Dann fiel mir irgendwann ein, dass ich beim Anpassen der wp-options-Tabelle vergessen hatte, meine Blogadresse bei der Site URL einzutragen. Das habe ich kurz angepasst und anschließend konnte ich mich auch wieder im Admin-Bereich einloggen.

Da habe ich noch einmal Glück gehabt, dass der Angriff sich noch einigermaßen leicht abwehren ließ. Zwischenzeitlich hatte ich mich darauf eingestellt, alles löschen zu müssen, aber dieser Super-GAU konnte abgewendet werden. Und ich habe jetzt wieder ein Backup-Plugin laufen, der Blog und DB täglich sichert. 🙂