Quantcast
Channel: STRATO Blog
Viewing all articles
Browse latest Browse all 843

WordPress: Potenzielle Sicherheitslücken schließen

$
0
0
Jahresrueckblick 2015 FTP Security

Sind PHP, .htaccess und SQL Deine Welt? Dann beseitige mit den folgenden Sicherheitstipps typische Schwachstellen von WordPress.

WordPress bietet von sich aus viel Potenzial, das System gegen Kontroll- und Datenverlust effektiv zu schützen. Dazu gehören unter anderem sichere Zugangsdaten, ein sorgfältiger Einsatz von Plugins und regelmäßige Backups. Fortgeschrittene Nutzer gehen noch weiter, indem sie potenzielle Sicherheitslücken schließen. Wir zeigen in diesem Beitrag, wie Du Login-Fehlermeldungen deaktivierst, einen Verzeichnisschutz für den Login-Bereich erstellst und das Tabellenpräfix änderst.

Login-Fehlermeldungen deaktivieren

Wenn Du Dich mit falschen Benutzernamen anmeldest, macht WordPress folgende Fehlermeldung: „FEHLER: Ungültiger Benutzername.“ Und wenn Du den richtigen Benutzernamen und das falsche Passwort eingibst, lautet die Antwort: „FEHLER: Das Passwort, das du für den Benutzernamen DEINBENUTZERNAME“ eingegeben hast, stimmt nicht. Diese Informationen sind für Angreifer wertvoll und sollten darum deaktiviert werden. Um stattdessen ein nichtssagendes „Ich bin dein Vater!“ einzublenden, fügst Du einfach folgenden Code ans Ende der functions.php Deines Themes ein:

Screenshot functions.php

WordPress-Fehlermeldung in der functions.php ändern

Verzeichnisschutz für Login-Bereich erstellen

Der sensible Login-Bereich wird standardmäßig immer über /wp-login.php aufgerufen. Das wissen Hacker und Botnetze zu nutzen. Mit einem Verzeichnisschutz per .htaccess bauen wir ein Schloss davor, das unabhängig von WordPress funktioniert. Bei einem Brute-Force-Angriff wird die Performance unseres Blogs nicht beeinträchtigt, weil der Angreifer es gar nicht erst bis zum Login-Bereich schafft.

Dazu erstellen wir in unserem Code-Editor eine leere Datei, nennen diese .htpasswd (ja, mit Punkt am Anfang) und öffnen den Htpasswd Generator. Dort geben wir einen beliebigen Nutzernamen und ein Passwort ein. Das Tool verschlüsselt das Passwort und gibt eine Kombination aus Nutzernamen und Datensalat aus. Diese kopieren wir in die .htpasswd-Datei und laden sie in das root-Verzeichnis unseres Webspace.

Im nächsten Schritt wird die .htaccess geöffnet und ans Ende folgender Code eingefügt:
AuthType Basic
AuthName „Verzeichnisschutz“
AuthUserFile ABSOLUTERPFAD/.htpasswd
Require valid-user

Bei AuthUserFile muss statt ABSOLUTERPFAD Dein individueller, absoluter Pfad zur .htpasswd angegeben werden (www.wunschdomain.de/.htpasswd funktioniert nicht). Wie Du den herausfindest, wird in dieser FAQ erklärt. Nach dem Upload der bearbeiteten .htaccess erwartet Dich beim Login-Versuch folgende Meldung:

Verzeichnisschutz

Der Verzeichnisschutz funktioniert unabhängig von WordPress.

Somit ist Dein Login-Bereich zusätzlich geschützt. Um Dich einloggen zu können, musst Du den oben erstellten Benutzernamen und das (unverschlüsselte) Passwort eingeben. Falls Du die Zugangsdaten vergessen solltest, kannst Du die .htpasswd-Datei einfach durch eine neue ersetzen.

Tabellen-Präfix ändern

WordPress vergibt stets das Tabellenpräfix wp_. Diese potenzielle Sicherheitslücke kann in Form von SQL-Injections ausgenutzt werden. Bei einer manuellen Installation sollte deshalb am besten gleich ein anderes Präfix zum Einsatz kommen. Dazu wird in der wp-config.php vor dem Hochladen einfach der Eintrag $table_prefix = ‚wp_‘; entsprechend geändert. Eine nachträgliche Änderung ist ebenfalls möglich, aber aufwändiger. Wichtig: Vorher unbedingt ein Backup der Datenbank machen, da bei einem Fehler die Website nicht mehr erreichbar ist!

So änderst Du das Tabellen-Präfix:

1. Als Erstes benennst Du wie beschrieben den Präfix in der wp-config.php um. In unserem Beispiel wählen wir als Präfix vogon_, so dass die Zeile wie folgt aussieht:
$table_prefix = ‚vogon_‘;

2. Danach rufst Du über das STRATO Kundenlogin phpMyAdmin auf: Paket Verwaltung Datenbankverwaltung → (Datenbank aussuchen) → Zur VerwaltungStruktur. Setze nun bei allen Tabellen ein Häkchen und wähle unten im Dropdown-Menü den Eintrag Tabellenprefix ersetzen. Danach kannst Du den alten gegen den neuen Präfix (hier: vogon_) ersetzen.

Datenbank in phpMyAdmin

Datenbank in phpMyAdmin

3. Im Reiter SQL müssen wir noch die folgenden beiden Befehle eingeben (statt vogon_ Dein neues Präfix):
UPDATE vogon_options SET option_name =
REPLACE(option_name, ‚wp_‘, ‚vogon_‘);

UPDATE vogon_usermeta SET meta_key =
REPLACE(meta_key, ‚wp_‘, ‚vogon_‘);

Sicherheit ist immer relativ

Wer sichere Zugangsdaten hat, beim Einsatz von Plugins vorsichtig ist und regelmäßig Backups anlegt, hat den Grundstein für ein sicheres System gelegt. Mit den hier genannten Tipps gehst Du einen Schritt weiter und schließt mögliche Sicherheitslücken von WordPress. Ob der Aufwand übertrieben ist, muss jeder für sich entscheiden. Wenn Du Spaß an sicherem Webhosting und WordPress hast, stellst Du Dir die Frage vielleicht gar nicht. :)


Viewing all articles
Browse latest Browse all 843

Latest Images

Trending Articles