Autor: Max Prügner, Webdesigner seit 2017
Spezialist für moderne Websites für kleine und mittelständische Unternehmen · Über 400 Websites erstellt · mehr als 300 Kunden in Betreuung

WordPress-Sicherheit bedeutet, eine Website so einzurichten und zu pflegen, dass bekannte Lücken geschlossen bleiben. Die meisten erfolgreichen Angriffe laufen über veraltete Plugins, veraltete Themes und schwache Passwörter, nicht über den WordPress-Kern. Wer Updates zeitnah einspielt, Zwei-Faktor-Anmeldung nutzt und ein Backup hat, das schon einmal zurückgespielt wurde, schließt den größten Teil der Einfallstore.

Das Wichtigste im Überblick

  • Der WordPress-Kern ist selten das Problem. Die Lücken sitzen in veralteten Plugins und Themes.
  • Drei Maßnahmen decken den größten Teil ab: zeitnahe Updates, Zwei-Faktor-Anmeldung, getestetes Backup.
  • Ein Sicherheits-Plugin ersetzt kein Update. Gegen eine bekannte Lücke hilft es nicht.
  • Ein Backup, das noch nie zurückgespielt wurde, ist eine Vermutung.
  • Eine abgelaufene PHP-Version macht jedes WordPress-Update wirkungslos.

Wie sicher ist WordPress wirklich?

WordPress selbst ist sicher. Unsicher wird es durch das, was drumherum installiert wird.

Der Kern wird von einem festen Sicherheitsteam gepflegt, das Lücken meldet und Aktualisierungen bereitstellt. Nachlesen lässt sich das beim WordPress-Sicherheitsteam. Das eigentliche Risiko liegt woanders: WordPress läuft laut wordpress.org auf über 43 Prozent aller Websites weltweit, und dazu kommen zehntausende Plugins und Themes von tausenden verschiedenen Entwicklern. Für die haftet niemand zentral.

Wer eine WordPress-Website betreibt, verwaltet damit keine einzelne Software, sondern eine Zusammenstellung. Sicherheit ist deshalb keine Einstellung, die man einmal setzt, sondern eine Pflege, die läuft.

Daraus folgt auch, wie man die Frage sinnvoll stellt. Nicht „ist WordPress sicher", sondern „ist diese Installation aktuell, sind die Zugänge kontrolliert, und lässt sich der Stand von letzter Woche zurückholen". Auf die erste Frage gibt es keine brauchbare Antwort. Auf die drei anderen schon.

Warum WordPress so häufig angegriffen wird

Angegriffen wird WordPress, weil es sich lohnt: Ein Skript, das eine bekannte Plugin-Lücke ausnutzt, findet über 43 Prozent aller Websites weltweit als potenzielle Ziele.

Die beiden Ursachen, die MP-Webdesign bei den eigenen Bereinigungen am häufigsten findet, sind ein veraltetes Plugin und ein schwaches Passwort. Dazu kommt als dritter Klassiker das sehr günstige Shared Hosting, bei dem viele Websites auf einer Umgebung liegen und eine befallene Nachbarseite zum Problem wird.

Zwei weitere Ursachen haben die wenigsten auf dem Zettel: eine abgelaufene PHP-Version und falsch gesetzte Dateiberechtigungen. Beide stehen weiter unten in einem eigenen Abschnitt, weil sie regelmäßig übersehen werden.

Welche Sicherheitslücken gibt es in WordPress?

Die Sicherheitslücken in einer WordPress-Installation lassen sich in vier Gruppen einteilen. Erstens die Schwachstellen in Plugins und Themes, mit Abstand die größte Gruppe. Zweitens die Zugangsdaten, also schwache oder mehrfach verwendete Passwörter. Drittens die Serverumgebung mit veralteter PHP-Version, offenen FTP-Zugängen und zu weit gesetzten Dateiberechtigungen. Viertens die Konfiguration, etwa zu viele Benutzer mit Administratorrechten.

Der WordPress-Kern selbst gehört in dieser Aufzählung an die letzte Stelle. Er ist die am besten gepflegte Komponente der ganzen Installation.

