WordPress absichern – 10 Tipps und warum du das tun solltest

Hast du dir schon einmal Gedanken darüber gemacht, was es bedeuten würde, wenn deine WordPress Website nicht mehr erreichbar oder zerstört ist? Vielleicht wurden sogar sensible Daten gestohlen. Im schlimmsten Fall verteilt deine Webseite Viren und Malware an deine Besucher oder greift selbst andere Webseiten an. Eine Vorstellung, die heute sehr leicht zur Realität werden kann. Mit geeigneten Massnahmen, lässt sich dieses Risiko aber deutlich minimieren. Ich zeige dir in diesem Artikel 10 Tipps, damit du deine WordPress Installation sicherer machen kannst.
WordPress has been hacked - WordPress absichern lernen

Hast du dir schon einmal Gedanken darüber gemacht, was es bedeuten würde, wenn deine WordPress Website nicht mehr erreichbar oder zerstört ist? Vielleicht wurden sogar sensible Daten gestohlen. Im schlimmsten Fall verteilt deine Webseite Viren und Malware an deine Besucher oder greift selbst andere Webseiten an.

Eine Vorstellung, die heute sehr leicht zur Realität werden kann. Mit geeigneten Massnahmen, lässt sich dieses Risiko aber deutlich minimieren. Ich zeige dir in diesem Artikel 10 Tipps, wie du deine WordPress absichern und damit deine Installation sicherer machen kannst.

 

[toc heading_levels=“1,2″]

Warum soll ich mein WordPress absichern, wer greift mich an und welche Folgen hat das?

Diese Frage stellst du dir sicher in diesem Zusammenhang – „Wer sollte mein WordPress angreifen und warum?“. Die beruhigende Antwort an dieser Stelle. Es geht in den meisten Fällen nicht um dich persönlich.

Mehr ist es manchmal einfach ein Sport, zu beweisen, dass man es kann und dann auch noch wie viele Systeme man angreifen kann. Die Auswirkungen können je nach Angreifer unterschiedlich sein. Im besten Fall sieht man es deutlich auf der Seite, wo sich der Hacker verewigt hat, wie in diesem Beispiel.

Beispiel eines Screens einer gehackten WordPress Seite - WordPress absichern.
Beispiel eines Screens einer gehackten WordPress Seite

Es können aber auch nur einfach Daten kopiert werden. Dumm ist es nur, wenn es sich dabei um sensible Daten handelt. Oder es können auch ganze Installationen zerstört oder komplett gelöscht werden.

Weniger auffällig und dramatisch (zumindest auf den ersten Blick), sind einfach nur Änderungen der Inhalte an bestimmten Stellen. Genau genommen aber nicht weniger unangenehm, da du ab nun immer die Unsicherheit hast, was dein Angreifer im System alles gemacht hat und was noch nicht entdeckt wurde. Wenn diese Änderung dann bösartige Software ist, die deine Besucher angreift, dann wird es schon wieder sehr unangenehm. Oft hat so eine Malware auf deiner Seite zur Folge, dass du bei Google aus dem Index rausfliegst und deine Seite daher über Suchmaschinen nicht mehr gefunden werden kann oder sogar komplett blockiert wird.

Wenn ein WordPress System einmal übernommen wurde, dann kann der Angreifer dieses nutzen um weitere Angriffe (meist komplett automatisiert) von deinem System aus zu starten. Ähnlich unangenehm ist es auch, wenn dein WordPress dazu dient um im grossen Umfang Spam Mails in die Welt zu setzen.

All das sind Gründe, warum du zumindest die folgenden 10 Tipps lesen und umsetzen solltest um dein WordPress abzusichern. Am Ende des Artikels, habe ich dir noch eine Möglichkeit bereitgestellt, diese 10 Tipps und einige weitere als Checkliste herunterzuladen.

 

 

Tipp 1 – Admin Account nicht „admin“ nennen

Das primäre Ziel des Angreifers ist es meistens die Kontrolle über deine WordPress Installation, also einen administrativen Zugang zu deinem System zu erhalten. Das gelingt an einfachsten, wenn er Usernamen und Passwort von deinem Account kennt. Natürlich hältst du diese Kombination geheim, wie sollte also ein Angreifer damit Zugang erlangen?

Die Lösung lautet probieren. Ein Angreifer versucht meistens mit dem Usernamen „admin“ verschiedene Passwörter auszuprobieren. Ob er das mit fertigen Listen der am meist verwendeten Passwörter macht oder durch probieren verschiedener Kombination, spielt an dieser Stelle keine große Rolle.

WordPress Login mit Username admin
WordPress Login mit Username admin

Wichtig ist, dass der Angreifer meistens versucht mit dem Usernamen „admin“ einzuloggen, da dies der Username ist, der bei vielen WordPress Installationen als Standard für den administrativen User verwendet wird.

Wir schliessen daraus als erste Sicherheitsregel, dass wir bei einer Neuinstallation einen anderen Namen auswählen oder den Namen ändern sollten, wenn bereits eine Installation vorhanden ist.

Welchen Namen sollte man aber jetzt verwenden? Am besten ist es für den Admin Account einen Namen zu verwenden, der auch nicht leicht erraten werden kann und der sonst keine Aktivitäten auf deinem Blog ausführt, also zum Beispiel Beiträge schreiben.

Der administrative Account sollte nur dazu sein um wirklich administrative Tätigkeiten auszuführen. Also Installationen, Updates, Einstellungen verändern usw.. Für deine Schreibtätigkeiten, hast du einen persönlichen Account, der auch in seinen Rechten eingeschränkt sein sollte.

 

[bctt tweet=“WordPress absichern Tipp 1: Admin Account nicht admin nennen“ username=“StockerAndreas“]

 

Tipp 2 – Ein sicheres Passwort verwenden

Hat der Hacker doch einmal den Usernamen herausgefunden, dann benötigt er immer noch das zugehörige Passwort. Leider machen es auch da viele Betreiber einer WordPress Installation dem Angreifer nur zu einfach.

