Wenn Hacker in eine Website einbrechen, dann nutzen sie nicht unbedingt eine Schwachstelle in der Software aus. Häufig loggen sie sich ganz normal mit einem Administrator-Passwort ein, das sie entweder gestohlen oder erraten haben. Bei WordPress ist das besonders einfach, weil das System in der Grundkonfiguration wenig tut, um solche Einbrüche zu verhindern oder zumindest zu erkennen. Allerdings braucht es nicht viel, um WordPress-Websites wesentlich sicherer zu machen.
WordPress ist ein beliebtes Ziel von Hacker-Angriffen. Und oft müssen sich die Hacker nicht einmal besonders anstrengen, sondern sie können sich ganz einfach mit dem Benutzernamen und dem Passwort eines Administrators anmelden. Ist das einmal gelungen, haben sie die volle Kontrolle über das System und bleiben oft lange unentdeckt.
Dass Hacker mit dieser Methode so häufig Erfolg haben, hat zwei Hauptursachen: unvorsichtige Benutzer und schlecht abgesicherte Websites. Gegen erstere ist kein Kraut gewachsen – aber gegen letztere kann man als verantwortungsbewusster Administrator sehr wohl etwas tun.
Unvorsichtige Benutzer
Unvorsichtige Benutzer sind beispielsweise solche, die unsichere Passwörter verwenden. Was sichere Passwörter sind, wissen wir zwar alle (vgl. Empfehlungen des Bundesamtes für Cybersicherheit BACS), trotzdem halten wir uns oft nicht daran: Statistiken zeigen, dass Passwörter wie viel häufiger sind, als man denkt.
WordPress meldet zwar, wenn man ein schwaches Passwort einzurichten versucht. Gleichzeitig bietet es dem Benutzer aber die Möglichkeit, diese Warnung zu ignorieren (Option «Bestätigen Sie die Verwendung eines schwachen Passworts»). Das macht diesen Passwort-Check einigermassen wertlos.

Unvorsichtige Benutzer sind aber auch solche, die
- Login-Daten auf ein Post-it notieren und an den Bildschirm kleben
- Login-Daten per E-Mail verschicken
- Login-Daten mit anderen Personen teilen
- für alle Systeme dasselbe Passwort verwenden
Kurz: Es gibt viele Möglichkeiten, um elementare Sicherheitsregeln zu missachten und so den Hackern in die Hände zu spielen. Und nach unserer Erfahrung geschieht dies viel häufiger, als man denkt. Viele WordPress-Benutzer:innen wissen zu wenig über Computersicherheit, unterschätzen die Risiken – oder sind schlicht zu bequem, um sich an die Regeln zu halten.
Wer eine WordPress-Website sicher betreiben will, sollte sich also nicht darauf beschränken, deren Benutzer zu ermahnen. Vielmehr sollte man einige technische Massnahmen ergreifen, um das Login besser abzusichern.
Login-Versuche beschränken
Dass Login-Daten gestohlen werden, kommt zwar vor – viel häufiger werden sie aber erraten: Hacker probieren ganz einfach alle möglichen Zeichenkombinationen für Benutzername und Passwort durch, bis sie auf ein gültiges Login stossen.
Täten sie das von Hand, wäre das eine mühsame und langwierige Prozedur mit geringen Erfolgsaussichten. Weil man das aber mit Software automatisieren kann, ist diese brachiale Einbruchsmethode (sog. Brute-Force Attack) durchaus effizient – insbesondere wenn unsichere Passwörter im Einsatz sind. Entsprechende Software können sich auch Junior-Hacker sehr einfach beschaffen oder von KI-Tools generieren lassen.
Noch effektiver sind Brute-Force-Angriffe, die nicht von einem einzelnen Rechner aus geführt werden, sondern von vielen verschiedenen Rechnern aus. Natürlich nutzen Hacker dabei keine eigenen Rechner, sondern solche, die sie bereits gehackt und zu einem sogenannten Botnet zusammengeschlossen haben.
Wer WordPress in der Standardkonfiguration betreibt, bekommt von solchen Angriffen nichts mit: Fehlgeschlagene Anmeldeversuche werden nirgends protokolliert. Hinzu kommt die verbreitete Vorstellung, die eigene Website sei zu unbedeutend, um für Hacker interessant zu sein.
Dies führt dazu, dass das Risiko von Brute-Force-Attacken massiv unterschätzt wird. Dabei sind solche Angriffe an der Tagesordnung, und zwar unabhängig von Betreiber, Grösse oder Bekanntheit einer Website. Für die meisten Ziele, die Hacker verfolgen, spielt es überhaupt keine Rolle, ob eine Website der Schweizer Nationalbank oder dem Kaninchenzüchterverein Hinterkappelen gehört: Hackern geht es in der Regel darum, möglichst viele Websites unter ihre Kontrolle zu bringen. Im Zweifelsfall ist die Website des Kaninchenzüchtervereins sogar das attraktivere Ziel, weil sie weniger gut geschützt ist als die Website der Nationalbank.
Die vielleicht wichtigste Sicherheitsmassnahme für jede WordPress-Website besteht deshalb darin, die Anzahl der Login-Versuche zu beschränken. Es gibt diverse Plug-ins, die einen solchen Schutzmechanismus nachrüsten. Das Prinzip ist immer ähnlich: Nach einer bestimmten Anzahl von fehlerhaften Passworteingaben wird die entsprechende IP-Adresse oder auch das entsprechende Benutzerkonto für eine bestimmte Zeit gesperrt. Auf diese Weise können Hacker nur noch einige wenige Zeichenkombinationen pro Tag ausprobieren und brauchen ewig, um ein Passwort zu erraten.
Solche Plug-ins bieten in der Regel auch ein Protokoll aller erfolgreichen und fehlgeschlagenen Anmeldungen. Damit kann man nicht nur nachvollziehen, wer sich wann eingeloggt hat, sondern man bekommt auch ein Gefühl dafür, wie oft die Website angegriffen wird.
Sichere Passwörter erzwingen
Wie gezeigt prüft WordPress zwar die Passwortstärke, erlaubt aber über eine Checkbox die Verwendung eines schwachen Passworts. Die einfachste Methode, um sichere Passwörter zu erzwingen, besteht darin, diese Checkbox auszublenden. Das ist mit ein paar Zeilen Code einfach zu machen, aber auch einfach zu umgehen und deshalb nicht empfehlenswert.
Die bessere Lösung besteht auch hier darin, ein geeignetes Plug-in zu installieren. Viele universelle Security Plug-ins erlauben es, minimale Anforderungen an Passwörter zu definieren. Zudem gibt es spezialisierte Plug-ins wie Password Policy Manager, No Weak Passwords oder Melapress Login Security, die sich speziell um die Passwort-Sicherheit kümmern.
Gewisse Plug-ins bieten auch die Option, dass die Benutzer periodisch ein neues Passwort setzen müssen. Inzwischen hat sich allerdings die Erkenntnis durchgesetzt, dass dies vor allem die Benutzer nervt und nicht wirklich zur Sicherheit beiträgt (vgl. Er ist schuld am Passwort-Wahnsinn – und bereut sein Werk).