Automatisierte Angriffe treffen jede Größe

Kein Angreifer sucht sich Ihre Website aus. Skripte durchsuchen das Netz nach Installationen mit einer bestimmten Plugin-Version und schlagen dort zu, wo sie fündig werden. Ein Handwerksbetrieb mit fünfzig Besuchern im Monat ist für ein solches Skript genauso interessant wie ein Onlineshop, weil es nicht um Ihre Kunden geht, sondern um Ihren Webspace.

Warum ist meine WordPress-Seite nicht sicher? Die häufigsten Angriffe

Unsicher ist eine WordPress-Seite meistens nicht wegen einer exotischen Schwachstelle, sondern weil ein bekannter Angriffsweg offen geblieben ist. Drei Wege decken den Großteil ab.

Brute Force auf die Anmeldung

Bei einem Brute-Force-Angriff probiert ein Skript Passwörter durch, oft tausende pro Stunde und meist mit dem Benutzernamen „admin". Ein langes, einmalig verwendetes Passwort macht diesen Weg praktisch wertlos, weil die Rechenzeit nicht mehr aufgeht. Eine Begrenzung der Anmeldeversuche und Zwei-Faktor-Anmeldung schließen ihn weitgehend. Nebenwirkung dieser Angriffe: Sie erzeugen Last. Wird eine kleine Website ohne erkennbaren Grund langsam, lohnt ein Blick in die Anmeldeprotokolle.

Schadcode über eine Plugin-Lücke

Wird in einem verbreiteten Plugin eine Lücke bekannt, steht sie öffentlich in den Schwachstellendatenbanken, oft am selben Tag. Ab diesem Moment laufen automatisierte Scans gegen alle Websites, die diese Version noch einsetzen. Der Angreifer nutzt dabei keinen Trick, sondern eine dokumentierte Funktion, die falsch abgesichert war.

SEO-Spam, den man selbst nicht sieht

Bei dieser Variante bleibt die Website für Sie unverändert. Der Schadcode liefert nur an Suchmaschinen zusätzliche Seiten aus, meist mit Werbung für Fälschungen oder Glücksspiel. Auffällig wird das erst in den Suchergebnissen oder wenn Google eine Warnung setzt. Ein schneller Selbsttest ist die Suche nach site:ihre-domain.de. Tauchen dort Seiten auf, die Sie nie angelegt haben, ist das ein Alarmsignal.

Sind Sie rechtlich verpflichtet, Ihre Website abzusichern?

Ja, sobald über Ihre Website personenbezogene Daten verarbeitet werden, und das beginnt beim einfachen Kontaktformular. Art. 32 DSGVO verlangt geeignete technische und organisatorische Maßnahmen nach dem Stand der Technik. Art. 82 DSGVO regelt, dass Betroffene Schadensersatz verlangen können, wenn dagegen verstoßen wurde.

Praktisch heißt das: Aktuelle Software, kontrollierte Zugänge und ein funktionierendes Backup sind keine Kür, sondern das, was von einem Verantwortlichen erwartet wird. „Stand der Technik" ist dabei kein fester Katalog, sondern das, was zum jeweiligen Zeitpunkt üblich und zumutbar ist. Für eine kleine Firmenwebsite bedeutet das etwas anderes als für einen Shop mit Kundenkonten.

Dazu kommt eine Dokumentationspflicht, die oft übersehen wird. Wer nachweisen will, dass er seiner Sorgfaltspflicht nachgekommen ist, braucht eine Spur: wann Updates liefen, wann ein Backup geprüft wurde, wer Zugang hatte. Ein protokollierter Wartungslauf erfüllt damit zwei Zwecke auf einmal. Er hält die Website aktuell, und er dokumentiert, dass sie aktuell gehalten wurde.

Ob das im Einzelfall ausreicht und welche Pflichten für Ihren Betrieb konkret gelten, gehört zum Rechtsbeistand. Diese Einordnung ersetzt keine Rechtsberatung.

Ist WordPress datenschutzkonform?