Unsichere Passwörter sind einer der Hauptgründe warum es geschafft wird Zugang zu Systemen zu erlangen. Wie findest der Angreifer das richtige Passwort heraus und was muss man beachten, damit das nicht passieren kann?

Wenn der Hacker nicht die Möglichkeit hat, das Passwort irgendwo zu stehlen oder abzugreifen, dann bleibt in der Regel nur die Möglichkeit verschiedene User / Passwort Kombinationen auszuprobieren.

Das kann auf der einen Seite mit vorgefertigten Passwort Listen geschehen, die man sich sogar im Internet leicht herunterladen kann und die je nach Sprache die beliebtesten x-Tausend Passwörter beinhalten. Schon diese Listen führen sehr oft zum Erfolg.

Wenn es nicht gelingt mit dieser Liste den Zugang zu erlangen, dann bleibt nur die Möglichkeit alle möglichen Passwort Kombinationen durchzuprobieren. Also beginnend mit dem Buchstaben „a“ und schrittweise zum „z“. Dort angelangt beginnt es wieder bei „aa“ und wird so fortgeführt. Zugegeben, ein etwas langsamer Weg, aber mit genügend Zeit führt auch der zum Ziel.

Du musst dabei übrigens bedenken, dass nicht ein Mensch diese Versuche durchführt, sondern Maschinen, die einige tausend Login Versuche pro Minute durchführen können.

Was kann man aber gegen diese Art der Passwort Angriffe tun?

Ganz einfach ein sicheres Passwort verwenden. Das bedeutet mindestens 12 Zeichen, Groß- und Kleinbuchstaben kombiniert, so wie Zahlen und Sonderzeichen zu verwenden.

Ich habe einmal ein kleines Zahlenbeispiel gemacht , dass dir den Unterschied zeigen soll.

Ein 6-stelliges Passwort mit Kleinbuchstaben ergibt 11 Millionen Möglichkeiten. Bei einem 8-stelligen sind es schon 208 Milliarden und bei 12 Stellen sind es dann schon 95 Billiarden Möglichkeiten.

Bei einer Kombination mit Klein- und Großschreibung sowie Ziffern, ändern sich die Zahlen bei 6 Stellen auf 56 Milliarden, bei 8 Stellen auf 218 Billionen und bei 12 Stellen 52 Trillionen Möglichkeiten.

Versuchen wir das einmal kurz in Zeit umzurechnen. Wenn es möglich ist, 100000 Versuche pro Sekunde durchzuführen, dann dauert das knacken des Passwortes bei 6 Stellen und Kleinbuchstaben nicht einmal 2 Minuten. Bei einem 8 stelligen Passwort sind es schon 577 Stunden, also etwa 24 Tage.

Verwendet man ein 12 stelligen Passwort mit Klein und Großschreibung sowie Ziffern, dann braucht man schon 602 Millionen Tage. Dieses kleine Beispiel soll dir zeigen, welche Auswirkungen auf Brute Force Attacken ein etwas längeres Passwort und die Verwendung unterschiedlicher Zeichen hat.

Zugegeben, mit einem Login Versuch über das Form Element wird ein durchprobieren aller Möglichkeiten nicht so gut funktionieren, da hier nur eine kleinere Anzahl an Versuchen pro Minute möglich ist. Allerdings mit einer Passwort Datei kann hier schon gearbeitet werden. Dennoch sollte man ein sicheres Passwort nicht ausser Acht lassen, da es auch andere Möglichkeiten gibt Username und Passwort Kombinationen auszuprobieren.

Die Qualität deines Passwortes, kannst du recht gut mit diversen Diensten, wie zum Beispiel „How Secure Is My Password“ testen.

WordPress absichern durch prüfen der Sicherheit eines Passwortes mit How Secure Is My Password
Prüfen der Sicherheit eines Passwortes mit How Secure Is My Password

Dabei bekommst du nicht nur die Info, ob dein Passwort sicher ist, sondern auch, wie lange es dauern würde, bis es geknackt werden kann und warum es nicht sicher ist, bzw. welche Massnahmen man ergreifen müsste, damit es sicherer wird.

 

[bctt tweet=“WordPress absichern Tipp 2: Verwende ein sicheres Passwort“ username=“StockerAndreas“]

 

Tipp 3 – Login Versuche absichern

Sollte wirklich jemand auf die Idee kommen zu versuchen mittels Brute Force Attacke dein System anzugreifen, dann gibt es neben dem sicheren Passwort noch weitere Möglichkeiten sich davor zu schützen.

Es eine davon ist, die Sperre der IP-Adresse des Besuchers, der mehr als sagen wir drei mal Fehler bei der Eingabe von Username und Passwort macht. Die IP-Adresse ist eine eindeutige Zahlenkombination, die zu einem bestimmten Zeitpunkt einen bestimmten Computer identifiziert. Du kannst deine aktuelle IP-Adresse zum Beispiel recht leicht über einen Web-Dienst wie:

Wie ist meine IP-Adresse

herausfinden. Die Sperre erfolgt dann für einen bestimmten Zeitraum und kann immer weiter ausgedehnt werden, wenn nach Freigabe wieder fehlerhafte Versuche stattfinden.

Um solche eine Sperre bei WordPress einzurichten, gibt es eine Reihe von Plugins, bei denen man die Anzahl der Versuche und die Zeiträume individuell anpassen kann. Eines davon ist zum Beispiel:

Limited Login Attempts reloaded

Limited Login Attempt Einstellungsmöglichkeiten
Limited Login Attempt Einstellungsmöglichkeiten

Bei einer Sperre, kannst du dich entweder per Mail informieren lassen oder das Protokoll über das Dashboard einsehen.

Limited Login Attempt Protokoll
Limited Login Attempt Protokoll

