WordPress: Auslesen der Benutzernamen verhindert

WordPress: Auslesen der Benutzernamen verhindert

Bei den meisten WordPress-Anwendungen die ich überwache, sehen ich (fehlschlagende) Versuche von verschiedenen Angreifern (gerne aus China, Russland, etc.  kommend), sich in das Backend von WordPress einzuloggen. Sehr häufig wird dabei versucht, sich mit dem WordPress Standard Benutzer „admin“ einzuloggen. Seit langem ist es in WordPress möglich, anstatt „admin“ einen beliebigen Nutzernamen zu verwenden, was auch dringend getan werden sollte.

 

 

So findet man die User heraus

 

Was viele aber übersehen – es gibt trotzdem einen Weg, wie man bei WordPress easy herausfinden kann, welchen Benutzernamen der Admin höchstwahrscheinlich hat. Und dies funktioniert wie folgt: Man fügt an die Startseite des WordPress Blogs einfach den String „?author=1“ an – es erfolgt ein Redirect zu einer Übersichtsseite aller Einträge des Nutzers mit der ID 1 (in meistens der admin, da er zuerst angelegt wurde). Das Besondere hierbei: Der Redirect enthält den Namen des Nutzers in der URL. Man kann die Zahl hinter „?author=X“ natürlich auch verändern, um auch die Nutzernamen der anderen User im Blog herauszubekommen.

 

 

So kannst Du dich schützen

 

Eine einfache Regel in der .htaccess Datei schafft hier Abhilfe. Sie sollte direkt nach „RewriteBase“ eingefügt werden,
damit sie möglichst als allererstes ausgewertet wird.

 

RewriteEngine On
RewriteBase /blog/
RewriteCond %{QUERY_STRING} .*author=(.+.?) [NC]
RewriteRule (.*) /blog/?author= [NC,L,R=301]
….

 

 

Zusammenfassung

 

Die Bedingung ist, dass jemand „author=“ in die URL hängt, mit mindestens einem Zeichen. Die Regel redirected dann zur Startseite des Blog und entfernt die Zeichen hinter author=. Im Zweifel ist die Startseitenadresse des Blogs anzupassen. In mein Fall ist es „/security-blog/“. Hat man sein Blog direkt im Hauptverzeichnis, wäre dementsprechend das Ziel „/?author=“.

 

Empfehlung für sichere Passwörter: Hier geht es zum Blogeintrag

«
»