In eigener Sache: Diese Webseite wurde angegriffen und wird nun geschützt

Heute war es dann auch mal bei mir soweit. Meine Webseite erlebte eine BruteForce-Attacke. Da solche Attacken immer irgendeine Sicherheitsproblematik aufzeigen, musste ich also handeln. Und ich habe dann auch schnellstmöglich reagiert.

Zwar werden nun einige denken, dass meine Aktion reichlich spät kommt. Aber ich musste eben erst einmal wieder durch Schmerzen lernen. Und das habe ich nun also gemacht.

Was war die Meldung?

Als ich mich vorhin im Dashboard meiner Webseite – im Verwaltungsbereich also – anmelden wollte, erschrak ich vor folgender Meldung:

BruteForce-Schutz aktiv / brute-force protection active

Die BruteForce-Überwachung hat aufgrund von atypisch Zugriffen den angeforderten Bereich gesperrt. Bitte versuchen Sie es später erneut.

Due to non-standard hits, the access to the requested area has been denied by the brute-force monitoring. Please try again later.

Ich fragte sofort im Internet herum, was dies wohl bedeuten könnte. Ich dachte daran, dass ich ein Plugin im Einsatz habe, das Anmeldeversuche überwacht. Und ich hatte heute mal vergessen, mich abzumelden.

Allerdings erhielt ich als Idee, dass mein Hoster wohl einen BruteForce-Schutz laufen lassen würde. Ich hielt das für recht unwahrscheinlich, aber es konnte theoretisch möglich sein.

Auf Anfrage an den Support wurde das natürlich verneint. Aber – nach Ticketeröffnung mitten in der Nacht kam die Antwort bereits in weniger als 2 Minuten – man bot mir eine Lösung an, die ich schon einmal falsch eingesetzt hatte: Der Schutz des Dashboards mithilfe einer speziellen Datei.

Was ist eine BruteForce-Attacke?

Hier wird mit roher Gewalt versucht, Zugang zu einer Webseite zu erlangen. Mit solchen Attacken wird maschinell versucht, Passwörter zu knacken. Ausführlich beschrieben ist das Ganze in der Wikipedia. Es lohnt sich für alle Webseiten-Betreiber, sich dort einmal quer zu lesen.

Wie war denn nun die Lösung?

Wie gesagt, den entscheidenden Hinweis gab der Support von Alfahosting in einer Weltklasse-Antwortzeit. Und im Endeffekt ist dann bei mir folgende Lösung zustande gekommen:

Schritt 1: Erstellen einer Datei .htpasswd

Ich habe mir bei einem Passwort-Generator mein Passwort verschlüsseln lassen. Derlei Dinge gibt es recht oft. Einer davon ist hier zu finden. Dort gibt man seinen Anmeldenamen und sein Passwort ein und lässt die kryptische Version davon generieren. Das sieht in etwa so aus:

Benutzer:$1$LCwC[w_w$kXvnjJIjJu4LSnlWu/dwG0

Das Ergebnis gibt man dann in eine leere Datei ein. Hierfür eignet sich am besten der Editor Notepad ++. Denn damit kann man dann den richtigen Dateinamen „.htpasswd“ angeben. Diese Datei lädt man dann in seinen Webspace ins gleiche Verzeichnis, wo auch die WordPress-Installation liegt.

Schritt 2: Absoluten Pfad zur Datei feststellen

Für Schritt 2 brauchen wir den absoluten Pfad zur eben erstellten .htpasswd. Diesen erhält man mit einer Datei, die man z.B. pfad.php nennt. Und in dieser steht nur eine einzige Zeile, nämlich:

<?php echo dirname(__FILE__); ?>

Diese Datei speichert man und lädt sie wieder in das gleiche Verzeichnis wie in Schritt 1. Und die Datei ruft man dann im Browser durch Eingabe von: http://domain.test/pfad.php auf. Und man kopiert bitte das, was als Ergebnis angezeigt wird, z.B.:

/server/pfad/zu/ihrer/directory/.htpasswd

Schritt 3: Anpassen des Verzeichniszugriffs

Jetzt müssen wir das Ergebnis aus Schritt 2 noch nutzen. Dazu brauchen wir die Datei .htaccess, die wir dort finden, wo die WordPress-Installation liegt und wo wir die beiden erstellten Dateien hochgeladen haben. Wir laden uns also diese Datei herunter und bearbeiten diese wieder mit dem Notepad ++.

Wir müssen nämlich jetzt angeben, wo die .htpasswd liegt und was wir damit überhaupt schützen wollen. Also tragen wir zusätzlich zum existierenden Inhalt folgenden Abschnitt noch ein:

AuthName "BruteForce"
 AuthType Basic
 AuthUserFile /server/pfad/zu/ihrer/directory/.htpasswd

<FilesMatch "wp-login.php">
 require valid-user
 </FilesMatch>

Und die Datei laden wir dann auch wieder hoch. Aber vorher müssen wir die auf dem Server vorhandene Datei löschen.

Ergebnis

Nun erhält man ein zusätzliches Anmeldefenster im Browser. Und zwar nicht auf der Webseite, sondern direkt im Browser. Mit diesem Anmeldefenster authentifiziert man sich, dass man ein gültiger Benutzer ist, der Zugriff auf die Datei wp-login.php haben darf.

Ich hoffe, dass dies die einzige BruteForce-Attacke war. Und wenn Sie Ihre Seite ähnlich schützen wollen, hoffe ich, die drei Schritte anschaulich genug erklärt zu haben.

35 Replies to “In eigener Sache: Diese Webseite wurde angegriffen und wird nun geschützt”

  1. Hallo,
    ich nehme mal an, dass man für die Brut Force Sicherung lieber eine andere Benutzername/Passwort Kombination nehmen sollte, als für den eigentlichen login, oder?
    Gruß, andi

  2. Hallo Henning,

    hatte heute auch einen BruteForce Angriff auf mein BackEnd der Website und habe sie mit deiner Anleitung dicht bekommen. 10min Zeit kann echt jeder investieren um seine Monatelange Arbeit vor kriminellen zu schützen.

    Ich sage nur Danke und eine schöne Weihnachtszeit

    RoB

  3. Hallo,

    vielen Dank für diese Lösung! Unsere Vereinswebseite wurde heute Opfer einer BruteForce-Attacke und bekam natürlich erstmal Panik! Zum Glück kam ich ziemlich schnell auf diesen Beitrag und konnte, nachdem ich die beschriebenen Schritte durchgeführt hatte, wieder auf unser Backend zugreifen.

    Schönen Gruß,
    Daniela

      1. So, hab´s ausprobiert und es klappt: Ja, ich meinte „Tools > Passwortschutz“, das ist quasi .htpasswd made simple ;) Natürlich überschreibt das Ding die WordPress .htaccess die man sich dazu mit all den eigenen Anpassungen kopiert. Nach Anlegen des Passwortschutzes habe ich dann meine alten WordPress-.htaccess Daten (also alles zwischen # BEGIN WordPress und # END WordPress) in die neue vom Apache angelegte Version kopiert, auf dem Server die .htaccess in den Müll gekippt, meine geänderte hochgeladen (wg. den Benutzerrechten kein Überschreiben möglich, aber Löschen) und voila: Doppelter Passwortschutz, alle WP-Permalinks mit mod-rewrite funktional as usual, Brute Force Warnung gone… :) Simple Sache – 2 Minuten.

  4. Hallo und herzlichen Dank für die tolle Beschreibung!
    Finde ich super dass du deine Erfahrung mit uns teilst.

    Ich befinde mich ebenfalls in dieser Lage. Nun bin ich der Anleitung gefolgt, habe aber noch immer ein GROßES PROBLEM: Trotz korrekter Eingabe des Namens und des Passworts, werde ich nicht zum Admin-Login weitergeleitet. Statt dessen ploppt ständig diese Namen- und Passwortaufforderung auf.

    Was kann ich da machen?

  5. Hallo Henning,

    danke für diese Anleitung. War heute Opfer einer BruteForce Attacke und ebenfalls Kunde bei Alfahosting. Auch hier eine super schnelle Reaktionszeit vom Support. Ich hatte deine Artikel gefunden und dieser half mir weiter.

    Besten Dank
    Gruß Michael

  6. Danke für diese ausführliche Hilfe. Ich stand auch vor der gleichen Sperrung, aber durch diese auch einfache Anweisung, konnte ich das Problem recht schnell beheben. Gibt es das eigentlich nur bei Alfahosting?

    1. Hallo, nein, das gibt es natürlich nicht nur bei Alfahosting. Bei allen anderen Hostern ist das sicherlich auch möglich. Ich habe das ja auch alles nur bei mir ausprobiert. Und mich belesen. Ich weiß aber, bei anderen Hostern ist so etwas auch völlig normal. Das liegt ja nicht am Hoster, sondern an den Angreifern.

  7. Ich hatte heute auch das erste Mal überhaupt eine BruteForce-Attacke. Bin dann über das WordPress-Forum auf deinen Artikel gestossen. Ich hatte bei meinen Websites schon mal die .htaccess und .htpasswd eingerichtet, aber aus Bequemlichkeit diese wieder gelöscht, da es einfach nervig war so viele Benutzernamen und Passwörter einzugeben. Aber jetzt hatte ich den Salat und musste wieder die beiden Dateien hochladen. Da es schon einige Zeit her war, wie man das regelt, habe ich natürlich danach gegoogelt und bin auf deine sehr gute und kurze Beschreibung gekommen. Vielen Dank dafür.

  8. Hallo Henning,

    vielen Dank für die einfache Anleitung.
    Heute wurde den BruteForce-Schutz für meine Seite aktiviert und deinen Beitrag hat mir sehr geholfen.

    Mit freundlichen Grüßen,
    Jose

Schreibe einen Kommentar

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