Wir sind also jetzt einen Schritt weiter und können uns auch vor diesen lästigen Brute Force Attacken etwas absichern. Doch die Absicherung mittels IP-Adress Sperre hat aber leider auch seine Grenzen. Denn viele Angriffe werden heute verteilt durchgeführt. Das bedeutet, dass der Angriff nicht von einem Rechner sondern von vielen verschiedenen Rechnern durchgeführt wird. Da diese verschiedenen Rechner auch andere IP-Adressen haben, versagt dann diese Art von Absicherung.

 

[bctt tweet=“WordPress absichern Tipp 3: Login Versuche beschränken“ username=“StockerAndreas“]

 

Tipp 4 – wp-login absichern oder umbenennen

Wie ich vorhin erwähnt habe, funktionieren manche Absicherungsmethoden leider nicht immer, wie zum Beispiel die Sperre der Zugriffe auf Basis der IP-Adressen.

Aus diesem Grund ist es ratsam weitere Massnahmen zu setzen um das Login über das Standard WordPress Login schwerer zu machen.

Dazu stelle ich die zwei weitere Methoden vor.

 

Login umbenennen

Die erste Methode sorgt dafür, dass die Standard URL nicht mehr über den gewohnten Namen erreichbar ist. Das hilft vor allem sehr gut, wenn man sich vor diversen automatisierten Angriffen absichern will, da diese immer die Standard URL für das Login zum Admin Bereich verwenden und das ist über die „wp-login.php“ Datei.

Wenn wir es also schaffen, den Namen dieser URL zu verändern, dann machen wir es dem externen Angreifer wieder ein Stück schwerer. Leider ist es aber nicht so einfach möglich, diese Datei schnell am Dateisystem umzubenennen. Wenn man das macht, dann läuft man Gefahr, dass diverse Funktionen nicht mehr richtig arbeiten. Zum Glück gibt es aber Plugins, die diese Aufgabe übernehmen und die Loginseite unter einer anderen Seite erreichbar machen.

Ein Beispiel dafür ist WPS Hide Login Plugin.

WPS Hide Login Plugin
WPS Hide Login Plugin

Wenn die wp-login.php unter einem anderen Namen erreichbar ist, dann ist es wichtig, dass du dir diese Seite merkst. Andernfalls, hast auch du keine Chance mehr ins Backend einzuloggen. Sicher ist eben sicher – in diesem Fall auch vor dir.

 

Zusätzlicher Passwort Schutz für Login

Die zweite Möglichkeit, die Loginseite abzusichern, ist diese mit einem htaccess Schutz zu versehen. Diese Art der Absicherung erfolgt direkt am Web Server. Mittels einer „.htaccess“ Datei ist es möglich bestimmte Verzeichnisse und Dateien so abzusichern, dass man vor der Verwendung ein Passwort eingeben muss.

Man könnte jetzt hergehen und zur Sicherheit den ganzen wp-admin Ordner vor externen Zugriffen schützen. Dann wäre ja auch die Login Datei betroffen. Leider führt das aber manchmal zu Problemen, da bestimmte Dateien auch für nicht angemeldete User erreichbar sein müssen. Das hängt von deiner Konfiguration und deinen Plugins ab.

Aus diesem Grund ist es sinnvoll nur die wp-login.php Datei zu schützen. Einziger Nachteil für dich an dieser Variante, ist die zusätzliche Eingabe eines weiteren Passwortes, wenn du dich im Backend einloggen willst.

Mit diesem und den vorigen 2 Tipps, sollte dein Login Bereich fürs erste relativ sicher vor Brute Force Attacken sein.

 

[bctt tweet=“WordPress absichern Tipp 4: Login URL absichern oder umbenennen“ username=“StockerAndreas“]

 

Tipp 5 – Tabellen Prefix umbenennen

Leider sind die Angriffe über das WordPress Login nur ein Teil der Möglichkeiten, die Angreifer anwenden um WordPress Installationen zu übernehmen.

Bei einem Content Management System wie WordPress liegen deine Daten, die angezeigt werden zum Teil als Datei am Filesystem des Webservers und zum größten Teil in der Datenbank. Dort sind deine Inhalte, wie Seiten, Artikel aber auch Infos zu Plugins, Themes und Layout vorhanden. Weiters sind dort die Daten der User und deren Berechtigungen abgelegt. Die Datenbank ist also ein zentrales Element deiner WordPress Installation und damit natürlich ein begehrtes Ziel für Angreifer.

Die Technik, die Angreifer dafür verwenden, sind SQL Injections. Damit hat der Hacker die Möglichkeit Daten aus der Datenbank auszulesen, wie etwa Usernamen und Passwort Kombination oder aber im schlimmeren Fall sogar Daten in die Datenbank zu schreiben. Damit kann er dann Inhalte direkt verändern oder hinzufügen.

Diese Art des Angriffes ist im Vergleich zu einer Brute Force Attacke doch relativ komplex und setzt voraus, dass es auch eine Möglichkeit gibt mit dieser Angriffsmethode zu arbeiten. Eine normale WordPress Installation ohne Sicherheitslücken, lässt eine solche Methode nicht ohne weiteres zu. Um den Angriff zu vereinfachen, gibt es allerdings schon eine Menge Tools im Internet, die es auch einem sogenannten Scriptkiddie ermöglichen diese auszuführen. Als Scriptkiddie bezeichnet man übrigens Hacker, die kein großes Wissen haben und nur fertige Programme für ihre Angriffe ausführen.

Um also auch hier dem Angreifer das Leben schwerer zu machen, gibt es eine recht einfache Methode.

Dazu sollte man wissen, dass es in einer Datenbank verschiedene Tabellen gibt, die alle unterschiedliche Namen haben und unterschiedliche Daten aufbewahren. So gibt es eine Tabelle mit dem Namen „wp_users“, die Usernamen und Passwörter beinhalten. Inhalte wie Artikel und Seiten werden in der Tabelle wp_posts abgelegt.