Unsere Dienstleistungen rund um WordPress
Metoki ist auf WordPress Websites spezialisiert: Seit über zehn Jahren arbeiten wir intensiv mit dieser Plattform.
Wir erstellen komplette Web-Auftritte, bieten aber auch Support für bestehende WordPress-Websites. Unsere Spezialgebiete sind mehrsprachige Websites mit WordPress sowie die Integration von individuellen Datenbanken mit Toolset.
Benutzernamen schützen
Warum sollte man nicht nur Passwörter, sondern auch Benutzernamen schützen? Ganz einfach: Ein Login besteht aus der Kombination eines Benutzernamens und eines Passworts. Wenn der Hacker den Benutzernamen bereits kennt, dann muss er nur noch das Passwort herausfinden und hat so nur einen Bruchteil der Arbeit.
Leider gibt es verschiedene Methoden, wie man Benutzernamen einer WordPress-Website herausfinden kann – beispielsweise über die REST API mit einem Aufruf der folgenden Adresse: https://www.example.com/wp-json/wp/v2/users/ Auch hier gibt es Gegenmassnahmen und entsprechende Plug-ins; allerdings muss man sich ein bisschen in das Thema einarbeiten, um wirklich alle Hinweise auf die registrierten Benutzer zu eliminieren.
Die vielleicht grösste Sicherheitslücke besteht übrigens darin, dass WordPress in früheren Versionen standardmässig einen Administrator mit dem Benutzernamen «admin» angelegt hat. Falls noch ein Benutzer dieses Namens auf Ihrer Website existiert, sollten Sie ihn unbedingt löschen.
Die Aufzeichnung der fehlgeschlagenen Login-Versuche gibt Ihnen Hinweise auf andere weit verbreitete Benutzernamen, die Hacker standardmässig durchprobieren und die Sie deshalb vermeiden sollten. Anhand dieses Protokolls sehen Sie auch, ob die Hacker die Benutzernamen Ihrer Website kennen oder einfach Personennamen ausprobieren, die sie auf der Website gefunden haben. Bei unserer eigenen Website beispielsweise gibt es viele Einbruchsversuche mit «Martin Sauter», «martin-sauter» und ähnlichen Varianten. Das kann man nicht verhindern – aber man kann Benutzernamen so wählen, dass sie nicht direkt aus dem Namen der Person abgeleitet werden können.
Ein zweischneidiges Schwert ist auch die in WordPress 4.5 eingeführte Möglichkeit, beim Login die E-Mail-Adresse anstelle des Benutzernamens zu verwenden. Für die Benutzer ist das zwar praktisch, weil sie sich ihre E-Mail-Adresse besser merken können als einen Benutzernamen, der bei jedem System anders lautet. Andererseits ist eine E-Mail-Adresse mehr oder weniger öffentlich und oft auch leicht zu erraten. Wenn man auf Nummer sicher gehen will, sollte man die Anmeldung per E-Mail-Adresse deaktivieren – was man beispielsweise mit dem Plug-in No Login by Email Address bewerkstelligen kann.
2-Faktor-Authentifizierung installieren
Alle Sicherheitsmassnahmen rund um Benutzernamen und Passwörter bringen nichts, solange man unvorsichtige Benutzer hat (siehe ersten Abschnitt). Und weil man dies nie ausschliessen kann, sollte man eine 2-Faktor-Authentifizierung (2FA) in Betracht ziehen – zumindest für Benutzer mit Administrator-Rechten.
Das Prinzip der 2-Faktor-Authentifizierung kennen Sie vom E-Banking: Nach dem Login mit Benutzername und Passwort müssen sie zusätzlich einen Code eingeben, den Sie von einer Smartphone-App ablesen oder per SMS zugeschickt erhalten. Die 2FA-Methode ist deshalb besonders sicher, weil sie den physischen Zugriff auf das Smartphone erfordert; zudem ist der Code nur einmal und nur kurze Zeit gültig ist.
Inzwischen haben viele grosse Websites die 2-Faktor-Authentifizierung zumindest als Option eingeführt – aus gutem Grund. Natürlich macht dies die Anmeldung etwas umständlicher. Wer einen Kompromiss zwischen Sicherheit und Komfort sucht, kann aber meist eine Option wie «Diesem Gerät vertrauen» anklicken und muss dann nur noch in grösseren Zeitabständen einen neuen Code eingeben. Zudem können Passwort-Manager wie Bitwarden oder 1Password ebenfalls 2FA-Codes generieren und – zusammen mit Benutzername und Passwort – automatisch ausfüllen.
Eine 2-Faktor-Autentifizierung kann man bei einer WordPress-Website über entsprechende Plug-ins sehr einfach nachrüsten. Empfehlenswert ist insbesondere das Community-Plug-in Two-Factor, das auch bei www.wordpress.org zum Einsatz kommt. Wer mehr Funktionen und Einstellmöglichkeiten sucht, sollte sich WP 2FA, Two Factor Authentication oder miniOrange 2-Factor Authentication anschauen.
Eine moderne Alternative zur 2-Faktor-Authentifizierung wären Passkeys: Sie sind tendenziell sicherer und zudem komfortabler. Allerdings ist das Angebot an entsprechenden Lösungen für WordPress-Websites derzeit noch sehr überschaubar.
IP-Filter einrichten
Eine weitere Methode für mehr Sicherheit, die aber nicht für alle Websites geeignete ist, sind IP-Filter. Diese bewirken, dass Logins nur dann möglich sind, wenn sie von einer bestimmten IP-Adresse aus erfolgen.
Das bedingt, dass die Website-Benutzer Rechner mit fixen IP-Adressen haben, die man in der Website hinterlegen kann. In Unternehmen ist das oft der Fall, in Privathaushalten normalerweise nicht. IP-Filter sind deshalb primär für Websites von Unternehmen geeignet. Sie haben zudem den Nachteil, dass sich auch legitime Benutzer nur vom Büro aus (oder über ein VPN) in die Website einloggen können.
Benachrichtigung bei Registrierung und Login
Eine weitere einfache Sicherheitsmassnahme besteht darin, dass man sich benachrichtigen lässt, wenn sich ein Benutzer anmeldet oder wenn ein neuer Benutzer erstellt wird – zumindest wenn es um Benutzer mit Administrator-Rechten geht. Eine solche Benachrichtigung ist bei WordPress ebenfalls nicht Standard, aber man kann sie leicht über eine Custom Function selbst implementieren. Auch Plug-ins wie Notification bieten entsprechende Möglichkeiten.
Zwar verhindert man damit keine Einbrüche, aber man wird unter Umständen frühzeitig darauf aufmerksam. Wir haben selbst einmal einen Hacker in flagranti ertappt, weil er sich auf der Website eines Schweizer Vereins gerade ein Administrator-Login mit einer russischen E-Mail-Adresse angelegt hatte…