WordPress selbst ist datenschutzkonform einsetzbar. Ob eine konkrete Website es ist, entscheidet sich an dem, was zusätzlich eingebunden wurde: Schriftarten von externen Servern, Karten, Videos, Analyse-Werkzeuge und Formular-Plugins, die Daten an Dritte weitergeben. Jeder dieser Dienste gehört in die Datenschutzerklärung, und die einwilligungspflichtigen gehören hinter einen Consent-Banner.

Was auf der eigenen Website tatsächlich lädt, lässt sich in fünf Minuten selbst nachsehen. Öffnen Sie die Seite im Browser, rufen Sie die Entwicklerwerkzeuge auf und schauen Sie unter „Netzwerk", welche fremden Domains beim Aufruf angefragt werden. Jede Domain, die dort auftaucht und nicht Ihre eigene ist, gehört auf den Prüfstand: Steht dieser Dienst in der Datenschutzerklärung, und braucht er eine Einwilligung, bevor er geladen wird?

Die Maßnahmen, die wirklich etwas bringen

Die folgenden Maßnahmen sind nach Wirkung sortiert, nicht nach Aufwand. Wenn Sie nur drei Dinge umsetzen, nehmen Sie die ersten drei.

MaßnahmeWirkungAufwandSelbst machbar
Updates für Kern, Plugins und Themes zeitnah einspielensehr hochregelmäßig, gering je Durchgangja, mit Testblick
Zwei-Faktor-Anmeldung für alle Administratorensehr hocheinmaligja
Backup außerhalb des Servers, einmal testweise zurückgespieltsehr hocheinmalig plus Kontrolleteilweise
Starke, einmalig verwendete Passwörter aus einem Passwort-Generatorhocheinmaligja
Ungenutzte Plugins und Themes vollständig löschenhocheinmaligja
PHP-Version aktuell haltenhochselten, mit Testnein
HTTPS mit gültigem Zertifikat, ohne Mixed Contentmitteleinmaligteilweise
Anmeldeversuche begrenzenmitteleinmaligja
Dateiberechtigungen korrekt setzenmitteleinmalignein
Web Application Firewallje nach Websitelaufendnein

Zwei Zeilen werden dabei fast immer unterschätzt. Ungenutzte Plugins und Themes löschen heißt wirklich löschen, nicht deaktivieren: Ein deaktiviertes Plugin liegt weiterhin auf dem Server und bleibt über seine Dateien angreifbar. Und starke Passwörter heißt einmalig verwendete Passwörter aus einem Generator, nicht das Firmenpasswort mit einer angehängten Zahl.

Reicht ein Sicherheits-Plugin?

Ein Sicherheits-Plugin senkt das Risiko deutlich, ersetzt aber kein Update. Es ist eine sinnvolle zweite Ebene und keine erste.

Wordfence, Solid Security und was sie leisten

Wordfence und Solid Security bringen im Wesentlichen drei Funktionen mit: eine Firewall, die bekannte Angriffsmuster blockt, einen Login-Schutz gegen Brute Force, und ein Datei-Monitoring, das die Installation mit dem Original vergleicht und veränderte Dateien meldet. Die kostenlosen Versionen decken das ab. Die Pro-Versionen liefern die Firewall-Regeln für neue Lücken früher, was bei einem Shop den Unterschied machen kann und bei einer Visitenkarten-Website selten nötig ist.

Wichtiger als die Wahl zwischen den beiden ist, dass nur eines läuft. Zwei Sicherheits-Plugins parallel blockieren sich gegenseitig, erzeugen doppelte Prüfungen und kosten Ladezeit, ohne den Schutz zu verdoppeln. Und ein Sicherheits-Plugin, dessen Benachrichtigungen niemand liest, ist ein Protokoll, kein Schutz. Der erste Einrichtungsschritt ist deshalb die Frage, an welche Adresse die Meldungen gehen und wer sie tatsächlich öffnet.

Wogegen ein Plugin nicht hilft