Es ist also genau definiert, in welcher Tabelle mit welchem Namen die Inhalte liegen. Wenn ein Angreifer nun auf diese Daten zugreifen möchte, dann muss er nur einen Befehl mit einer speziellen Datenbanksprache durch Angabe des Tabellennames und der Aktion die er ausführen möchte ausführen. Diese Datenbanksprache nennt man übrigens SQL.

Diese Tabellennamen haben alle einen sogenannten Prefix also Zeichen, die vor dem eigentlichen Namen stehen. So ist der Name der Tabelle wp_users in Wirklichkeit „users“ und das Prefix ist „wp_“. Beides zusammen ergibt dann den Namen den man verwenden kann.

Und genau hier setzt der aktuelle Tipp an. Denn das Prefix sollte man auf einen anderen Wert setzen. Konfiguriert ist dieser Wert in der wp-config.php Datei.

Der Befehl dazu lautet:

$table_prefix = 'wp_';

Will man das Prefix zum Beispiel auf xyz ändern, dann würde das so aussehen:

$table_prefix = 'xyz_';

Diese Änderung kann man allerdings nicht so einfach bei einer bereits bestehenden WordPress Installation machen, da ja die bestehenden Tabellen Namen durch die Umstellung in der wp-config.php nicht verändert werden. Hast du bereits eine WordPress Installation und willst das Prefix verändern, dann müssten auch alle Tabellen in der Datenbank entsprechend verändert werden.

Es ist also eine Entscheidung, die am besten bereits bei der Installation getroffen werden sollte. Einige Provider bieten diese Möglichkeit auch bei den sogenannten 1-Click Installationen an. Hier als Beispiel bei SiteGround:

Tabellen Prefix bei der Installation ändern
Tabellen Prefix bei der Installation ändern

Damit hat man es dem Hacker wieder ein Stück schwerer gemacht die WordPress Installation anzugreifen.

 

[bctt tweet=“WordPress absichern Tipp 5: Tabellen Prefix verändern“ username=“StockerAndreas“]

 

Tipp 6 – Welche Plugins braucht man wirklich

Damit ein Angriff über die Datenbank mit einer SQL Injection Methode ausgeführt werden kann, muss es auch eine Punkt geben, wo der Hacker damit ansetzen kann. Dazu werden entweder Sicherheitslücken im WordPress Kern, also in WordPress selbst genutzt oder über Plugins.

Plugins sind eine sehr praktische Technik in WordPress. Der WordPress Kern, also das Basis WordPress selbst, bietet eigentlich nicht sehr viele Funktionen. Erst die Möglichkeit WordPress mit allerlei Funktionen zu erweitern hat dieses System so erfolgreich gemacht. Du hast auf der WordPress Website im Bereich Plugins derzeit die Möglichkeit aus über 50000 Plugins auszuwählen. Zusätzlich kommen dann noch Erweiterungen dazu, die nicht über die WordPress Website angeboten werden.

Anzahl der WordPress Plugins bei wordpress.org
Anzahl der WordPress Plugins bei wordpress.org

Da findet man schon eine Menge Erweiterungen, die praktisch sind und die man gerne installieren möchte und auch oftmals tut.

Aber genau mit dieser Aktion kann man sich nicht nur Gutes tun, sondern auch eine Menge Probleme einhandeln. Diese Erweiterungen sind nicht von WordPress selbst, sondern von unterschiedlichen Unternehmen oder Personen. Dabei ist auch die Qualität zum Teil sehr unterschiedlich.

Du kannst zwar aus der Beschreibung herauslesen, was das Plugin machen sollte, aber ob es seinen Dienst auch korrekt ausführt und ob es mit den vielen anderen Plugins zusammenarbeitet kannst du nicht so leicht sehen.

Schnell ist es geschehen, dass man eine grosse Anzahl an Plugins in seiner Installation hat. Beginnen einmal die Probleme, dann ist es auch gar nicht mehr so einfach den wirklichen Verursacher dafür festzustellen.

Auch sind in Bezug auf Sicherheit Plugins oft einer der Hauptschwachpunkte von WordPress. Diese Plugins, oft nur von einem Entwickler erstellt, werden kaum geprüft und können auch die Möglichkeit erlauben bösartige Angriffe durchzuführen, wie zum Beispiel mit der vorhin erwähnten SQL Injection Methode.

Da bei Plugins der Quellcode für jeden einsehbar ist, könnten Hacker sogar die verschiedenen Plugins genauer analysieren und dabei prüfen, ob es die Möglichkeit eines Angriffes damit gibt.

Meist ist auf der WordPress Plugin Website die rechte Seite mit den Bewertungen, der Anzahl der Installationen und der letzten Aktualisierung ein hilfreicher Ansatz, ob man das ausgewählte Plugin installieren sollte.

Dieses Plugin funktioniert zum Beispiel mit der derzeit aktuellsten WordPress Version (4.8.2) und wurde vor nicht allzu langer Zeit aktualisiert (1 Monat).

WordPress Plugins Infos zur Aktualität
WordPress Plugins Infos zur Aktualität

Mit einer grossen Menge an 5 Stern Bewertungen und nur wenigen schlechten, dürfte die Qualität dieses Plugins sehr gut sein. Interessiert man sich im Detail, warum schlechte Einträge gemacht wurden, dann kann man die Links vor oder nach den Balken anklicken.

WordPress Plugins Bewertungen
WordPress Plugins Bewertungen

Auch die Support Aktivitäten sagen einiges darüber aus, wie aktiv der oder die Entwickler sind und Probleme bei Bedarf beheben.

So schön und praktisch Plugins sind, so problematisch kann der Einsatz sein. Über das Thema Plugins und worauf man bei der Auswahl achten sollte, kann man noch sehr viel sagen. Ich werde dieses Thema daher auf einen eigenen Artikel auslagern.

