Bahnhofstraße 22, 52134 Herzogenrath Montag - Freitag: 8:00 - 16:30 kontakt@milnersoftware.de 0176 66798849

Aktuelles · WordPress · · 5 Min. Lesezeit

WordPress leitet auf Spam-Seiten um: Ursache finden und Seite bereinigen

Besucher landen auf Spam- oder Gewinnspielseiten, Sie selbst sehen nichts? Wo die Umleitung in .htaccess, Datenbank und Theme steckt, wie Angreifer hereinkommen und wie Sie die Seite bereinigen.

Zwei Personen besprechen eine Website am Laptop

Kurz gesagt: Leitet Ihre WordPress-Seite Besucher auf Spam-, Gewinnspiel- oder Casino-Seiten um, ist sie fast sicher gehackt. Die Weiterleitung steckt meist in der .htaccess, in eingeschleustem JavaScript in der Datenbank, in einer manipulierten Theme-Datei oder in einem versteckten Plugin. Oft ist sie so gebaut, dass Sie als eingeloggter Administrator nichts merken: Sie trifft nur Handy-Nutzer oder Besucher, die über Google kommen. Plugin deaktivieren reicht nicht. Die Seite muss vollständig bereinigt und die Lücke geschlossen werden.

Meistens erfährt man es von anderen. Eine Kundin schreibt, dass sie auf Ihrer Seite plötzlich bei einem „Sie haben ein iPhone gewonnen“ gelandet ist. Sie selbst öffnen die Seite am Rechner, alles sieht normal aus. Das ist kein Zufall. Wer eine Seite hackt, will, dass sie möglichst lange unentdeckt bleibt, und spart deshalb genau den Besucher aus, der am ehesten etwas ändern würde: Sie.

Woran Sie die Umleitung erkennen

  • Die Umleitung passiert nur auf dem Handy, nur beim ersten Besuch oder nur, wenn man über ein Google-Suchergebnis kommt.
  • Eingeloggte Administratoren sehen nichts, ausgeloggte Besucher schon.
  • Google zeigt bei Ihrer Seite „Diese Website wurde möglicherweise gehackt“ oder Chrome warnt vor einer gefährlichen Seite.
  • In der Google Search Console erscheinen unter „Sicherheitsprobleme“ Meldungen oder unter „Seiten“ plötzlich tausende Adressen, die Sie nie angelegt haben.
  • Im Quelltext Ihrer Seite steht ein Skript von einer Domain, die Sie nicht kennen.

Weitere Anzeichen, etwa japanischer Spam in den Suchergebnissen oder unbekannte Administratoren, beschreibe ich in WordPress gehackt? So erkennen Sie es.

So testen Sie die Umleitung selbst

Öffnen Sie Ihre Seite in einem privaten Browserfenster, am besten auf dem Handy im Mobilnetz statt im WLAN. Suchen Sie die Seite bei Google und klicken Sie auf das Suchergebnis, statt die Adresse einzutippen. Wer die Kommandozeile nicht scheut, kann die Antwort des Servers als Handy-Besucher von Google prüfen:

curl -sI -A "Mozilla/5.0 (iPhone; CPU iPhone OS 17_0 like Mac OS X)" \
     -e "https://www.google.com/" https://ihre-domain.de/

Steht in der Antwort eine Zeile Location: mit einer fremden Adresse, kommt die Umleitung vom Server, meist aus der .htaccess oder einer PHP-Datei. Steht dort nichts, kann die Umleitung trotzdem per JavaScript im Browser passieren. Dann finden Sie sie im Quelltext der Seite.

Wo die Umleitung typischerweise steckt

.htaccess

Eingefügte Regeln, die nach Browser oder Herkunft unterscheiden, zum Beispiel RewriteCond %{HTTP_REFERER} google oder RewriteCond %{HTTP_USER_AGENT} android|iphone, gefolgt von einer Weiterleitung auf eine fremde Domain. Prüfen Sie nicht nur die .htaccess im Hauptverzeichnis, sondern auch die in Unterordnern wie wp-content und wp-content/uploads.

Datenbank

Sehr häufig steckt das Skript in Beiträgen, Seiten oder Widgets. Prüfen Sie in phpMyAdmin die Tabelle wp_options, vor allem die Werte siteurl und home. Steht dort eine fremde Domain, leitet WordPress alles um. Beiträge mit eingeschleustem Code finden Sie mit einer Abfrage wie:

SELECT ID, post_title FROM wp_posts
WHERE post_content LIKE '%<script%';

