Für dieses Plugin gibt es keinen Support mehr von mir, die Version wurde komplett übernommen und wird von Site Security Monitor betreut. Bitte nutzt diese Version und meldet euch über die Plugin-Seite mit Fehlern, Wünschen und Hinweisen.
I don’t provide support anymore for this plugin. This version has been completely taken over and will be maintained by Site Security Monitor. Please use this version and send emails via the plugin page about errors, wishes and tips.
WordPress gibt dem Anwender Information in die Hand, wenn er/sie sich falsch versucht hat einzuloggen. Die Ausgabe der Informationen sind recht vielschichtig und stellen ein Sicherheitsrisiko dar, denn mit diesen Informationen kann ein potenzieller Eindringling seinen Algorithmus beeinflussen.
Im Bereich Usability ist das auch ein feiner Zug und viele „normale Anwender“ sind für diese Information sicher dankbar. Im Bereich eines Privatblogs oder mit Nutzern die mit der Umgebung vertraut sind sind diese Informationen nicht sonderlich relevant. Darum deaktiviere ich sie und mache so ein weiteres Hilfsmittel für potentielle Eindringlinge dicht. Das geht recht einfach, denn WordPress benutzt auch hier einen Filter-Hook und somit kann man diesen Filter recht einfach deaktivieren.
Je nach Kenntnisstand kann man das auf zwei verschiedene Varianten tun. Entweder der folgende Code kommt in die functions.php
des Themes oder man aktiviert einfach das nachstehend angebotene Plugin.
Das Plugin werde ich nach und nach mit weiteren Lösungen ausbauen, je nach Zeit und Kenntnisstand. Aktuell habe ich viele Lösungen auf unterschiedlichem Wege realisiert und will diese in diesem Plugin ablegen. Mit wenig Aufwand soll man so die gängigen Probleme lösen können. Ich werde aber sicher keinen Optionsbereich einbauen, denn zusätzliche Daten in der Datenbank für derartige Lösungen halte ich für überflüssig. Alles weitere dokumentiere ich dann hier im Beitrag und im Quellcode.
/**
* remove Error-information
*/
add_filter( 'login_errors', create_function( '$a', "return null;" ) );
Was macht das Plugin ?
- Error Informationen aus dem Login-Bereich entfernen
- WordPress Version aus allen Bereich, außer Backend, entfernen; auch im Feed (weitere Info’s)
- Versionsinformation für Nicht-Admins auch im Backend nicht ersichtlich.
- erstellt eine virtuelle index.html im Plugin-Verzeichnis und eventuell das Listen des Inhaltes zu verhindern.
- Entfernt Link für Windows Live Writer
- Entfernt Link zum Really Simple Discovery Service
- Entfernt die Update-Info zur WordPress Version für Nicht-Admins
- Entfernt die Update-Info zu Plugin Updates für Nicht-Admins
- Ergänzt um den String um den WP Scanner zu nutzen
- WordPress gegen bösartige URL-Anforderungen schützen
Anforderungen
Secure WordPress arbeitet ab WP 2.6 und wurde getestet bis Version 2.9-rare.
Installation
- Die gepackte Datei downloaden und lokal entpacken
- Die Datei in dein Plugin-Verzeichnis kopieren (/wp-content/plugins/)
- Aktivieren des Plugins im Adminbereich deines WP
Download:
Der Download ist auf der zugehörigen Plugin-Seite zu finden; dort steht die jeweils letzte Version zur Verfügung.
Historie
- 0.1 – Idee und Umsetzung
- 0.2 – Hinzugekommen: Entfernt WP-Version in allen Bereichen, außer Admin; fügt die
index.html
zum Plugin-Verzeichnis hinzu (damit kann das Plugin Replace WP-Version entfallen) - 0.3 – WP 2.7 ready, alle Funktionen optional, Optionsbereich, ital. Sprachfile, etc.
- 0.3.1/2 – fix für WP <2.7; neue Funktion RSD und WLW
- 0.3.3 – Bugfix für WLW
- 0.3.4 – Erweiterung um zwei neue Option, Code verfeinert, mehr Möglichkeiten aus dem Core genutzt; optimiert für >=2.7; CSS ergänzt um auch das Markup der Error-Meldung zu entfernen
- 0.3.5 – Korrigieren Rechtschreibung in der dt. Sprachdatei; eine Abfrage hinzugefügt, die sicher stellt, dass diverse Hooks nur genutzt werden, wenn die Seite auch aktiv ist
- 0.3.6 – Erweiterung um WP Scanner, Bugfix für Mehrsprachigkeit (08/05/2009)
- 0.3.7 – Erweiterung für WP 2.8; Meta Links der Plugin-Seite (10/06/2009)
- 0.3.8 – add function to remove theme-update information for non-admins, rescan language file; edit de_DE (22/06/2009)
- Bitte nutzt das Changelog zum Plugin, welches aktuell immer gepflegt wird.
Guter Tipp. Ich hatte bisher den <div> in der „wp-login.php“ ausgeblendet, weil es mir auch nicht gefallen hat, dass ein potentieller Angreifer auf diese Weise Informationen enthält. Aber so geht’s auch. Ich habe nur kein Plugin genommen, sondern die Zeile direkt ans Ende der „/wp-includes/default-filters.php“ geschrieben. 😉