WordPress absichern: So schützt du dich vor Hackern!

Aus gegebenen Anlass möchte ich heute noch einmal auf die WordPress Sicherheit eingehen. Warum noch einmal? Ich bin letztens schon auf die Sicherheit von WordPress eingegangen und habe eine paar grundlegende Gedanken niedergeschrieben, also eher allgemein. Heute möchte ich ein wenig mehr ins Detail gehen, aber eins nach dem anderen.

Der Grund warum ich das Thema WordPress Sicherheit jetzt noch einmal aufgreifen liegt an den vergangenen zwei Monaten. Dort gab es laut meinem Limit Login Attempts Plugin über 1.500 Versuche, ja 1.500, sich in mein Adminbackend einzuloggen, wohlgemerkt von verschiedenen IPs, da ich bei falschen Login direkt sehr lange Zeit diese IPs aussperre.

Grund genug mich auf die Suche nach mehr Sicherheit für mein WordPress zu machen, was ich dazu alles geändert habe möchte ich dir im folgenden vorstellen.

WordPress Sicherheit steigern durch Absicherung des Backends

Zur Absicherung meines Adminbereiches nutze ich, wie oben schon erwähnt, das WordPress Plugin Limit Login Attempts. Meine Einstellungen bezüglich fehlerhafter Logins habe ich mittlerweile sehr strikt gehalten. Hier ein Überblick meiner Einstellungen:

Sicherheit Plugin Limit Login
Wie im Bild zu sehen gibt es:

  • Nur einen Versuch sich anzumelden.
  • Gibt es 9.999 Minuten Pause wenn man es vermasselt, das sind etwa 7 Tage.
  • Dazu gibt es dann gleich noch 4000 Stunden extra, macht etwa 174 Tage Sperre.
  • Zurückgesetzt wird das ganze nach 400 Stunden, also etwa zwei Wochen.

Hast du dich einmal selbst ausgeschlossen wird es etwas nervig. Du musst in deine Datenbank, dort suchst du nach der Tabelle “wp-options”. Hier geht es dann mit:

Dort suchst du deine IP aus der Liste, löscht diese und speicherst das Ganze. Am besten geht das mit phpMyAdmin, wenn mich nicht alles täuscht kann man dort den obigen SQL Befehl einfach eingeben und bekommt das Ergebnis in einer EditBox. Es sollte auch eine “normale” Suche geben.

Weil mir das aber nicht sicher genug war und mir auch die ständigen E-Mails auf die Nerven gingen, natürlich hatte ich eine Regel in meinem E-Mail Programm, trotzdem muss man ja schon einmal nachsehen, ob ein Angreifer auf dem richtigen Weg ist, meint, ob ein Angreifer zumindest den richtigen “Admin” User gefunden hat.

Bis auf zwei Ausnahmen versteifen sich die Angreifer aber auf den Benutzeraccount mit dem Namen “Admin”. Diesen solltet ihr nie nie nie benutzen.

Conversion-Plugins: Flytools
Flytools
Vorteile:
Flytools Vorteile
  • Ideal um Webinar- oder Mitglieds-seiten zu erstellen
  • Conversionstarke Buttons schnell & einfach erstellen

Es geht aber noch mehr…

Also habe ich vor den eigentlichen Adminbereich für meine WordPress Sicherheit noch eine Passwort Abfrage mittel .htaccess geschaltet. Diese Datei generiert sich WordPress bei der Installation selbst, um sie zu sehen musst du “versteckte” Dateien in deinem FTP Programm aktivieren und zum lokalen editieren auch auf deinem Rechner.

Bei Windows geht das über die Ordneroptionen, bei Linux ähnlich. Mac User haben es da ein wenig schwerer, ich nutze einfach die “Bearbeiten” Funktion meines FTP Programms.

Ebenfalls musst du eine Datei mit dem Namen .htpasswd anlegen, zu dem Inhalt dieser Datei kommen wir später. Du brauchst nur den absoluten Pfad, in dem diese Datei nachher liegen soll. Dies funktioniert allerdings nur unter einem Apache Webserver.

Einmal offen fügst du dies in deiner .htaccess Datei hinzu:

 

Um den absoluten Pfad zu finden nutze ich folgenden kleinen Trick. Man öffnet einen Editor und fügt dort folgende Zeile ein:

Das Ganze speicherst du ab und nennst es wie du willst, aber mit der Endung .php, also etwa “pfadfinder.php”.

Danach lädst du diese Datei hoch und rufst sie auf, schon bekommst du den richtigen Pfad. Unterstützt dein Server diesen Befehl nicht, dann schick deinem Hoster einfach eine kurze E-Mail, es sollte für ihn ein leichtes sein dir den absoluten Pfad mitzuteilen.

Jetzt geht es an das eigentliche Passwort:

Öffne dafür die .htpasswd und den Generator von SelfHTML. Scrolle in dem Link ein wenig nach unten und du findest eine Eingabemaske, in diese trägst du dein zukünftiges Passwort ein. Wie immer gilt: Umso länger, desto besser. Sonderzeichen sich auch super, sowie Zahlen und keine zusammenhängende Wörter am besten.

Drückst du auf den Button bekommst du einen Hash, diesen kopierst du dir und dann trägst du in die .htpasswd folgendes ein:

Also links der Doppelpunkte einen gewünschten Nutzernamen, rechts den Hash den dir der Generator geliefert hat. Jetzt lädst du die .htaccess und auch die .htpasswd wieder auf deinen Server und versuchst dich in deinen Adminbereich einzuloggen.

Wenn alles geklappt hat müsstest du nun eine Eingabemaske sehen, die den automatischen Loginversuchen einen Riegel vorschieben. Limit Login Attempts lasse ich für den Fall der Fälle aber nach wie vor aktiviert.

WordPress Sicherheit bezüglich Malware und Viren

Zusätzlich bin ich in dem Zuge meiner “Ermittlungen” noch auf einen anderen Aspekt der WordPress Sicherheit gestoßen, nämlich die Suche nach Viren oder Malware, die sich wie auch immer einschleichen können oder sich schon eingeschlichen haben.

Dafür gibt es ein sehr nettes Plugin mit dem Namen WordPress AntiVirus. Dieses prüft voll automatisch auf allen möglichen unerwünschten Kram und benachrichtigt dich auf Wunsch, wenn es fündig wird.

WP-Akademie
Nutzen:
WP-Akademie Inhalt
  • Ausbildung zum Internet-Unternehmer
  • Online Private-Coaching
  • Zertifizierung und Auszeichnung
WP-Akademie Button

Nervige Spammer und Klickbetrüger aussperren

Ein anderes Problem das ich immer mal wieder habe sind nervige Spammer und auch IP Adressen, die Non-Stop auf die Werbung in der Sidebar klicken. Man stelle sich vor was Google einem hier erzählt, in Bezug auf Klickbetrug sind sie ja bekanntlich sehr streng.

Für diesen Fall sperre ich einfach ganze IP Adressen für mehrere Tage bis Wochen aus. Zu diesem Zweck braucht man wieder die oben schon bearbeitet .htaccess, in diese füge ich nun folgenden Code hinzu.

Statt dem x einfach die IP des Störers einsetzen. Bei Kommentaren siehst du diese unter “Kommentare” und dann schaust du einfach unter dem Benutzernamen. Bei Werbung kann das Log von einem URL Former helfen, wie etwa das Plugin Pretty Link.

Die IPs gehören meist zu irgendwelchen Servern und sind feste IPs, du musst also wenig Angst haben zukünftige Leser auszusperren, zumal die meisten dieser Spams meiner Erfahrung nach nicht aus dem DACH Raum kommen, zumindest lässt die Sprache der Kommentare diesen Schluss zu.

WordPress Sicherheit bezüglich der Nutzer

Als nächsten Punkt solltest du dir deine “wp-config.php” anschauen und prüfen ob du die Schlüsselphrasen eingetragen hast, um deine Benutzer Cookies abzusichern. Sieht deine “wp-config.php” so aus wie unten wird es Zeit im Zuge der WordPress Sicherheit zu handeln.

WordPress ist sogar so freundlich und generiert dir die Keys, ein klick auf diesen Link genügt. Wer mir nicht vertraut, die gleich URL steht auch in deiner “wp-config.php” und nein da war ich nicht dran. 😉

Die Daten die die WordPress API ausspuckt einfach eintragen und wieder hochladen, das war es schon. An dieser Stelle bietet der WordPress Codex auch noch mehr Informationen an.