Nur eines möchte ich dir mit diesen Tipp mitgeben. Überlege gut, welche Funktionen du wirklich zusätzlich benötigst und denke vor der Installation noch einmal nach, ob das ausgewählte Plugin wirklich notwendig ist.

 

[bctt tweet=“WordPress absichern Tipp 6: Auf die Auswahl der Plugins achten“ username=“StockerAndreas“]

 

Tipp 7 – WordPress updaten

WordPress ist in der Regel ein relativ sicheres System. Wenn man von Einbrüchen in WordPress Systeme hört, dann liegt es oftmals daran, dass grundlegende Empfehlungen nicht beachtet werden. Wie zum Beispiel diese 10 Tipps in diesem Artikel.

Trotzdem kommt es, wie bei jedem Computer Programm und wie bei allen anderen CMS immer wieder vor, dass im Kern Fehler vorhanden sind. Oftmals sind diese für die meisten User gar nicht relevant. Manchmal betreffen diese Fehler die Funktion selbst und manchmal handelt es sich bei den Fehlern um Sicherheitslücken.

Diese Sicherheitslücken, werden von den Programmieren von WordPress regelmässig ausgebessert und beseitigt. Das Ganze nützt aber recht wenig, wenn der Betreiber der WordPress Website diese Änderungen nicht in seine Installation übernimmt.

Deshalb ist es ganz wichtig darauf zu schauen, ob es Änderungen und Updates gibt und diese dann auch zu installieren. WordPress macht es einem dabei sogar recht einfach in dem man die Installation so einstellen kann, dass die Updates automatisch durchgeführt werden.

So praktisch diese Funktion auch ist, so unangenehm kann diese sein, wenn das WordPress Update nicht mit diversen installierten Themes oder Plugins zusammenspielt. Grundlegend kann man sich dabei merken, dass eine Änderung der Versionsnummer an der letzten, also dritten Stelle nur Änderungen sind, die Fehler ausbessern. Als Beispiel ein Update von 4.8.1 auf 4.8.2. Diese Änderungen sollten in der Regel keine Probleme mit Plugins und Themes verursachen. Anders sieht es da bei Versions Änderungen aus, die an der zweiten oder sogar ersten Stelle bemerkbar sind. Also wieder ein Beispiel von Version 4.7.5 auf Version 4.8 bzw. 4.8.0 oder von 3.9.1 auf 4.0.

Grundlegend kann man sagen, dass Updates mit einer Änderung an der letzten Stelle keine Probleme machen sollten. Updates an der ersten und zweiten Stelle in der Versionsnummer mache ich persönlich manuell.

Ausnahmen bestätigen wie so oft die Regel, denn erst kürzlich, bei der Änderung von Version 4.8.1 auf 4.8.2 gab es eine Änderung auf Grund einer Sicherheitslücke, die dann zur Folge hatte, das auch bekannte und weit verbreitete Plugins, wie etwas das Yoast SEO Plugin ihre Arbeit nicht mehr korrekt ausführten.

Eine Übersicht der WordPress Versionen und auch der Änderungen kann man sich auf https://wordpress.org/news/category/releases/ansehen. Wenn man sich dann den Titel und die Details der Änderungen ansieht, kann man auch nachlesen, welche Fehler gefundenen und ausgebessert wurden.

Falls es doch mal passieren sollte, dass ein Update dein WordPress „zerstört“, dann kann es sehr hilfreich sein ein Backup zu haben um die vorher funktionierende Installation wieder herzustellen. Mehr dazu im Tipp Nummer 10.

 

[bctt tweet=“WordPress absichern Tipp 7: WordPress regelmässig updaten“ username=“StockerAndreas“]

 

Tipp 8 – Plugins und Themes regelmässig updaten

Im Tipp zum Thema WordPress Plugins, habe ich schon über die Problematik der Erweiterbarkeit von WordPress mittels Plugins gesprochen.

Diese Erweiterung kann sich aber nicht nur auf Funktionen und damit die Plugins beziehen, sondern auch auf das Layout deines Webauftrittes. Das Layout und das Aussehen wird in der Regel durch die Themes bestimmt.

Diese Themes werden, wie auch die Plugins von externen Anbietern bereitgestellt und können je nach Funktion unterschiedlich komplex sein. Auf jeden Fall sind diese Themes genauso Programme, die auf deinem Web Server ausgeführt werden.

Wie auch der WordPress Kern, können diese Plugins und Themes Fehler enthalten, die es einem externen Angreifer ermöglichen auf dein WordPress zuzugreifen und im schlimmsten Fall die Kontrolle zu übernehmen. Daher gilt auch hier die Regel, wenn ein Update bereitsteht, dann sollte dieses recht zeitnah durchgeführt werden. Zumindest dann, wenn das Update auf Grund von Sicherheitsproblemen erstellt wurde.

Die Anzahl der zu aktualisierenden Plugins sollten immer sehr gering gehalten werden. Erkennen kann man die Zahl sehr einfach im Dashboard am roten Kreis neben dem Menüeintrag Plugins. So sollte es wenn möglich nicht aussehen, es sind bereits 9 Plugins upzudaten:

WordPress absichern und die Anzahl der zu aktualisierenden Plugins gering halten
Anzahl der zu aktualisierenden Plugins

 

[bctt tweet=“WordPress absichern Tipp 8: Plugins und Themes regelmässig updaten“ username=“StockerAndreas“]

 

Tipp 9 – WordPress absichern durch ausschalten der Dashboard Edit Funktion

Sollte der Hacker doch einmal Zugang zum Backend bekommen, dann sollte man darauf achten, dass der Schaden, den er anrichten kann möglichst gering ist.

Dazu zählt vor allem, dass wir verhindern müssen, dass so wenig wie möglich verändert, hinzugefügt und ausgetauscht werden kann. Denn selbst wenn wir nach einem Angriff das System aus einem Backup wieder herstellen, wissen wir nicht, wie lange der Angreifer schon Zugriff hatte und was er schon verändern konnte.