Gegen eine bekannte Lücke in einem veralteten Plugin hilft es oft nicht. Der Angreifer nutzt dort einen regulären, vom Plugin selbst vorgesehenen Weg, und für das Sicherheits-Plugin sieht der Aufruf unauffällig aus. Genauso wenig ersetzt es ein Backup: Ein Alarm sagt Ihnen, dass etwas passiert ist, nicht wie Sie den Zustand von vorgestern zurückbekommen. Und gegen Schwachstellen unterhalb von WordPress, also in der PHP-Version oder in der Serverkonfiguration, richtet ein Plugin im Adminbereich naturgemäß nichts aus.

Was ein Plugin auf schwachem Hosting kostet

Datei-Scans und Live-Traffic-Auswertung brauchen Rechenzeit. Auf einem günstigen Shared-Hosting-Paket macht sich das in der Ladezeit bemerkbar, besonders während der Scans. Wer an dieser Stelle Tempo verliert, sollte den Scan-Zeitpunkt verlegen oder sich ansehen, wie eine Website schneller wird.

Backups, die im Ernstfall funktionieren

Ein Backup ist erst dann ein Backup, wenn es einmal zurückgespielt wurde. Alles davor ist eine Vermutung.

Bei den 300 WordPress-Websites, die MP-Webdesign laufend betreut, läuft der Wartungslauf im Rhythmus von ein bis drei Monaten, und jedes Backup wird beim Übernehmen einmal testweise zurückgespielt. Von zehn Websites, die MP-Webdesign in Betreuung übernimmt, scheitert dieser Test bei dreien. Ein Backup war dort jeweils vorhanden. Zurückspielen ließ es sich nicht.

Drei Denkfehler tauchen dabei immer wieder auf. Der erste ist das falsche Datum: Wer täglich sichert und den Befall erst nach drei Wochen bemerkt, hat nur infizierte Stände. Der zweite ist der Speicherort: Ein Backup auf demselben Server ist mit dem Server weg. Der dritte ist der Umfang: Dateien allein reichen nicht, die Datenbank gehört dazu, sonst fehlen alle Inhalte.

Zwei Fragen klären den eigenen Stand in fünf Minuten. Wie viele Versionen liegen vor, und wie weit reicht die älteste zurück? Und liegt die Kopie bei einem anderen Anbieter als die Website? Wer beides nicht beantworten kann, hat kein geprüftes Backup, sondern ein Häkchen in einer Einstellung.

Updates: was zeitnah wirklich heißt

Zeitnah heißt bei Sicherheitsupdates innerhalb von Tagen, nicht innerhalb von Monaten. Sobald eine Lücke öffentlich ist, laufen die Scans.

Sinnvoll ist eine Trennung: Sicherheitsupdates werden sofort eingespielt. Funktions-Updates laufen im festen Rhythmus mit einem Blick auf die Seite danach, weil ein Update auch etwas zerschießen kann. Bei MP-Webdesign läuft dieser Wartungslauf im Rhythmus von ein bis drei Monaten, mit Kontrolle der wichtigsten Seiten im Anschluss.

Automatische Updates sind besser als keine Updates. Ohne anschließende Kontrolle bemerkt aber niemand, wenn ein Formular seit drei Wochen nicht mehr sendet.

Die zwei Punkte, die fast immer übersehen werden

Die PHP-Version

Eine abgelaufene PHP-Version macht jedes WordPress-Update wirkungslos, weil die Sicherheitslücken dann eine Ebene tiefer liegen. PHP-Versionen bekommen nur für eine begrenzte Zeit Sicherheitsupdates, danach bleiben bekannte Schwachstellen offen.

Nachsehen können Sie das im WordPress-Backend unter Werkzeuge und Website-Zustand. Umgestellt wird die Version beim Hoster, und zwar nie ungetestet: Ältere Plugins vertragen einen Sprung manchmal nicht, deshalb gehört ein Test auf einer Kopie davor.

Dateiberechtigungen und Serverrechte

Dateiberechtigungen legen fest, wer eine Datei lesen und schreiben darf. Als Richtwert gelten 644 für Dateien und 755 für Ordner, die wp-config.php darf enger stehen. Die Einstellung 777 gibt jedem Schreibrechte und ist in einer Live-Umgebung nie richtig, auch nicht kurzfristig zum Testen.