Die Sicherheit der WordPress Config gewährleisten

Als letzten Punkt geht es wieder um die .htaccess. Dieses mal schützen wir nicht, wie oben, die “wp-login.php”, sondern die eben erwähnte “wp-config.php”. Wir verbieten diesmal den komplette Zugriff und dies geht so:

Bei einem Aufruf der wp-config.php solltest du nun folgenden Status zurück bekommen:

WordPress Updates, Backups und Monitoring

Es ist unerlässlich mit deinem System immer Up-To-Date zu sein, diese war ja schon ein wichtiger Bestandteil meines ersten Artikels. Natürlich gehören zu Updates auf der einen Seite, auch Backups auf der anderen Seite. Da bietet sich Lösungen, wie Backup zur Dropbox an, so hat man eine Backup “im Netz” und auf der eigenen Festplatte.

Ein weitere nette Sache ist der Service von Pingdom. Hier kannst du kostenlos eine Webseite eintragen und diese wird per HTTP Request jede Minute kontaktiert. Bekommt der Service keine Antwort wirst du per SMS, Twitter oder E-Mail benachrichtigt. Übrigens eignet sich ein andere Service von Pingdom auch zur Messung der Ladegeschwindigkeit deiner Webseite.

Ein weiterer Service dieser Art ist Serverstate, allerdings ist dieser nicht gratis zu haben, kostet aber auch nicht die Welt und ist dafür genial.

Fazit

Abschließend lässt sich sagen das du mit der WordPress Sicherheit niemals jede Gefahr abwehren kannst, aber du kannst mit diesen Mitteln daran arbeiten Systeme sicherer zu machen.

Natürlich gibt es noch andere Möglichkeiten, wie etwa die Tabellen schon bei der Installation mit einem anderen Prefix zu versehen oder gar auf zu viele “unbekannte” Plugins und Themes zu verzichten.

Auf jeden Fall solltest du dein WordPress immer im Auge behalten. Fällt dir etwas Verdächtiges auf, irgendetwas was da nicht hin gehört oder aber auch vermehrte Versuche in deinen Adminbereich einzubrechen, schau lieber zwei mal hin.

Bewerte diesen Artikel
1 Stern2 Sterne3 Sterne4 Sterne5 Sterne

1 Bewertung(en), durchschnittlich: 5,00 von 5

Loading...

3 Kommentare zu WordPress absichern: So schützt du dich vor Hackern!

  1. Stefan sagt:

    Die Sicherheit der eigenes Website vergisst man ja gerne mal, um so wichtiger ist es von Anfang darauf zu achten und nicht erst wenn es schon zu spät ist.

    Das mit dem extra Passwort mittels .htaccess nutze ich bei mir auch. Habe es sogar so, dass ich mittels

    Allow from xxx.xxx.xxx.xxx (IP)

    den Zugriff nur für eine bestimmte IP, in dem Fall also meine, zulasse. Bringt zwar ein wenig mehr Aufwand mit sich, aber die (empfundene) Sicherheit ist es mir wert. Problem ist halt, dass ich keine statische IP habe und immer wieder die IP in der htaccess anpassen und per FTP neu hochladen muss.

  2. Christopher sagt:

    Nach einem fehlgeschlagenem Login-Versuch die IP zu sperren ist aber wirklich sehr strikt. Stellst Du Dir selbst damit nicht eine Falle? Womit stellst Du denn sicher, dass kein Fehler bei der Login-Eingabe passiert.

    Aus meiner Sicht ist das ja kaum möglich, wenn man regelmässig sein Passwort ändert. Oder wirfst Du dann deine IP einfach wieder aus der Datenbank über PHPMyAdmin bspw. wieder raus?

    Im Prinzip wird Limit Login Attempts bei Schutz mit Hilfe von .htaccess doch gar nicht mehr benötigt. Die Bots kommen bis dahin doch gar nicht durch.

    • htw sagt:

      Ich kann es, wenn es denn passiert, einfach aus der DB löschen. Das geht recht flott. 😉 Allgemein ist es für die Bots wohl nicht mehr nötig, aber schaden kann es nicht.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

How-to-WordPress.de unterstützt dofollow und ist somit nofollow frei.