WordPress: So verhindert man, dass Nutzer-Informationen öffentlich abrufbar sind

Logo: WordPress («W»)

WordPress ist das beliebteste Content Management System (CMS) der Welt. Beim schweizerischen Hoster Cyon beispielsweise dominiert WordPress mit einem Anteil von 72 Prozent.

In der Folge ist WordPress ein beliebtes Angriffsziel. Für einen Angriff gegen eine Website, die mit WordPress betrieben wird, kann es helfen, die Namen der einzelnen Nutzer zu kennen.

Bei einer standardmässigen WordPress-Installation sind Nutzernamen und andere Informationen über die REST API öffentlich abrufbar:

https://example.com/wp-json/wp/v2/users (Dokumentation)

In der Praxis sehen die Nutzer-Informationen beispielsweise wie folgt aus:Screenshot: Liste mit Informationen über WordPress-Nutzer (REST API)

Empfehlung: Zugriff auf REST API auf eingeloggte Nutzer beschränken

Die REST API könnte deaktiviert werden. Allerdings besteht die Gefahr, dass die WordPress-Installation ohne REST API nicht mehr funktioniert.

Aus diesem Grund ist es sinnvoll, nicht die REST API zu deaktivieren, sondern den Zugriff auf die REST API auf eingeloggte oder bestimmte eingeloggte Nutzer zu beschränken.

Um den Zugriff auf eingeloggte Nutzer zu beschränken, kann man in der functions.php-Datei einen entsprechenden Filter setzen:

add_filter( 'rest_authentication_errors', function( $result ) {
if ( ! empty( $result ) ) {
return $result;
}
if ( ! is_user_logged_in() ) {
return new WP_Error( 'rest_not_logged_in', 'You are not currently logged in.', array( 'status' => 401 ) );
}
return $result;
});

Mit der current_user_can()-Funktion kann der Zugriff beispielsweise auch auf eingeloggte Administratoren beschränkt werden. Eine solche Beschränkung ist sinnvoll bei Websites, bei denen sich nicht nur Administratoren als Nutzer einloggen können, zum Beispiel bei einem WordPress-basierten Onlineshop.

Aus Sicht der WordPress-Entwickler ist allein die Abrufbarkeit der Nutzer-Informationen keine Sicherheitslücke.

Bis zur Veröffentlichung von WordPress 4.7.1 waren noch mehr Nutzer-Informationen öffentlich abrufbar.

Ein Kommentar

Schreiben Sie einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Felder mit * sind Pflichtfelder.