WordPress sicherer machen: So sichern Sie WordPress ab

  • -

WordPress sicherer machen: So sichern Sie WordPress ab

Tags : 

Wordpress sicher machenWordPress ist das beliebteste CMS, daher ist es auch oft ein Ziel von Angreifern. Viele Webseiten sind mit dem beliebten CMS aufgebaut und auch dieses CMS hat hier und da Lücken und Bugs. Deshalb versuchen die Angreifer immer wieder in das Backend zu gelangen indem sie diese Sicherheitslücken ausnutzen. Aber nicht nur diese Lücken machen den Webseitenbetreibern zu schaffen, sondern auch die zahlreichen Versuche, sich in WordPress einzuloggen. Gelangt ein Angreifer in das Backend hinein, so hat er mehr oder weniger die Kontroller über die Webseite.

Er kann damit das Passwort für das Backend ändern und schon können Sie sich nicht mehr einloggen, außer Sie gehen über die Datenbank und ändern dort das Passwort erneut. Allerdings kann der Angreifer in dieser Zeit ausreichend Unsinn anstellen. Damit das nicht passiert, soll in diesem Artikel erläutert werden, wie WordPress abgesichert werden kann. WordPress sicherer machen ist gar nicht so schwierig wie es sich zuerst anhören mag.

Inhaltsverzeichnis:

 

Benutzername und Passwort

Standardmäßig wird der Benutzername „admin“ verwendet. Dies ist kein wirklich sicherer Benutzername. Am besten also gleich umbenennen oder einen neuen administrativen Benutzer erstellen und den Benutzer „admin“ löschen. Den Benutzername in WordPress können Sie ändern, indem Sie sich einloggen und auf „Benutzer“ gehen. Dort können Sie einen neuen Benutzer hinzufügen oder den bestehenden Benutzernamen ändern.

Auch bei Ihrem Passwort sollten Sie darauf achten, dass dieses sicher ist. Verwenden Sie für ein sicherer Passwort

  • Groß- und Kleinschreibung
  • Zahlen
  • Sonderzeichen

und achten Sie auf eine ausreichende Anzahl an Zeichen bei Ihrem Passwort. Dies gilt nicht nur für das Passwort zum Backend von WordPress, sondern auch für:

  • FTP
  • Datenbank
  • Webhoster Login

 

Datenbankprefix ändern für mehr Sicherheit bei WordPress

Auch bereits zu Beginn der WordPress Einrichtung sollten Sie einen Sicherheitspunkt gleich mitnehmen und das Datenbankpräfix ändern. Standardmäßig wird „wp_“ verwendet. Gleich zu Beginn können Sie dies in z. B. „t23x_“ ändern. Wenn die Installation bereits besteht, dann können Sie dies dennoch noch ändern, allerdings ist dies viel aufwendiger und Sie müssen wissen, was Sie tun. Sie müssen jede Tabelle in der „wp_“ enthalten ist in „t23x_“ umbenennen und auch in der „wp-config.php“ Anpassungen machen sowie ggf. in weiteren Dateien. Deshalb ist es besonders zu Beginn einer Installation wichtig, dies zu ändern.

 

Ordnerberechtigungen und Ordnernamen

Wenn du WordPress verwenden möchtest und die Sicherheit erhöhen willst, dann solltest du die Berechtigungen an den Ordnern überprüfen. In der Regel brauchen die Ordner nicht mehr als eine „755“ Berechtigung. 755 bedeutet folgendes:

Linux Rechte

In Worten gefasst heißt es, dass der Besitzer volles Rechte auf den Ordner hat. Andere Benutzer (inkl. möglicher Gruppen) haben nur das Rechte, zu lesen und auszuführen. Die Werte für die Rechte setzen sich dabei wie folgt zusammen:

  • Lesen = 4
  • Schreiben = 2
  • Ausführen = 1

Bei den Ordnernamen können Sie in der Regel nicht viel tun, außer wenn Sie Tools wie MySQL Dumper benutzen, dass Sie den Ordner nicht auf dem Standardnamen „MySQL Dumper“ belassen, sondern dies ändern in z. B. „meineDatenbanksicherung“ oder ähnliches.

Auch der Admin-Ordner von WordPress (default: wp-admin) kann umbenannt werden sowie der wp-content Ordner. Umbenennung des Admin-Ordners führt dazu, dass die Angreifer nicht auf domain.tld/wp-admin zugreifen können, weil es diesen Ordner nicht mehr gibt. Ebenso verhält es sich mit dem wp-content Ordner. Die meisten Skripte laufen auf diese Ordner oder auf wp-login.php. Wenn Sie diese umbenennen, dann laufen die Skripte ins Leere.