Das Präfix wp_ kann bei Ihnen anders lauten. Es steht in der wp-config.php unter $table_prefix.

Theme- und Systemdateien

Beliebte Stellen sind header.php und functions.php des Themes, die index.php und wp-config.php im Hauptverzeichnis sowie Dateien in wp-includes. Der Code ist meist verschleiert, typisch sind lange Zeichenketten mit eval, base64_decode oder gzinflate.

Versteckte Plugins und PHP-Dateien in uploads

Sehen Sie in wp-content/mu-plugins nach. Plugins dort laufen automatisch und lassen sich im Backend nicht deaktivieren. Im Ordner wp-content/uploads haben PHP-Dateien nichts zu suchen. Dort liegen Bilder und PDFs. Eine .php-Datei zwischen Ihren Fotos ist fast immer eine Hintertür.

Wie die Angreifer hereinkommen

Bei den gehackten Seiten, die ich bereinigt habe, war der Weg fast immer einer von diesen:

  • Veraltete Plugins mit bekannter Sicherheitslücke. Ein bekanntes Beispiel ist das Plugin „WP File Manager“: In den Versionen 6.0 bis 6.8 konnten Angreifer ohne Anmeldung Dateien hochladen. Die Lücke wurde im September 2020 massenhaft ausgenutzt. Dateimanager-Plugins sind generell ein beliebtes Ziel, weil sie vollen Zugriff auf alle Dateien haben.
  • Gestohlene oder zu einfache Passwörter für WordPress, FTP oder das Kundenmenü des Hosters.
  • Raubkopierte Premium-Themes und -Plugins von „Nulled“-Seiten, in denen die Hintertür schon eingebaut ist.
  • Andere Seiten im selben Hosting-Paket. Liegen fünf Websites in einem Paket und eine davon ist veraltet, sind alle fünf in Gefahr.

Was Sie jetzt tun sollten

  1. Nicht in Panik löschen. Sichern Sie zuerst Dateien und Datenbank, so wie sie jetzt sind. Diese Kopie brauchen Sie, um später nachzuvollziehen, wie der Angreifer hereinkam.
  2. Zugänge beim Hoster ändern: Kundenmenü, FTP und Datenbank-Passwort. Das Datenbank-Passwort danach auch in der wp-config.php eintragen.
  3. WordPress-Kern ersetzen: wp-admin und wp-includes komplett durch frische Dateien derselben Version von wordpress.org austauschen.
  4. Plugins und Theme frisch installieren aus der Originalquelle. Was Sie nicht nutzen, löschen Sie, statt es nur zu deaktivieren.
  5. Datenbank, .htaccess und uploads prüfen wie oben beschrieben.
  6. Benutzer prüfen: unbekannte Administratoren entfernen, alle Passwörter ändern.
  7. Sicherheitsschlüssel erneuern: die Werte AUTH_KEY, SECURE_AUTH_KEY usw. in der wp-config.php neu setzen. Damit werden alle bestehenden Anmeldungen ungültig.
  8. Google informieren: In der Search Console unter „Sicherheitsprobleme“ eine Überprüfung beantragen, sobald die Seite sauber ist.

Ein altes Backup einzuspielen klingt verlockend. Es hilft aber nur, wenn es sicher von vor dem Angriff stammt, und es schließt die Lücke nicht. Viele Angriffe laufen wochenlang unbemerkt, bevor die Umleitung aktiv wird. Und mit dem alten Stand kommt auch das alte, verwundbare Plugin zurück.

Wann Sie Hilfe holen sollten

Eigentlich immer, wenn die Umleitung nach einer ersten Bereinigung wiederkommt. Das bedeutet, dass irgendwo noch eine Hintertür liegt. Ebenso, wenn ein Shop mit Kundendaten betroffen ist, denn dann kann eine Meldepflicht nach der DSGVO bestehen, oder wenn mehrere Seiten im selben Hosting-Paket liegen.

Professionelle Hilfe

Ich bereinige gehackte WordPress-Seiten vollständig: Schadcode in Dateien und Datenbank entfernen, Hintertüren suchen, die Lücke finden und schließen, Zugänge erneuern und die Überprüfung bei Google begleiten. Die Malware-Entfernung beginnt bei 490 € netto, mehr dazu unter WordPress gehackt. Damit es nicht wieder passiert, bringt das WordPress-Update veraltete Plugins und PHP auf den aktuellen Stand.

Geschrieben von Przemysław Milner

Weitere Beiträge