Erhöhtes Aufkommen von Kommentarspam und vermehrte Loginversuche scheinen in jedem Blog an der Tagesordnung zu sein. Hier im Blog wurden in den letzten 5 Wochen knapp 950 Loginversuche gestoppt. In meinem zweiten Blog wurden nur 300 Loginversuche verzeichnet und trotzdem gehört es wohl dazu das ein Betreiber eines Blog´s sich in Zukunft mit Loginversuchen und der Sicherheit im Blog auseinander setzen muss. Wer bisher nur auf Limit Login Attempts setzte der sollte umdenken denn es gibt Lösungen die effektiver sind oder wo Limit Login Attempts nur noch unterstützend wirkt. Wer wie ich auf eine Eierlegendewollmilchsau setzen möchte und so effektiv wie möglich seine WordPress Blog mit Hilfe eines Plugins absichern möchte, dabei über den Tellerrand hinaus blicken kann, der sollte sich das Plugin Better WP Security anschauen. Im folgenden möchte ich euch das Plugin näher bringen und eine Anleitung bieten wie es richtig eingesetzt wird, denn so mancher Blogger hat sich schon selber mit dem Plugin ausgesperrt und dann ist die Begeisterung von dem Plugin logischerweise eher gering.
System Status ( Das Dashboard von Better WP Security)
Das Dashboard von Better WP Security ist leider in englisch gehalten so wie das ganze Plugin. Wer allerdings nur etwas englisch kann, wird sich durch die vielen Einstellungen trotzdem gut zurechtfinden. Im Dashboard findest du Informationen zum Systemstatus, Informationen zum System selber also Datenbank Information, Server Information, PHP Information und vieles mehr. Außerdem findest du die Daten die Better WP Security in der .htaccess und der Wp-config.php hinzugefügt hat im Dashboard von Better WP Security!
Change Admin User
Standardmäßig erzeugt WordPress immer bei der Installation einen Benutzernamen „admin“. Dieser Name ist sehr ungünstig , da dieser Benutzer die vollen Rechte im WordPress-System erhält und ein potentieller Hacker bereits weiß, dass der Benutzername vermutlich verwendet wird. Ein Angreifer muss an dieser Stelle nur das Passwort erraten. Mit der Änderung des Benutzername wird der Angreifer vor das Problem gestellt das es den Benutzer „admin“ nicht mehr gibt. Somit hat der potentieller Angreifer das Problem das er erst den Benutzernamen braucht um dann das Passwort zu erraten! Somit hat der Angreifer erheblich mehr Aufwand. Der Bereich „Admin User“ von Better WP Security ändert nun den Benutzernamen von „admin“ in den gewünschten Benutzernamen. Zusätzlich lässt sich noch die User ID ändern somit die Standard ID=1 in eine andere ändern! Selber konnte ich die Funktion nicht testen da ich den Namen schon geändert hatte! Das Plugin zeigt jedoch an das bei mir der Name und die ID geändert wurden.
Administor Away Mode
Wer möchte das das Backend zu bestimmten Zeiten nicht erreichbar ist und somit kein Login zu den voreingestellten Zeiten ins Backend benötigt der sollte sich die Funktion Administor Away Mode ansehen. Die Funktion macht sicher Sinn z. B. wenn der Urlaub ansteht, allerdings kann ich mir nicht vorstellen das ich die Funktion nutzen würde. Wenn ich reagieren möchte, weil ich was ändern muss sei es durch Rechtsstreitigkeiten oder oder oder würde ich auch im Urlaub gern in mein Backend von WordPress kommen. Wenn ich mich da selber aussperren würde, wäre ich für die Zeit des eingestellten Zeitraumes völlig handlungsunfähig. Im übrigen hat sich schon so Mancher mit der Funktion selber ausgesperrt wie ich in Foren gelesen habe. (Solltest du dich ausgesperrt haben einfach das Plugin per FTP löschen dann sollte dein Backend wieder erreichbar sein.)
Ban Users
Wenn die Checkbox aktiviert wird werden Kommentar Spamer, Bad Bots und Proxies durch HackRepair.com’s blacklist geblockt. Es werden Daten in die .htaccess eingetragen, die im Dashboard von Better WP Security eingesehen werden können. Kommentar Spamer, Bad Bots und Proxies sehen nur noch eine weiße Seite wenn sie auf den Blog kommen und haben so keine Möglichkeit mehr sich auszulassen. (Ich nenne es eine unterstützende Wirkung zum Antispam Bee.)
Change wp-content Directory
Bei Installation von WordPress legt WordPress standardmäßig alle Inhalte einschließlich der Bilder, Plugin´s, Theme´s, Upload´s und mehr in einem Verzeichnis namens „wp-content“ ab. Da es feste Strukturen gibt weis der Angreifer bereits wo er suchen muss um die Daten zu finden, weil Pfade und Verzeichnissstrukturen bei jeder Installation gleich sind. Wird der Ordnername geändert erschwert das dem Angreifer die Datei zu finden die er benötigt um Veränderungen am System vorzunehmen. Der Autor des Plugin´s Better WP Security weist extra darauf hin das diese Funktion nur genutzt werden sollte wenn WordPress neu installiert wurde, weil sich Verzeichnisspfade von Themes, Bildern usw. ändern.
Backup WordPress Database
Zum Aspekt der Sicherheit für WordPress gehört auch die Sicherung der Daten. So oder so ähnlich dachte wohl der Autor des Plugins und integrierte deshalb eine Möglichkeit die Datenbank von WordPress zu sichern. Es muss lediglich die eMail angeben werden und wie oft das Backup der Datenbank durchgeführt werden soll. Schon steht dem Backup nichts mehr im Weg. Unter den Einstellungen befindet sich noch eine „Backup Information“, wo ersichtlch ist wann das nächste Backup durchgeführt wird. Ziemlich simpel die Funktion zum Backup erstellen so erspare ich mir ein anderes Plugin zum sichern der Datenbank. Die Eingaben zum Datenbankbackup sind selbstklärend!
Change Database Prefix
Bei der Installation schlägt WordPress standardmäßig das Präfix „wp_“ vor um alle Tabellen in der Datenbank anzulegen. Da die wichtigen Tabellennamen zu 95% immer gleich sind kann der potenzielle Angreifer dieses Wissen gezielt nutzen um per SQL-Injection Zugriff zum WordPress zu erlangen. Der Autor des Plugin´s empfiehlt vor dem ändern des Präfix´s unbedingt ein Backup der Datenbank zu machen!
Hide WordPress Backend
Die Funktion soll den Login, die Registrierung und den Adminbereich unsichtbar machen. Das Plugin stellt dafür einen Secret Key also einen Schlüssel zur Verfügung mit dem in das Backend von WordPress gelangt werden kann. Wer den Schlüssel nicht hat findet das Backend nicht. Ich denke eine geniale Sache, läßt sich so die wp-login.php in eine Zeichenfolge umbenennen und jeder, der die normale Login-Seite aufruft, bekommt die Error 404 seite zu sehen. Leider lies diese Funktion zu wünschen übrig sowie bei vielen anderen wohl auch. Vielleicht klappt es nach einem Update … .
Intrusion Detection
Wenn ein Benutzer in kurzer Zeit viele Fehlerseiten produziert, wird davon ausgegangen das dieser nach einer Schwachstelle scannt. Die Funktion Intrusion Detection zeichnet die Fehlerseiten auf und sperrt potenzielle Angreifer aus. Die Schwellenwerte können beliebig geändert werden, jedoch sind die Voreinstellungen schon fast perfekt. Statistiken der 404 Fehlerseiten können unter View Logs eingesehen werden.
Limit Login Attempts
WordPress erlaubt unglaublicherweise eine unbegrenzte Anzahl an Login Versuchen. Angreifer können so wenn sie den Benutzernamen wissen per Brute-Force-Methode das Passwort knacken. Better WP Security registriert die Fehlversuche des Angreifers und je nachdem wieviele „Max Login Attempts Per Host“ etc. eingestellt wurden, sperrt Better WP Security den Angreifer den Zugriff zum Login. Somit kann der Angreifer dann keine Passwörter mehr ausprobieren und muss warten bis er wieder ein Passwort eingeben kann. Mit der Funktion „Blacklist Repeat Offender“ wird der Angreifer mit seiner IP-Adresse des betreffenden Computers nach Erreichen der Anzahl der Aussperrungen unter „Ban Users“ in die Liste eingetragen und der .htaccess hinzugefügt. Dem Angreifer wird dann der Zugriff zur gesamten Seite verwehrt.
SSL
SSL ist bekannt zur sicheren Datenübertragung im Internet. Mit Hilfe von Better WP Security ist es möglich das Login und oder auch nur das Backend per SSL aufzurufen. Damit wird eine sichere Verbindung vom Server zum Admin, Redakteur usw., halt allen die Zugriff zum Backend haben hergestellt. Funktion wurde von mir noch nicht getestet aber das wird noch nachgeholt!
Various Security Tweaks
Unter System Twecks werden verschiedene Möglichkeiten der Optimierung zusammengefasst. Es gibt Server Twecks, Header Tweaks, Dashboard Tweaks, Strong Password Tweaks und Other Tweaks. Die Twecks sind selbst für Laien und mit wenig englisch Kenntnissen nachvollziehbar, da unter jedem Tweak eine kleine Beschreibung steht. Wenn du beim Abspeichern in Better WP Security folgende Fehlermeldung „Settings Saved. You will have to manually add rewrite rules and wp-config.php code to your configuration. See the Better WP Security Dashboard for a list of the rewrite rules and wp-config.php code you will need.“ erhalten soltest, dann musst du den Hacken bei „Write to WordPress core files“ setzen. Das erlaubt dann Better WordPress Security die Corefiles also die Datein von WordPress zu ändern.
Better WP Security Logs
Es werden jede Menge Daten wie zum Beispiel Login-Fehler, 404 Fehlerseiten usw. von Better WP Security gesammelt. Diese Daten werden ordentlich strukturiert unter Logs angezeigt. Ein gelegentliche ansehen der Logs offenbart hier dann was Better WP Security wirklich macht.
Mein Fazit
Ich hoffe ich habe euch jetzt ein bisschen an das Thema Sicherheit im WordPress Blog ran führen können. Sicher gibt es ähnliche Plugin´s für WordPress an Mass aber mir gefiel eben Better WP Security, weil es mit den Funktionen aus der Masse der Security Plugins für WordPress heraussticht. Sicher könnte ich auch wie Thomas in seinem Betrag Login Attempt – Schutz reicht nicht mehr aus schreibt einen zusätzliche Absicherung durch die .htaccess erreichen und der Schutz wäre bestimmt auch sehr wirkungsvoll aber dann müsste ich ein Passwort mehr eingeben, was zugegebenermaßen auch nicht wirklich aufwändiger wäre da der Browser das Passwort speichern würde. Da mir aber Better WP Security ein paar Plugins erspart oder zusammen fast wie zum Beispiel ein Backup-Plugin, das Plugin Limit Login Attempts, die ganzen Systeminformationen im Dashboard zeigt nutze ich es lieber als viele einzelne Plugins für WordPress. Auch wirkt Better WP Security unterstützend z.B. bei der Spambekämpfung durch die Blacklistfunktionen so das ein paar Spamer schon außen vor bleiben und gar nicht erst tätig werden können. All das sind so Gründe warum ich das Plugin im Einsatz habe und ich muss sagen bisher habe ich mich damit noch nicht selbst ausgesperrt! Probleme hatte ich auch noch nicht und hoffe hiermit das es so bleibt.
Better WP Security ist sicher eine Alternative zur zusätzlichen .htaccess und dem damit verbundenen „zweiten Passwort“. Ich denke hier muss jeder Administrator nach dem für ihn besten Weg suchen und diesen letztlich gehen.
Wichtig ist unter dem Strich nur das Ergebnis ;-) . Danke für Deine Erwähnung.
Fast jedes PHP-Script ist anfällig, WordPress, bei dem Plugins direkte SQL-Statements ohne ORM abgesetzen können, natürlich ebenfalls. Damit muß man leben, wenn man einen WP-Blog betreibt, allerdings habe ich bisher noch nicht den Bedarf für ein Security-Plugin für den WP-Admin-Bereich gesehen.
Ich trenne meine Projekte streng nach „PHP-Fremdsoftware“ und „alles andere“, so läuft z.B. mein Blog auf einem seperaten VServer.
Die .htaccess-Idee für den Adminbereich finde ich allerdings gut – viel Sicherheit mit sehr wenig Aufwand. Weißt Du zufällig, ob die WP-App für Android das unterstützt? Oder würde der Schutz gar nicht greifen weil nur über XMLRPC gearbeitet wird?
Ich weis das mit dem APP für Android über die XMLRPC gearbeitet wird. Mit anderen Worten sollte mit dem Plugin der Blog noch erreichbar sein.
Nachdem sich das Problem mit dem BackUP im Plugin Better security nicht lösen lies. Habe ich nun erstmal auf WP-DB Backup für die Datenbank Sicherung und auf Limit Login Attemps, nicht berechtigten Login Versuche umgestellt.
Das Problem mit Better Security erfordert denke ich mehr Zeit.
Wenn wir mal wieder zusammen Zeit haben gehen wir mal das Problem an! Am besten wäre es wenn ich meinen eigenen PC mit hätte und wir mal die Verzeichnisse/Datein durchgehen zwecks Rechten usw.!