Zum selben Thema gehört der Zugang: Wer noch per FTP arbeitet, überträgt Passwörter im Klartext. SFTP verschlüsselt die Verbindung und wird von praktisch jedem Hosting unterstützt.

HTTPS richtig eingerichtet

HTTPS verschlüsselt die Verbindung zwischen Besucher und Server und ist bei jedem Formular Pflicht, nicht optional. Ein gültiges SSL-Zertifikat gehört heute zu jedem Hosting-Paket dazu.

Häufiger als ein fehlendes Zertifikat ist der Mixed-Content-Fehler: Die Seite läuft über HTTPS, lädt aber einzelne Bilder, Schriften oder Skripte noch über HTTP. Der Browser meldet dann trotz gültigem Zertifikat eine unsichere Verbindung. Das ist ein Konfigurationsfehler und kein Angriff, sollte aber behoben werden, weil Besucher den Unterschied nicht kennen.

Braucht eine kleine Firmenwebsite eine Firewall?

Meistens nicht. Eine Web Application Firewall lohnt sich dort, wo laufend Daten verarbeitet werden oder ein Ausfall direkt Geld kostet.

Für einen Shop auf WooCommerce mit Bestellungen und Kundenkonten ist eine WAF, etwa über Cloudflare, eine sinnvolle Ebene. Sie filtert Angriffsmuster, bevor sie überhaupt auf dem Server ankommen, und fängt auch Lastspitzen ab. Für eine Firmenwebsite mit fünf Seiten und einem Kontaktformular ist der Nutzen gering, während Einrichtung und laufende Pflege real sind. Dort bringen dieselben Stunden mehr, wenn sie in Updates und ein getestetes Backup fließen.

Wer darf was? Benutzerrollen und Login

Die Anmeldung ist der am häufigsten angegriffene Punkt einer WordPress-Website, deshalb gehören dort die strengsten Regeln hin.

Zwei-Faktor-Anmeldung für alle Administratoren ist die wirksamste Einzelmaßnahme am Login, weil ein gestohlenes Passwort allein dann nichts mehr nützt. Bei Kunden mit Shop ist das bei MP-Webdesign Standard. Dazu gehört eine Begrenzung der Anmeldeversuche, damit automatisierte Versuche nach wenigen Fehlschlägen ins Leere laufen.

Beim Blick in die Benutzerliste findet sich fast immer Aufräumbedarf. Nicht jeder Nutzer braucht Administratorrechte, die Rolle Redakteur reicht für redaktionelle Arbeit vollkommen. Zugänge ehemaliger Dienstleister oder ausgeschiedener Mitarbeiter gehören gelöscht, nicht deaktiviert.

Formulare und Kommentare gegen Spam absichern

Kontaktformulare und Kommentarfunktionen sind kein Sicherheitsrisiko im engeren Sinn, aber der häufigste Weg, über den automatisierte Anfragen ins Postfach laufen. Ein Spam-Schutz im Formular, etwa reCAPTCHA oder eine der datensparsameren Alternativen, filtert den Großteil davon.

Zwei Hinweise dazu: Dienste wie reCAPTCHA übertragen Daten an Google und gehören deshalb in die Datenschutzerklärung, teils auch hinter eine Einwilligung. Und wer die Kommentarfunktion gar nicht nutzt, schaltet sie besser ganz ab, statt sie zu moderieren.

Wenn es schon passiert ist

Ist die Website bereits betroffen, gilt eine feste Reihenfolge: Zugänge sichern, Seite über den Wartungsmodus vom Netz nehmen, den aktuellen Zustand kopieren und erst danach etwas löschen. Der Grund für diese Reihenfolge: Ein sofort eingespieltes Backup nimmt Ihnen die Möglichkeit, den Einstiegsweg überhaupt noch zu finden. Alle weiteren Schritte stehen ausführlich im Beitrag dazu, was bei einer gehackten WordPress-Seite zu tun ist.

