Das Böse ist immer und überall…
Dafür, dass ich ein unscheinbares Web betreibe, gibt es ein weltweites Gerangel von Piraten, die versuchen ein richtiges Login zu erraten.
Es ist einem von ihnen schon einmal gelungen einzudringen. Damals hat mich Werner darauf aufmerksam gemacht, dass von meinem Web viel Traffic ausgeht. Genau das ist das Ziel der Hacker. Sie missbrauchen ein erobertes Web, speichern dort ihre eigenen Webseiten (gut versteckt im Dateisystem) inklusive Downloadmaterial. Das Web selbst weist keine sichtbaren Fehler für Besucher und Administrator auf, aber der Hoster merkt es am Datenvolumen, dass etwas nicht stimmt.
Wöchentliche Angriffe
Eine Auswertung von Login-Versuchen zwischen 30.3. und 6.4.2020 ergibt die häufigsten 10 Angreifer:
IP | Country | Block Count |
123.207.29.152 | China | 11883 |
221.235.184.90 | China | 10093 |
47.107.186.183 | China | 4131 |
162.144.204.146 | United States | 353 |
218.43.111.153 | Japan | 352 |
173.212.239.226 | Germany | 244 |
198.71.227.9 | United States | 198 |
198.71.228.44 | United States | 195 |
132.148.229.170 | United States | 192 |
148.66.146.19 | Singapore | 137 |
Die größte Zahl der Login-Versuche kam aus China.
Der Angreifer benötigt Usernamen und Passwort. für den Usernamen verwendet er gängige Wörter, wie man in der folgenden Tabelle sieht:
Username | Login Attempts | Existing User |
franz-fiala-admin | 518 | No |
admin | 368 | Yes |
[login] | 222 | No |
klubderfreunde | 139 | No |
ewkil.at | 38 | No |
alex | 28 | No |
test | 19 | No |
mygc_wpdev | 19 | No |
scare! | 7 | No |
admin123 | 3 | No |
Man sieht, dass die Angreifer verschiedene Usernamen ausprobieren, die vom Domänennamen abgeleitet werden oder die auf den voreingestellten Wert „admin“ tippen – ein Anlass, diesen Namen gleich zu ändern. Die Bezeichnung „franz-fiala-admin“ ist übrigens der Autorenname, mit dem alle Seiten und Beiträge verfasst worden sind, und das ist auch das primäre Angriffsziel. Diese Bezeichnung wird von WordPress automatisch erstellt und man findet sie in jedem Beitrag und jeder Seite des Autors. Man öffnet eine Seite mit „Seitenquelltext anzeigen“ und sucht dort nach class=“author“. Dort findet man die Systemschreibweise des Autors (hier „franz-fiala.admin“):
<span class="entry-author-link" itemprop="author" ><span class="author"><span class="fn"><a href="http://klubderfreunde.at/author/franz-fiala-admin/" title="Beiträge von FranzF" rel="author">FranzF</a></span></span></span>
Username
Die Abwehrstrategie muss es also sein, Usernamen zu verwenden, die ein Angreifer nicht erraten kann, denn dann muss er eine doppelte Hürde überwinden: den Usernamen und das Passwort. Daher:
- Tipp1: Alle nicht benötigten User löschen, sie wären ein mögliches Angriffsziel.
- Tipp2: Usernamen sollen keinen Zusammenhang zum Domänennamen oder zum Webtitel oder einem Seitennamen haben.
- Tipp3: Der Username sollte nicht dem Autorennamen entsprechen.
- Tipp4: Den voreingestellten User „admin“ jedenfalls umbenennen oder löschen.
Passwort
Beim Anlegen eines Users kann man bei WordPress ein Passwort festlegen, wenn man nicht das sehr komplexe verwenden will, das WordPress anbietet. Wörter bis 6 Zeichen werden als „ganz schwach“, bis 8 Zeichen als „schwach“, bis 10 Zeichen als „mittel“ und darüber als „stark“ eingestuft. Bei Zeichenwiederholungen verschieben sich diese Grenzen nach oben. „Apfelstrudel“ als Passwort wäre „mittel“, „Apfelstrudeln“ wäre zwar grammatikalisch falsch, aber WordPress bewertet das Wort als „stark“. Zahlen und Zeichen haben weniger Einfluss auf die Bewertung durch WordPress.
Für Passwörter gibt es praktische Datenbanken, die aus Einbrüchen vor vielen Jahren stammen. Der Angreifer probiert also nicht unbedingt alle Kombinationen aus Zahlen, Buchstaben und Zeichen aus, sondern versucht es (wahrscheinlich) zuerst mit bekannten Passwörtern, die schon in anderen Zusammenhängen verwendet worden sind.
Beim Passwort sollte man – abgesehen von einer ausreichenden Länge und Komplexität – darauf achten, dass sich das Passwort nicht in einem dieser Verzeichnisse der kompromittierten Passwörter befindet, denn diese Liste würde ein Angreifer jedenfalls abarbeiten, bevor er systematisch ans Werk geht. Hier kann man das prüfen: https://haveibeenpwned.com/Passwords
Seit einem Einbruch, der möglicherweise durch Raten des Passworts möglich wurde, habe ich mich mit dem Tool Wordcence „bewaffnet“, das solche Attacken registriert und abblockt und auch noch weitere Hilfen anbietet.
WordFence
Wordfence ist ein Sicherheits-Plugin, das auch ohne seine kostenpflichtige Premium-Funktion gute Dienste bei der Abwehr von Angriffen leistet. Das Plugin wird weltweit in mehr als drei Millionen Websites verwendet und ist das am häufigsten angewendete Sicherheits-Plugin.
Worfence bietet einen
- Scan nach Schadsoftware,
- Blockieren von Angriffen,
- Blockierung von Ländern,
- Darstellung der Zugriffe,
- Login-Sicherheit (2-Faktor Authentizierung auch ohne Premium),
- Import/Export von Einstellungen zu anderen Webs,
- Integriertes Whois Lookup,
- Umfangreiche Diagnose-Seite,
- Wordfence Central (gemeinsame Verwaltung mehrer Web),
- Benachrichtigung durch Push-Mails,
- Dashboard,
- Firewall (nur Premium).
WordFence muss man nicht unter Werkzeug oder Einstellungen suchen, denn es generiert einen eigenen Menü-Punkt:
Dashboard
So meldet sich das Dashboard von Wordfence:
Trotz umfangreicher Einstellmöglichkeiten, genügt es, Wordfence zu installieren. Was man tun sollte:
- eine E-Mail-Adresse für Push-Nachrichten angeben
- einen Scan ausführen und eventuellen Problemen nachgehen
- 2FA (Zwei-Faktor-Authentizierung) aktivieren
Sollte ein Scan ergeben, dass es massive Veränderungen an WordPress-Dateien gibt, gibt, bitte beim Clubbüro melden, wir werden versuchen, das Web zu säubern und WordPress neu zu installieren.
Wordfence Central
Man kann mehrere Webs in einer von Wordfence angeboteten Webseite gemeinsam administrieren.
Tools
Man kann das aktuelle Protokoll aller Zugriffe in Echtzeit mitverfolgen und verdächtige IPs mit einer integrierten Whois-Abfrage analysieren. Einstellungen können exportiert werden, um sie in anderen Webs zu importieren. Sehr beeindruckt hat mich die übersichtliche Diagnosefunktion, die jeden Winkel von WordPress „ausleuchtet“.
Wenn man die einzelnen Zugriffe verfolgt, würde man sich die Firewall-Funktion wünschen – leider nur in der Bezahl-Version – mit der man auch Länder vom Zugriff aussperren kann. Sperrt man zum Beispiel China, hätte man einen großen Teil unerwünschter Besucher ausgeschlossen.
Protokolle
Wordfence generiert regelmäßige Protokolle, die den Administrator warnen oder ihn zum Handeln auffordern.
2FA (Zwei-Faktor-Authentizierung)
Die Aktivierung der Zwei-Faktor-Authentizierung sichert ein Web gegen Angriffe perfekt ab. Wordfence bietet diese Sicherheitsstufe kostenlos an, und man sollte sie nutzen.
Um die Zwei-Faktor-Authenizierung benutzen zu können, benötigt man eine zugehörige App am Handy. Ich verwende den Microsoft Authenticator.
Die Authenticator-App meldet sich am Handy mit folgendem Symbol:
Um eine Verbindung zwischen Wordfence und der Authenticator-App herzustellen, wählt man in WordpPress Dashboard -> Wordfence -> Login Security
In der Authenticator-App am Handy geht man auf Einstellungen -> Konto hinzufügen -> Anderes Konto und wird aufgefordert, den angebotenen QR-Code (oberes Bild) zu scannen. Man erhält eine 6-stellige Zahl, die man in Wordfence eingibt. Damit ist die Installation abgeschlossen.
Meldet man sich nun an WordPress an, beginnt die Anmeldung zuerst wie gewohnt:
Das folgende Fenster verlang nach einem Code. Jetzt öffnet man die Authenticator App am Handy und überträgt die dort angezeigte 6-stellige Zahl in die Maske von WordPress.
Fertig!
Wer sich häufig in seiner Webseite an- und abmeldet, kommt bald auf die Idee, die 2-Faktor-Authentizierung wieder auszuschalten, weil die zusätzliche Eingabe einer Zahl den Vorgang verkompliziert. Das sollte man nicht tun, sondern besser die zahlreichen Konfigurationsmöglichkeiten dieser Anmeldung studieren, denn es gibt einige Vereinfachungsmöglichkeiten.
- 2FA für Benutzergruppen (Administrator, Editor, Author, Contributor, Subscriber) ein- oder ausschalten
- 2FA für Administratoren erzwingen
- 2FA erst nach 30 Tagen wieder anfordern
- 2FA für bestimmte IP-Adressen ausschalten
Titelbild
Das Titelbild wurde mit Inkscape erstellt. Es besteht aus dem vektorisierten Wordfence-Logo und einem WordPress-Logo (Zeichen F411 aus dem Zeichensatz Font Awesome 5 Brands Regular). Die beiden Bilder wurden übereinander gelegt und mit der Funktion Pfad -> Exklusiv Oder verknüpft.
Links
Wordfence (Homepage)
Franz war pensionierter HTL Lehrer (TGM), Präsident von ClubComputer, Herausgeber der Clubzeitung PCNEWS und betreute unser Clubtelefon und Internet Support. Er war leidenschaftlicher Rapid Wien Fan. Er ist leider Anfang Jänner 2024 nach langer schwerer Krankheit verstorben.
Neueste Kommentare