Hat der Angreifer zum Beispiel in einem Theme oder einem Plugin Veränderungen durchgeführt und sich dadurch eine Hintertüre eingebaut, dann ist das für uns in der Regel schwer zu erkennen. Liegt dann diese Änderung lange genug in der Vergangenheit, dann sind auch die Dateien in unseren Backups verändert und wir würden bei einem Restore (zurückspielen des Backups) diese Hintertüre wieder in unsere WordPress Installation einbauen.

Damit hat unser Angreifer jederzeit die Möglichkeit wieder in unser WordPress System einzudringen.

Eine Änderung aller Plugin und Theme Dateien ist leider bei einer Standard WordPress Installation sehr einfach möglich. Wenn man nichts verändert hat, dann gibt es bei jedem Plugin den Link „Bearbeiten“ mit dem der Code aller Dateien, die zu einem Plugin gehören angesehen und auch verändert werden kann.

Möglichkeit Plugins im Dashboard zubearbeiten
Möglichkeit Plugins im Dashboard zubearbeiten

Es gibt weiters einen Hauptmenüpunkt „Design“ und dort einen weiteren Untermenüpunkt „Editor“. Über diesen Weg lassen sich die Inhalte der Themes verändern.

Möglichkeit im Dashboard Themes zu editieren
Möglichkeit im Dashboard Themes zu editieren

All diese Änderungen kann ein User mit administrativen Rechten jederzeit machen. Und das Unangenehme daran ist, dass wir das nicht mitbekommen.

Wir müssen daher eine Möglichkeit finden zu verhindern, dass Änderungen direkt über das Backend durchgeführt werden können. Sollten wir wirklich etwas ändern wollen, dann können wir das über den FTP Zugang unseres Providers, der extra abgesichert ist.

Wie wir schon bei den bisherigen Tipps gesehen haben, lassen sich viele Massnahmen durch recht einfache Aktivitäten erreichen. Um also das Editieren zu verhindern, müssen wir nur in unserer wp-config.php Datei einen Eintrag

define( 'DISALLOW_FILE_EDIT', true );

hinzufügen – das war es dann auch schon. Jetzt sollten die Bearbeiten und Edit Links im Backend verschwunden sein.

 

[bctt tweet=“WordPress absichern Tipp 9: Dashboard Edit Funktion deaktivieren.“ username=“StockerAndreas“]

 

Tipp 10 – Backup, falls doch mal was passiert.

Wir haben bisher eine Reihe von Methoden kennengelernt, wie du einen sehr grossen Anteil der Angriffe, die zum Erfolg führen können auch abwehren oder verhindern kannst.

Dieser Tipp gehört zwar nicht direkt zum Thema WordPress absichern, spielt aber eine wichtige Rolle, falls doch mal was passiert. Sollte es aber wirklich einmal vorkommen, dass deine WordPress Installation einen Schaden hat. Das kann eben durch einen externen Angriff aber auch durch defekte an Hardware geschehen. Auch die die Installation eines Plugin kann dafür verantwortlich sein. Schlussendlich könnte es aber einfach ein Benutzerfehler sein und man hat aus versehen etwas verändert oder gelöscht.

Was kann man jetzt noch tun?

Die schlechte Nachricht an dich, wenn du diesen Artikel liest und vorher noch nichts unternommen hast, dann ist es jetzt etwas schwierig was zu tun.

Hast du einen guten Provider, dann macht dieser normalerweise regelmässig (meist einmal am Tag) eine Sicherung der Dateien und der Datenbank. In diesem Fall kannst du deinen Provider bitten, dieses Backup wieder einzuspielen.

In vielen Fällen, ist dies aber mit Kosten verbunden und du weisst auch meist nicht so genau, wann das Backup durchgeführt wurde. Du bist bei vielen Providern auch auf die Mitarbeiter angewiesen, da du solche Backups in der Regel nicht selbst zurückspielen kannst. Also ausserhalb der üblichen Bürostunden wird es da manchmal schwer.

Weiters kannst du dir in den meisten Fällen auch nicht aussuchen, welche Teile zurückgespielt werden. Es werden alle Dateien im Backup und die komplette Datenbank zurückgespielt.

Bei manchen Providern, gibt es übrigens die Möglichkeit dies auch selbst zu machen und zu selektieren was man zurückspielen möchte. Ein Beispiel wäre SiteGround, mit dem ich persönlich sehr gute Erfahrungen gemacht habe.

Über eine Weboberfläche, kann man dort den Tag auswählen und selektieren, was zurückgespielt werden soll:

Backups zurückspielen bei SiteGround
Backups zurückspielen bei SiteGround

Damit du die oben genannten Probleme vermeidest, ist es sinnvoll auf jeden Fall selbst für ein Backup deiner WordPress Installation zu sorgen.

Es gibt dazu einige recht gute Plugins, die dir diese Arbeit sehr gut abnehmen und den Vorgang auch automatisch durchführen können.

Ein Tool, das ich sehr gerne empfehle ist UpdraftPlus. Dieses Plugin gibt es in einer kostenlosen Variante und mit etwas mehr Funktionen auch kostenpflichtig. Für den Anfang reicht aber sicher die kostenlose Variante einmal aus.

Wenn du jetzt ein Backup erstellt hast, dann ist das schon einmal ein sehr guter Schritt. Aber leider kann man auch da noch einiges falsch machen.

 

Lagere die Backups ausserhalb deines Webspaces

Oftmals installiert man sich ein Backup Tool, richtet sogar automatische Backups ein und kann feststellen, dass die Sicherung regelmässig durchgeführt wird. Alles gut denkt man sich – oder doch nicht?

Eines Tages ist es so weit. Dein System wird leider erfolgreich angegriffen und Daten auf deinem Server wurden gelöscht. Kein Problem denkst du dir – ich habe ja ein Backup. Du gehst ins Backend (wir nehmen an, dass du darauf noch zugreifen kannst) und stellst fest, dass deine Backup Dateien nicht mehr vorhanden sind.

