Erst durchatmen – dann handeln
Eine gehackte Website fühlt sich wie ein Notfall an, und in gewisser Weise ist sie das auch. Aber: Fast jeder Hack lässt sich sauber beheben, wenn Du die Schritte in der richtigen Reihenfolge abarbeitest. Das größte Risiko ist nicht der Angreifer, sondern hektisches Rumbasteln, das Spuren verwischt und Hintertüren übersieht.
Dieser Guide führt Dich in sieben Schritten vom ersten Verdacht bis zur wiederhergestellten Seite. Er gilt für WordPress genauso wie für Shops, Joomla oder eigene PHP-Projekte.
Woran Du einen Hack erkennst: Weiterleitungen auf fremde Seiten, unbekannte Admin-Nutzer, Spam-Mails von Deiner Domain, eine Google-Warnung („Diese Website wurde möglicherweise gehackt“), fremde Dateien im Webspace oder ein plötzlich rot markiertes SSL-Zertifikat.
Schritt 1: Seite offline nehmen
Solange die Seite läuft, verteilt sie Schadcode an Deine Besucher – und der Angreifer kann weiterarbeiten. Deshalb zuerst den Stecker ziehen:
- Lege eine Datei
index.htmlmit einem kurzen Wartungshinweis an und schalte die eigentliche Seite mit einer Wartungs-Umleitung in der.htaccessab. - Alternativ: Im Webspace-Panel die Domain vorübergehend auf einen leeren Ordner zeigen lassen.
Wichtig: Lösche jetzt noch nichts. Du brauchst den aktuellen Zustand gleich für die Analyse.
Schritt 2: Alle Passwörter tauschen
Angreifer kommen meistens über gestohlene oder schwache Zugangsdaten rein. Ändere deshalb – am besten von einem anderen, sauberen Gerät aus – alle Passwörter, die mit der Seite zu tun haben:
- Hosting-Kundenkonto und Webspace-Panel
- FTP/SFTP-Zugänge – jeden einzelnen, auch alte, die Du „eh nicht mehr benutzt“
- Datenbank-Benutzer (danach die Zugangsdaten in
wp-config.phpbzw. der Konfigurationsdatei nachziehen) - CMS-Admin-Konten – und alle Nutzer, die Du nicht kennst, löschen
- E-Mail-Postfächer der Domain, falls Spam verschickt wurde
Nutze überall lange, einzigartige Passwörter aus einem Passwort-Manager und aktiviere Zwei-Faktor-Authentifizierung, wo es geht.
Tipp: Prüfe auch die API-Schlüssel und Salts in Deiner Konfiguration. Bei WordPress reicht es, die
AUTH_KEY-Zeilen in derwp-config.phpneu zu generieren – damit fliegen alle noch eingeloggten Sitzungen raus, auch die des Angreifers.
Schritt 3: Ein Backup des gehackten Zustands ziehen
Klingt paradox, ist aber wichtig: Sichere den kompletten Webspace und die Datenbank genau so, wie sie jetzt sind – als ZIP, klar beschriftet mit Datum und „infiziert“.
Das brauchst Du, um später nachzuvollziehen, wie der Angreifer reingekommen ist. Ohne diese Info flickst Du nur das Symptom, und in zwei Wochen stehst Du wieder hier.
Schritt 4: Schadcode finden
Jetzt geht es an die Analyse. Du suchst nach drei Dingen: veränderten Dateien, neuen Dateien und Hintertüren.
Geänderte Dateien erkennst Du am Änderungsdatum. Sortiere im Dateimanager oder per SFTP nach „zuletzt geändert“ – alles, was jünger ist als Dein letztes Update, ist verdächtig.
Typische Verstecke:
uploads-,cache- undtmp-Ordner (dort gehören keine PHP-Dateien hin)- Dateien mit harmlosen Namen wie
wp-conf.php,class-wp-cache.php,.ico.php - Die
.htaccess– dort tragen Angreifer gern Weiterleitungen ein index.php,functions.phpdes Themes undwp-config.php
Typische Muster im Code: eval(, base64_decode(, gzinflate(, str_rot13(, lange unleserliche Zeichenketten oder ein <script src="…"> auf eine fremde Domain.
Abkürzung: Vergleiche Deine Installation mit einer frischen Kopie derselben CMS-Version. Alles, was in der Originalversion nicht existiert oder anders aussieht, ist ein Kandidat. Scanner wie Wordfence oder Sucuri helfen, ersetzen aber nicht den Blick auf die Dateien.
Schritt 5: Die Datenbank prüfen
Schadcode sitzt nicht nur in Dateien. Öffne phpMyAdmin und prüfe:
- Benutzertabelle (
wp_userso. ä.) – unbekannte Konten mit Admin-Rechten löschen - Optionen/Einstellungen – Seiten-URL, Startseite und E-Mail-Adresse noch korrekt?
- Beiträge und Widgets – nach
<script,<iframeund fremden Links durchsuchen - Neue Tabellen, die Du nicht kennst
Ein Volltext-Suchlauf über alle Tabellen nach <script und base64 findet die meisten Einträge in Sekunden.
Schritt 6: Sauber wiederherstellen
Jetzt hast Du zwei Wege – wähle immer den ersten, wenn er möglich ist:
Weg A: Sauberes Backup einspielen. Wenn Du ein Backup von vor dem Hack hast, spiele Dateien und Datenbank daraus zurück. Dann sofort alle Updates einspielen (CMS, Themes, Plugins) – die Lücke, über die der Angreifer kam, ist sonst noch offen.
Weg B: Neu aufbauen. Kein sauberes Backup? Dann:
- Webspace komplett leeren
- CMS in der aktuellen Version frisch installieren
- Themes und Plugins frisch aus offiziellen Quellen laden – nicht aus dem alten Webspace kopieren
- Nur Inhalte übernehmen: Bilder (ohne PHP-Dateien!), Texte, bereinigte Datenbank
- Konfigurationsdatei von Hand neu anlegen, nicht die alte übernehmen
Erst wenn alles sauber läuft, nimmst Du die Wartungsseite wieder raus.
Schritt 7: Nachsorge – damit es nicht wieder passiert
- Updates einspielen, sobald sie erscheinen – veraltete Plugins sind Einfallstor Nummer eins
- Ungenutzte Plugins, Themes und Nutzer löschen
- Automatische Backups aktivieren und regelmäßig testen, ob sie sich wirklich einspielen lassen
- Dateirechte prüfen: Ordner
755, Dateien644, Konfigurationsdateien600 - Bei Google Search Console eine Überprüfung beantragen, falls eine Warnung angezeigt wurde
- Kunden oder Nutzer ehrlich informieren, wenn Daten betroffen sein könnten – bei personenbezogenen Daten ist eine Meldung an die Datenschutzbehörde innerhalb von 72 Stunden Pflicht
Kurz zusammengefasst
- Offline nehmen
- Alle Passwörter tauschen
- Infizierten Zustand sichern
- Schadcode in Dateien finden
- Datenbank prüfen
- Sauber wiederherstellen – Backup oder Neuaufbau
- Absichern, damit es das letzte Mal war
Und wenn Du nicht weiterkommst: Unser Support hilft beim Zurückspielen von Backups und beim Prüfen des Webspaces – lieber einmal früh fragen, als die Seite eine Woche lang offline zu haben.