WordPress: Potenzielle Sicherheitslücken schließen

WordPress: Potenzielle Sicherheitslücken schließen

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. 🙂

Schlagworte: ,

Teilen

  1. Avatar

    Bart sagte am

    Hallo,

    ich finde es befremdlich, dass in diesem Beitrag nicht die korrekte SQL Syntax verwendet wird. Copy&Paste funktioniert hier nicht.

    Falsch heißt es:

    UPDATE vogon_options SET option_name =
    REPLACE(option_name, ,wp_‘, ‚vogon_‘);

    Richtig heißt es:

    UPDATE vogon_options SET option_name =
    REPLACE(option_name, ‚wp_‘, ‚vogon_‘);

    Antworten
  2. Avatar

    Jonas sagte am

    In welchem Verzeichnis muss die .htaccess – Datei liegen?

    Antworten
    • Avatar

      Michael Poguntke sagte am

      Hallo Jonas,

      die .htaccess muss im root-Verzeichnis liegen, also stets auf der obersten Ebene des Blog-Verzeichnisses. Sprich: Direkt im Hauptverzeichnis der WordPress-Instanz.

      Jetzt habe ich dasselbe mit drei verschiedenen Ausdrücken gesagt, aber ich hoffe, Du verstehst mich. 🙂

      Viele Grüße
      Michael

      Antworten
  3. Avatar

    Frank sagte am

    Der neue communicator ist leider nicht schön.
    Kann von meinem Handy keine Mail weiterleiten, kann keine Adresse laden.
    Ist kein direktes Druckersymbol mehr da, muss jedesmal erst einen Menüpunkt aufmachen.
    Alles so kompliziert

    Antworten
    • Avatar

      Philipp Wolf sagte am

      Hallo Frank,

      da bist Du glaube ich im falschen Beitrag gelandet, aber dennoch: Das Weiterleiten geht bei mir ganz normal auf dem Smartphone. Dazu öffnest Du die Mail und klickst oben auf Aktionen.

      Deinen Wunsch nach einem Druckersymbol gebe ich weiter.

      Viele Grüße
      Philipp

      Antworten

Sie können erst kommentieren, wenn Sie unseren Datenschutzbestimmungen und den Cookies zugestimmt haben. Aus Datenschutzrechtlichen Gründen dürfen wir andernfalls keine personenbezogenen Daten von Ihnen aufzeichnen.

Klicken Sie dazu einfach unten im Browser Fenster auf den blauen Button Akzeptieren. Nach dem Neuladen der Seite können Sie Ihr Kommentar schreiben.