Diese Erfahrung, haben sicher schon viele gemacht. Denn wenn du deine Backups am selben Ort ablegst, wo auch deine WordPress Installation liegt, dann kann der Angreifer auf diese Daten natürlich ebenso zugreifen und diese zum Beispiel löschen.

Wenn die Daten gelöscht wurden, dann bist du ja noch gut dran. Es könnte ja auch sein, dass die Daten in den Backups verändert wurde. Du glaubst dich in Sicherheit, spielst dein Backup zurück, alles klappt perfekt und läuft wieder. In Wirklichkeit hast du mit dem zurückspielen die Hintertüre für den Hacker in dein System eingebaut.

Die Backup Dateien sind nichts anderes als alle Dateien eines bestimmten Ordners zusammengepackt. Diese gepackten Dateien kann man genau so gut auspacken ändern und wieder zusammenpacken.

Aus diesen Gründen, solltest du deine Backups immer auf einem externen Speicherplatz ablegen. Du kannst dir dabei regelmäßig über das Backend die Backups auf deinem Computer herunterladen oder aber automatisiert auf einem Cloudspeicherplatz, wie Dropbox, Google Drive oder ähnlichen ablegen. Gute Backuptools, bieten dir die Möglichkeit diesen Vorgang automatisch nach dem erfolgreichen Backup durchzuführen.

Hier als Beispiel die Auswahl von UpdraftPlus:

Backups auf Clouddienste spielen mit UpdraftPlus
Backups auf Clouddienste spielen mit UpdraftPlus

 

Verschlüsseln der Backups

Backup-Dateien enthalten nicht nur alle Dateien deiner WordPress Installation, sondern auch einen Export der Datenbank. Das ist notwendig, denn wie schon weiter oben erwähnt bestehen die Inhalte in WordPress aus einer Kombination aus Dateien und Inhalten in der Datenbank.

Die Datenbank enthält aber auch recht sensible Informationen, wie Usernamen und Passwort Kombinationen. Die Passwörter sind zwar nicht im Klartext abgelegt, können aber mit geeigneten Methoden zum Teil auch entschlüsselt werden. Denke dabei an die erklärte Brute Force Methode aus Tipp 2.

Solltest du noch weitere sensible Informationen in deiner Datenbank abgelegt haben, dann sind das begehrte Informationen. Hast du jetzt ein Backup angelegt, dann machst du es dem Hacker natürlich sehr einfach auf die Inhalte deiner Datenbank zuzugreifen. Dieser braucht dabei nicht mehr mühsam eine Methode zu finden, wie er auf die Datenbank Tabellen zugreifen kann. Er muss nur deine Backupdaten herunterladen und schon hat der die gewünschten Informationen.

Die Lösung dafür ist es die gepackte Datei mit einem Passwort zu verschlüsseln. Entdecken kann man diese Datei dann nur mehr, wenn auch das Passwort zur Verfügung steht.

Tools wie Updraft können auch das automatisch durchführen. Leider benötigt man aber für diese Funktion die kostenpflichtige Variante.

Datenbank Backups bei UpdraftPlus verschlüsseln
Datenbank Backups bei UpdraftPlus verschlüsseln

 

Wiederherstellen ausprobieren

Du hast jetzt erfolgreich deine Backups automatisiert, die Backups auf einem Cloudspeicher hochgeladen und sogar auf Verschlüsselung deiner Daten geachtet.

Jetzt ist der da – der Tag an dem du dein Backup benötigst. Du möchtest es zurückspielen und stellst fest irgendwas klappt nicht oder irgendetwas fehlt bei deinem Backup. Der Fehler ist vielleicht rasch zu finden, nur jetzt ist es zu spät.

Es wäre vielleicht doch gut gewesen das Zurückspielen eines Backups vorher einmal auszuprobieren.

Dazu solltest du allerdings nicht in Versuchung kommen und deine WordPress Installation komplett zu löschen und dann zu versuchen diese wieder herzustellen.

Ideal ist es in diesem Fall, bei deinem Provider eine zweite WordPress Installation zu erstellen, zum Beispiel mittels einer Subdomain. Auf dieser kann du dann probieren das Backup wieder einzuspielen.

Eine weitere Möglichkeit wäre zum Beispiel die Installation eines WordPress Systems auf deinem Arbeitscomputer um dort das Restore zu testen.

 

[bctt tweet=“WordPress absichern Tipp 10: Regelmässige Backups durchführen“ username=“StockerAndreas“]

 

Bonus Tipp – Überlege wem du traust

Mit meinem letzten Tipp in diesem Artikel möchte ich dich noch ein wenig sensibilisieren, dass du nicht so einfach jedem blind vertrauen solltest.

 

Woher und von wem kommen die Erweiterungen

Beginnen wir einmal mit den Erweiterungen für deine WordPress Installation. Sowohl bei Plugins als auch bei Themes solltest du dir einmal ansehen, woher und von wem diese Erweiterungen kommen.

Erweiterungen haben viele Möglichkeiten und können Hintertüren leicht öffnen.

Du solltest, wenn möglich darauf schauen, dass du Plugins über das offizielle WordPress Plugin Verzeichnis installierst. Es ist auch keine 100% Sicherheit, aber dort haben zumindest andere Personen einen Blick darauf und man kann bei den Bewertungen dann doch das eine oder andere erfahren.

Wenn Plugins und Themes nur auf Seiten des Entwicklers oder einer Firma erhältlich sind, dann erkundige dich genauer im Internet darüber. Glaube nicht irgendwelchen Bewertungen, die du nur auf der Seite des Herstellers lesen kannst oder die auf einer einzigen Seite im Internet zu finden sind.

Sehr leicht fällt man darauf rein, wenn ein Plugin angeboten wird, das tolle Funktionen bietet und dann vielleicht auch noch gratis ist. Wenn es noch etwas kostet vermutet man noch weniger böses dahinter, denn wer verkauft schon bösartige Erweiterungen.

 