Um die Umbenennung vorzunehmen muss in der wp-config.php folgendes eingegeben werden:

  • define(‚WP_CONTENT_DIR‘, ‚/absoluter/pfad/zum/webspace/neuername-wp-content‘);
  • define(‚WP_CONTENT_URL‘, ‚http://www.domain.tld/neuername-wp-content‘);

Damit wäre der Ordner wp-content umbenannt. Dies ist vor allem bei neuen Installationen kein Problem. Bei bestehenden Installationen ist dies allerdings sehr wohl ein Problem. Denn die Bilder sind ebenfalls in dem Ordner „wp-content“ enthalten. Dazu müssten Sie überall nach „wp-content“ suchen und z. B. gegen „neuername-wp-content“ ersetzen. Dies ist natürlich mit viel Aufwand verbunden. Sie können aber auch ein entsprechendes PlugIn dazu verwenden (Better Search Replace).

Um dies nutzen zu können, müssen Sie dazu den absoluten Pfad herausfinden. Erstellen Sie eine leere Textdatei und kopieren den nachfolgenden Inhalt hinein:

<?php
$p = getcwd();
echo $p;
?>

Speichern Sie die Datei in als z. B. „pfad-finden.php“ ab und laden die Datei hoch. Anschließend rufen Sie die Datei auf (domain.tld/pfad-finden.php). Und schon wird Ihnen der absolute Pfad angezeigt.

 

Rechte auf Dateien

Auch bei den Rechten auf Dateien sollten Sie sparsam sein. Vor allem Konfigurationsdateien sollten Sie mit chmod „644“ versehen. Denn dann dürfen nur Sie als Administrator bzw. Besitzer an diese Dateien heran. Kritische Dateien sind demnach also z. B.

  • wp-config.php
  • .htaccess
  • .htpasswd
  • config.php

Versehen Sie diese Dateien mit „644“ Rechten, sodass diese von außen nicht zugreifbar sind und nur der Besitzer auf diese Zugriff hat.

 

.htaccess und .htpasswd

Mit der .htaccess Datei können einige Apache Befehle mitgegeben werden, sodass sie vom Webserver beachtet werden. Damit kann nicht nur etwas in Sachen PageSpeed (WordPress PageSpeed verbessern) getan werden, sondern es können Befehle bzgl. Caching und Sicherheit eingebaut werden. In Bezug auf Sicherheit ist es möglich, das Ausführen von PHP-Dateien in Unterverzeichnissen auszuschließen (z. B. nicht notwendig in wp-content/uploads/). Dazu muss unter wp-content/uploads/ eine .htaccess Datei mit folgenden Befehlen erstellt werden:

<Files *.php>
deny from all
</Files>

Damit können die PHP-Dateien hier nicht mehr ausgeführt werden und sind demnach sinnlos und harmlos.

Außerdem kann der gesamte Login Bereich, also nach Eingabe von „domain.tld/wp-login.php“ mit einer Benutzernamen- und Passwortabfrage geschützt werden. Hierzu ist es notwendig, eine .htpasswd Datei zu erzeugen, diese in das Verzeichnis der WordPress-Installation legen und den Benutzernamen einzutragen, z. B.

benutzername: $aug1$GsRZAC2a$1dY1iuyG3WaxdztTFmWU24

Die .htpasswd können Sie hier generieren lassen.

Anschließend müssen Sie die .htaccess Datei bearbeiten und folgende Einträge hinzufügen:

# protect /wp-admin
AuthName „Admin-Bereich“
AuthType Basic
AuthUserFile /absoluter-pfad-zu/.htpasswd
require valid-user

Damit ist Ihr Backend Bereich geschützt. Wenn Sie nun „domain.tld/wp-login.php“ aufrufen, dann müssen Sie Benutzernamen und Passwort eingeben und erst dann können Sie sich in Ihr WordPress einloggen.

 

WordPress PlugIns

WordPress an sich bietet schon viele verschiedene PlugIns an, die sich mit dem Thema „WordPress Security“ auseinander setzen. Diese PlugIns können Ihnen helfen, Ihr WordPress abzusichern und somit sicherer zu machen. Einige PlugIns aufgezählt:

Diese PlugIns sorgen dafür, dass Ihr WordPress sicherer ist. Dazu werden Themes und WordPress Dateien untersucht und nach Änderungen Ausschau gehalten. Werden Änderungen festgestellt, werden Sie per e-Mail benachrichtigt und die Änderungen werden Ihnen angezeigt. Außerdem können Sie mit diesen PlugIns auch die Anzahl der maximal möglichen Logins festlegen.

 

Internen WordPress Editor abschalten

Der interne WordPress Editor erlaubt es direkt im WordPress Backend ein Theme oder eine Plugin Datei zu bearbeiten. Wenn sich ein Angreifer Zugriff zum WordPress Backend verschafft hat, dann könnte er nun hier in die eine oder andere Datei Schadcode hinzufügen. Dies kann also fatal sein. Deshalb sollte diese Funktion abgeschaltet werden. Änderungen in diesen Dateien können dann außerhalb des CMS geschehen und per FTP hochgeladen werden. Dazu muss in die wp-config.php folgender Code eingetragen werden:

define(‚DISALLOW_FILE_EDIT‘,true);

 

Sicherheitsschlüssel verwenden

Ein weiterer Punkt, welcher zur höheren Sicherheit bei WordPress beiträgt ist, die Verwendung von Sicherheitsschlüssel. Auch diese müssen in die wp-config.php hinein. Die Sicherheitsschlüssel könnten beispielhaft wie folgt aussehen:

define(‚AUTH_KEY‘,         ‚.vc3}Rc]pi<U=E1#ocsQ8?fr/D5k582}VS+.S|fD~:vX?`FZImU(!!FSH+b6%+=t‘);
define(‚SECURE_AUTH_KEY‘,  ‚iW|DA#td}s,TYtq@y:uN@zXNe5d?ws_xz9FrW*Xmc+6=Q.3t5N[EtXd;zEKH27x0‘);
define(‚LOGGED_IN_KEY‘,    ‚ iV!+9o|,gDG!H|c&Go-*:x.-{%X)Jw+p(OdRYAqn|=lBYse:8g3VXNs$OROC{N9‘);
define(‚NONCE_KEY‘,        ‚~seO>k-;=eGvg]PRWH,:?=Ri7R]<4^<5!iN@?)4592!XH;C$GKW{8|bE :F[w)Xj‘);
define(‚AUTH_SALT‘,        ‚NmZB_:<$AAX:/R+*PVPr{U]ycIfeiX]]EkQ3,#%op8pSn]KVTr_z .WLHb`C4&@j‘);
define(‚SECURE_AUTH_SALT‘, ‚U|/pj!T+0l2hcJ,{aJ9#8mGbFPVxi 5?[%3X(SRp0Usi(bKQx|8;B.n1#T(l ,]|‘);
define(‚LOGGED_IN_SALT‘,   ‚3|d=j]g)tvC~7NQNX+9&6<|~L,^lO*T21)(fLd3tEBGb~=NO2,f{AK$UrR`Z*sU-‚);
define(‚NONCE_SALT‘,       ‚S]Xo@:o.WVTo@1j0M$Gz;B|??o!fg@)J;f|.>G#&9H+=@[rEp2$h]+|Yqx?|?`aq‘);

 

Das Vorgehen um die Sicherheitsschlüssel in die wp-config.php hinzuzufügen ist wie folgt:

  • wp-config.php mittels FTP herunterladen und mit einem passenden Editor öffnen
  • alte Sicherheitsschlüssel entfernen
  • folgende Seite besuchen und sich neue Security Keys erzeugen lassen: https://api.wordpress.org/secret-key/1.1/salt
  • die wp-config.php speichern und wieder über FTP hochladen und die alte Datei überschreiben

 

WordPress Updates und Plugin Updates

Ein klar wichtiger Punkt ist, dass man immer wieder Updates von WordPress selbst und den PlugIns sowie Themes durchführt. Denn damit werden wichtige und bekannte Sicherheitslücken geschlossen. Bekannte Fehler und Sicherheitslücken können somit ausgemerzt werden, sodass die Angreifer diese nicht mehr ausnutzen können. Damit ist Ihre Seite besser geschützt. Aber nicht vergessen, vor jedem großen Update sollte ein Backup der Datenbank erstellt werden, um im Fehlerfall zurückspringen zu können. Eine eigene Testumgebung, in der die Updates ausprobiert werden können, ist sicherlich nicht verkehrt.

 

Nur das Benötigte installieren

Ein einfacher aber oft unbeachteter Punkt ist der, dass nur das installiert und gelassen werden soll, was auch wirklich notwendig ist und bentutzt wird. PlugIns die nicht benötigt werden, sollten nicht installiert, bzw. nach Deaktivierung gelöscht werden. Außerdem gilt das Gleiche für Themes. Themes welche nicht verwendet werden, können getrost gelöscht werden. Zur Aufbewahrung können diese lokal gespeichert werden. Denn je mehr PlugIns und Themes verwendet werden, desto mehr Angriffsfläche wird geboten. Daher sollte diese Fläche möglichst klein gehalten werden.

 

Zusammenfassung

Bei der Absicherung von WordPress gibt es verschiedene Möglichkeiten. Eine 100%ige Sicherheit gibt es nicht. Die Sicherheit wird mit jedem Baustein erhöht, sodass diese steigt, je mehr Sicherheitsbausteine implementiert werden. Nehmen Sie sich einmal ein wenig Zeit für Ihre WordPress Installation und sichern Sie diese vor Angreifern ab. Denn wenn ein Angriff erfolgreich durchgeführt werden konnte, kann Ihre Webseite Schaden nehmen und im schlimmsten Fall wird Schadsoftware implementiert, sodass dies starke negative Auswirkungen auf Ihre Webseite und deren Reputation hat.

Sicherheit ist ein wichtiges Thema, das täglich an Bedeutung gewinnt. Die Zeit für die Implementierung der oben aufgeführten Sicherheitsbausteine nimmt nicht so viel Zeit in Anspruch, als später nach den Fehlern und dem Schadcode zu suchen, kann Ihnen aber viele Nerven und graue Haare ersparen. Nehmen Sie das Thema also ernst.

 

Facebooktwittergoogle_plusmail

Tägliches Keyword Monitoring und Recherche Tool