Wann sich eine laufende Betreuung rechnet

Eine laufende Betreuung rechnet sich, sobald die Website Anfragen bringt und niemand im Betrieb die Updates zuverlässig übernimmt.

Die Kunden mit Betreuung haben nicht weniger Angriffsversuche als die anderen. Sie merken es nur früher, und das Backup passt. Genau das ist der Unterschied: Nicht die Zahl der Angriffe sinkt, sondern die Zeit zwischen Vorfall und Reaktion. Meldet ein Kunde einen Vorfall, reagiert MP-Webdesign an Werktagen innerhalb von zwölf Stunden, und die Bereinigung wird bei Betreuungskunden nicht zusätzlich berechnet.

Wer die Maßnahmen aus der Tabelle selbst umsetzen will, kann das tun. Wer dafür keine Zeit hat, findet den Umfang unter laufende Website-Betreuung. Wer sich unabhängig einlesen will, findet beim BSI unter Kleine und Mittlere Unternehmen Handlungsempfehlungen zum Schutz vor Cyber-Angriffen, unterteilt in einen leichten Einstieg und eine fortgeschrittene Absicherung.

Häufige Fragen

Ist WordPress noch zeitgemäß?

Ja. WordPress läuft laut wordpress.org auf über 43 Prozent aller Websites weltweit, wird laufend weiterentwickelt und hat ein festes Sicherheitsteam. Die Kritik trifft selten das System selbst, sondern schlecht gepflegte Installationen mit veralteten Plugins.

Reicht ein Sicherheits-Plugin aus, um WordPress zu schützen?

Nein. Ein Sicherheits-Plugin blockt Brute-Force-Versuche und meldet veränderte Dateien, hilft aber oft nicht gegen eine bekannte Lücke in einem veralteten Plugin. Es ist eine sinnvolle zweite Ebene neben Updates und Backup, keine Alternative dazu.

Wie oft sollten WordPress-Updates eingespielt werden?

Sicherheitsupdates innerhalb weniger Tage, Funktions-Updates in einem festen Rhythmus mit anschließender Kontrolle. Bei MP-Webdesign läuft der Wartungslauf im Rhythmus von ein bis drei Monaten. Ein Update ohne Blick auf die Seite danach ist nur die halbe Arbeit.

Woran erkenne ich, ob mein Backup wirklich funktioniert?

Nur daran, dass es einmal zurückgespielt wurde, am besten auf einer Testumgebung. Prüfen Sie zusätzlich, ob die Datenbank mitgesichert wird, ob die Kopie außerhalb des Servers liegt und wie weit die Stände zurückreichen. Ein Backup, das nur die letzten sieben Tage abdeckt, nützt bei einem spät entdeckten Befall nichts.

Muss ich die PHP-Version meiner Website aktuell halten?

Ja. Läuft die Website auf einer PHP-Version ohne Sicherheitsupdates, bleiben bekannte Schwachstellen unterhalb von WordPress offen, und die WordPress-Updates laufen ins Leere. Die aktuelle Version sehen Sie im Backend unter Werkzeuge und Website-Zustand, umgestellt wird beim Hoster nach einem Test.

Brauche ich ein Sicherheits-Plugin, wenn ich eine laufende Betreuung habe?

Meistens nicht zusätzlich, weil Login-Schutz und Datei-Überwachung dort in der Regel schon eingerichtet sind. Fragen Sie nach, was konkret läuft. Zwei Sicherheits-Plugins parallel bringen keinen doppelten Schutz, sondern Konflikte und Ladezeit.

Woran erkenne ich, ob mein Hoster mitverantwortlich ist?

Daran, ob er aktuelle PHP-Versionen anbietet, Backups außerhalb des Servers bereitstellt und bei einem Vorfall verständlich Auskunft gibt. Werden mehrere Websites auf derselben Umgebung gleichzeitig befallen, liegt das Problem meistens nicht in Ihrer WordPress-Installation. Ein Hoster ist für den Server zuständig, für Ihre Plugins und Passwörter bleiben Sie es.