Wem gibts du administrative Rechte

Oft kann es passieren, dass eine Erweiterung oder ein Theme nicht so funktioniert, wie es soll. Was macht man in diesem Fall? Man wendet sich an den Support des Herstellers. Dieser ist dann vielleicht so hilfreich und möchte dich sofort unterstützen. Aber er benötigt administrativen Zugriff zu deiner WordPress Installation.

Bist du aber sicher, dass der Fehler nicht absichtlich eingebaut wurde um deinen Admin Zugang zu erhalten? Ich möchte hier nicht generell Böses unterstellen, wenn dir jemand helfen will, aber ein wenig nachdenken sollte man schon darüber.

Wenn du den Zugang schlussendlich wirklich weitergibst, dann hat die Person natürlich viele Rechte in Bezug auf lesenden Zugriff, kann aber ebenso einiges in deiner WordPress Installation verändern.

Hast du meinen Tipp in Bezug auf das Editieren von Quellcode im Dashboard befolgt, dann machst du es diesen Personen zumindest etwas schwerer böses zu tun.

 

Lege einen eigenen Admin Account an

Generell gilt aber: Überlege dir gut, wem du einen administrativen Zugang gibst und ob es wirklich notwendig ist. Wenn du einen solchen Zugang wirklich weitergeben willst, dann bitte nie deinen eigenen Admin Account. Lege dafür einen neuen User an, gib diesem administrative Rechte und gib diesen Account weiter. Du kannst diesen dann leichter deaktivieren oder auch komplett löschen.

Einen neuen administrativen User legst du am einfachsten im Dashboard unter „Benutzer“ -> „Neu hinzufügen“ an. Wähle einen aussagekräftigen Usernamen und vergib auch hier ein sicheres Passwort. Nehme die Markierung bei der Checkbox „Benutzer benachrichtigen“ weg und vergib die Rolle „Administrator“.

User für externen Support anlegen
User für externen Support anlegen

Wenn der Account nachher nicht mehr benötigt wird, vergiss auf keinen Fall diesen wieder zu löschen.

Solltest du deinen eigenen Account weitergegeben haben, dann solltest du auf jeden Fall dein Passwort nach erfolgtem Support verändern.

 

[bctt tweet=“WordPress absichern Bonustipp: Überlege, wem du vertraust“ username=“StockerAndreas“]

 

Zusammenfassung

Du hast in diesem Artikel eine Reihe von Tipps bekommen um deine WordPress Installation sicherer zu machen. Diese Tipps stellen nur eine Auswahl der wichtigsten Massnahmen dar, die man tun kann um die Website vor bösartigen Zugriffen zu sichern.

Jeder dieser Tipps ist ein Baustein um das Gesamtsystem ein Stück mehr abzusichern.

Möchtest du eine kurze kompakte Hilfe für die Umsetzung haben, dann hole dir am besten meine WordPress Security Checkliste, wo diese und einige weitere Massnahmen übersichtlich zusammengefasst sind.

 

 

Wenn du Fragen oder Kommentare hast, dann kannst du mir diese gerne unten im Kommentarbereich schreiben.

Ich wünsche dir jetzt viel Erfolg bei der Umsetzung meiner Tipps.

 

 

WordPress absichern mit der gratis Security Checkliste

 

[bctt tweet=“WordPress absichern – gratis WordPress Security Checkliste holen.“ username=“StockerAndreas“]

 

Picture of Andreas Stocker

Andreas Stocker

Andreas hat 25 Jahre Webagentur Erfahrung und gibt jetzt sein Wissen weiter, wie man selbst einen erfolgreichen Webauftritt umsetzt und betreut.

Dieser Beitrag hat 2 Kommentare

  1. Marian

    Wichtige und gute Hinweise zur WordPress-Sicherheit. Einige der Tipps werden von vielen Spezialisten inzwischen nicht mehr empfohlen (z.B. das Umbenennen des Tabellen-Prefix), weil sie die Sicherheit nicht wirklich signifikant erhöhen. Sie schaden aber auch nicht 🙂

    Beim Admin-Account würde ich noch anmerken, dass es für den geübten Hacker eine Rolle spielt, wie der Benutzer heißt, wenn es denn der automatisch von WordPress angelegte ist. Der ist nämlich mit der User-ID = 1 leicht herauszufinden. Besser wäre hier: den Benutzer „admin“ einfach so stehenzulassen, ih, aber die Rolle „Subscriber“ zuzuweisen, nachdem man einen neuen Admin-Account mit einer anderen User-ID (z.B. 3 wenn ID 2 der Editor-Account wäre). Dann kann sich Hacker gern in den Zugang mit der ID 1 einhacken, nur um dann festzustellen, dass er damit nichts anfangen kann.

    Liebe Grüße
    Marian

    1. Andreas

      Hallo Marian.

      danke für dein Kommentar.

      Es ist richtig, dass einige Tipps für sich alleine gesehen dein WordPress nicht komplett sicher machen. Jeder der Tipps ist ein Baustein um das System ein Stück sicherer zu machen. Für viele der vorgestellten Tipps, gibt es auch Wege diese zu umgehen, wenn der Angreifer etwas Aufwand hineinsteckt.

      Aber mit den 10 Tipps, hat man einmal eine gute Basis um sich zumindest vor den automatisierten Angriffen absichern zu können und wie du richtig sagst, schaden kann es auf keinen Fall es zu machen.

      Glaube mir, ich könnte noch viel mehr dazu schreiben, dann hätte der Artikel wahrscheinlich 20000 Worte statt der derzeit etwas mehr als 5000. Aber es sollte auch mal eine Basis Info sein.

      Es wird aber in Zukunft von mir sicher noch weitere Infos zu diesem Thema geben.

      Liebe Grüße
      Andreas

Schreibe einen Kommentar