QuickTip: Autoren-Archive deaktivieren
Veröffentlicht am 15.04.2016, zuletzt aktualisiert am 08.10.2020
WordPress kann an sich als sicheres System bezeichnet werden. Eine Schwachstelle eines jeden Systems ist allerdings immer der reguläre Login in den Administrations-Bereich. Jede Seite ist nur so sicher, wie ihr schwächstes Passwort. WordPress ist hier insofern betroffen, als dass man mit einer einfachen URL die Namen von Autoren respektive Login-Namen herausfinden kann – also neben dem Passwort der zweite Teil, der für einen normalen Login nötig ist.
So legt die Adresse domain.com/?author=1
den Slug (die Kurzform) des Benutzers mit der ID 1 offen. Bei unüberlegt angelegten Installationen ist das dann auch der Standard-Administrator. Der Slug des Admins ist dann wiederum die erste Komponente für eine Brute Force Attacke auf wp-admin bzw. wp-login.
Autoren-Archive über die functions.php umleiten
Nutzt man also die Autoren-Archive nicht aktiv (wie z.B. ich hier auf der Seite, da es nur mich als Autor gibt), empfiehlt es sich, diese oft für Angriffe genutzte Methode lahmzulegen, in dem man die Autoren-Archive „stumm“ schaltet.
function cr_redirect_author_archives() {
if( is_author() ) {
wp_redirect( home_url( '404' ) );
}
}
add_action( 'template_redirect', 'cr_redirect_author_archives' );
Der Hook template_redirect (Codex-Artikel) wird durchlaufen, unmittelbar bevor WordPress ermittelt, welches Template für die angefragte Seite genutzt werden soll. Die Daten der aufgerufenen Seite sind hier jedoch schon vorhanden. Wir setzen hier also an, um mit den bekannten Daten (ist es ein Autoren-Archiv?) auf eine 404-Seite (oder eine beliebige URL) umzuleiten. In meinem Beispiel leitet es auf domain.com/404
um.
Man könnte den Code-Schnipsel natürlich auch einfach erweitern, um andere Templates (z.B. Schlagwort- oder Datums-Archive) gleichermaßen umzuleiten (einfache Abfrage über is_tag()
respektive is_date()
).
Es gibt natürlich auch andere Wege, die Autoren-Seiten zu deaktivieren, beispielsweise über htaccess oder Redirect-Plugins, die einen der beiden Wege nutzen. Wie immer führen viele Wege nach Rom.
Grundlegend auf Sicherheit achten
Eine solche Umleitung sollte allerdings nicht gesunden Menschenverstand und weitere Sicherheitsmaßnahmen ersetzen:
- Nennt euren Admin-Benutzer nicht
admin
oder analog des Domain-Namens - Ändert optimalerweise die ID des ersten Benutzers von 1 auf etwas beliebiges (drei- oder vierstellig)
- Nutzt starke Passwörter
Das Sicherheits-Thema kann natürlich noch viel intensiver geführt werden. Beginnen sollte man aber immer bei den einfachen, grundlegenden Dingen, die mit wenig Zeitaufwand schon einiges bewirken.
Kommentare (1)
Daniel
Hat funktioniert. Der Code-Schnipsel war genau was ich gerade brachte. Danke!