Mehr Sicherheit mit /wp-login.php URL Änderung?!

Wie viel bringt eine Änderung der Standard-Wordpress Login-Seite /wp-login.php auf eine andere URL, um Haker abzuschrecken? Ich habe es getestet!

Wie sie mir auf die Eier gehen: Potenzielle Haker, die versuchen mit Bots und generierten Passwörtern versuchen in mein WordPress Backend hereinzukommen. In meinem Experiment-Setup habe ich gesehen, das auf meiner internetzkidz.de-Domain mittlerweile 4.862 Login-Versuche in einem Zeitraum von 10 Tagen auflaufen. Das beinhaltet für mich 2 Probleme:

  1. Dies verursacht unnötige Last auf meinem Server.
  2. Ich leben in permanenter Angst, dass einer dieser Bots mal irgendwann das richtige Passwort generiert und Zugriff zu meiner WordPress Instanz erhält.

In einem Experiment werde ich die Seite /wp-login.php mal mit einem Plugin ändern, sodass Bots diese nicht mehr automatisch unter der Standard-Wordpress-URL finden können.

WordPress ist einladend für Brutforce-Attacken

Ich darf mich mit dem Betrieb meines Blogs auf der WordPress-Standardsoftware nicht allzu laut über Sicherheitsrisiken aufregen – dessen bin ich mir bewusst. Alle Vorzüge einer standardisierten Applikation verwandeln sich im Sicherheitskontext plötzlich in Risiken. Versucht ein Haker eine WordPress-Seite mit einem Login anzugreifen, hat er zwei große Vorteile:

  1. Jede nicht-modifizierte WordPress-Domain hat einen Login-Screen, der unter /wp-login.php erreichbar ist.
  2. Über die Autoren-Archive und Ausweisung der Autoren in Artikeln können gute Ideen entwickelt werden welche Benutzernamen die jeweiligen Autoren für ihre Accounts verwenden.
Wordpress Standard Login Screen
Für einen Login auf einer WordPress Site bekomme ich schnell die URL des Login Screens und eine Idee für einen Benutzernamen.

Experiment-Setup: Weiterleitung der /wp-login.php mit einem Plugin

Meine Experiment-Hypothese ist simpel: Ich kann die Anzahl der automatisierten Login-Versuche durch eine Verschiebung der Login-URL massiv reduzieren! Ich ändere dazu mit dem WordPress Plugin WPS Hide Login die URL so, dass ich mich demnächst nicht mehr unter https://internetzkidz.de/wp-login.php einloggen muss, sondern unter https://internetzkidz.de/****** (Als würde ich hier die neue Login-URL verlinken, ihr Ottos!).

Die Konfiguration des Plugins ist super einfach. Ich hinterlege im Plugin einfach nur die Seite, auf der ich mich zukünftig einloggen möchte. Dann konfiguriere ich noch die Seite, auf die ich Hacker zukünftig schicken möchte, wenn sie versuchen meine /wp-login.php aufrufen möchten: Die Seite /too-bad/ gibt auf meiner Domain nicht und produziert entsprechend einen 404-Fehler. Diesen kann ich über mein Google Analytics Tracking womöglich sogar noch tracken.

Noob-Tipp: Bitte den Redirect nicht auf die neue Login-Seite konfigurieren. Das wird vielleicht ein paar Login-Versuche reduzieren, aber verlagert das Problem eigentlich nur.

WPS Hide Login Konfiguration

Experiment-Ergebnis: Damit habe ich das Problem nicht gelöst!

Vor der Umstellung konnte ich 4.862 gescheiterte Login-Versuche in einem 10-Tage-Intervall verbuchen. Das sind eine ganz schöne Menge. Die Zahlen bekomme ich aus dem WordPress-Plugin Activity Log, das ich vor ein paar Monaten mal installiert habe. Dabei führen die Bots die Login-Versuche mit 5 verschiedenen Usern durch und kommen von 476 unterschiedlichen IP-Adressen.

Wordpress Activity Log Wrong Password

Das Ergebnis nach der Umstellung begeistert nicht: Nach der Umstellung sind noch immer 4.839 fehlerhafte Login-Versuche von 72 verschiedenen IPs und mit 4 verschiedenen Nutzernamen. Der Zeitraum ist dabei ein anderes 10 Tage Intervall.

Das ist gerade mal eine Verbesserung von 0,47% nach der Umleitung der URL. Damit habe ich das Problem definitiv nicht gelöst! Einzig interessant zu beobachten ist die drastische Reduzierung der IP-Adressen.

Ich würde daraus schlussfolgern, dass die Bot-Logins womöglich über eine Schnittstelle kommen, die keine Frontend-Darstellung benötigen. Oder aber: Die Anzahl von 4.800 Logins beschreibt eine Art Obergrenze über die hinaus mein Provider Login-Versuche automatisch abriegelt.

Die wp-login-Analyse in der Übersicht:

Hier die Übersicht der Analyse, die ich zur Auswertung der Activity-Logs (die als CSV bereitgestellt werden) gemacht habe:

Die interessanten Beobachtungen aus der Analyse sind:

  • Die Reduzierung der IP-Adressen im Post-Redirect-Zeitraum von 474 auf 72.
  • Die Verteilung der Login-Versuche in Wellen. Anscheinend gibt es Tage, an denen gibt es direkt 1.000 und anderen Tagen ist Urlaub angesagt!

Da ich die Login-Versuche auf die Unterseite /too-bad/ weitergeleitet habe (im Frontend) kann ich noch checken wie viel Traffic eigentlich auf der Unterseite zu finden war:

Lediglich zwei mal wurde das 404-Error-Event auf der Seite ausgelöst. Aber I guess: Bots don’t do Javascript (Tracking).

Kommentar posten

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

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.