Geschäftsführer, Webdesigner & Web-Entwickler, staatlich geprüfter Mediengestalter
Die WordPress REST API ist ein leistungsstarkes Feature, das die Kommunikation mit einer WordPress-Website über externe Anwendungen ermöglicht. Standardmäßig stellt sie jedoch auch sensible Endpunkte bereit, die unter Umständen nicht öffentlich zugänglich sein sollten. Einer dieser Endpunkte ist /wp-json/wp/v2/users, der eine Liste aller WordPress Benutzer zurückgibt – einschließlich ihrer Benutzernamen. Dies kann ein erhebliches Sicherheitsrisiko darstellen, da Angreifer durch eine einfache Abfrage Benutzernamen auslesen und für Brute-Force-Angriffe auf die Login-Seite verwenden können.
Inhaltsverzeichnis
Die Veröffentlichung von Benutzernamen über die REST API ist in vielen Fällen nicht erwünscht. Besonders in Kombination mit schwachen Passwörtern oder fehlenden Login-Schutzmaßnahmen kann dies eine potenzielle Angriffsfläche eröffnen. Dennoch ist es nicht ratsam, die gesamte REST API zu deaktivieren, da sie von wichtigen Funktionen innerhalb von WordPress genutzt wird:
Aus diesen Gründen sollte nur der /wp-json/wp/v2/users Endpunkt deaktiviert werden, während die REST API weiterhin aktiv bleibt.
Die folgende Code-Erweiterung entfernt den Zugriff auf den Nutzer-Endpunkt, ohne andere REST API-Funktionen einzuschränken. Dieser Code kann in die functions.php des Themes oder in ein eigenes Plugin eingefügt werden:
add_filter('rest_endpoints', function( $endpoints ) {
if ( isset( $endpoints['/wp/v2/users'] ) ) {
unset( $endpoints['/wp/v2/users'] );
}
if ( isset( $endpoints['/wp/v2/users/(?P<id>[\d]+)'] ) ) {
unset( $endpoints['/wp/v2/users/(?P<id>[\d]+)'] );
}
return $endpoints;
});
Das Deaktivieren des /wp-json/wp/v2/users Endpunkts ist eine einfache, aber effektive Maßnahme zur Verbesserung der WordPress-Sicherheit. Es verhindert, dass Benutzernamen öffentlich auslesbar sind, während die REST API für andere wichtige Funktionen erhalten bleibt. Wer WordPress sicherer machen möchte, sollte diesen Code ergänzen und zusätzlich weitere Schutzmaßnahmen wie eine Zwei-Faktor-Authentifizierung und ein Login-Schutz-Plugin in Betracht ziehen.
Sie benötigen eine WordPress Agentur? Wir stehen als Ihre Experten zur Verfügung. Treten Sie mit uns in Kontakt und vereinbaren Sie ein unverbindliches Beratungsgespräch.
In dieser Anleitung zeigen wir, wie man Inline-Scripte von der Optimierung durch WP Rocket ausschließen kann. Etwa wenn man Inline-Javascript von der Optimierung „Javacript...
mehr lesen
In diversen Support Foren häufigen sich gerade Beiträge zu Problemen mit dem WordPress Editor. Konkret wird bei HTML-Elementen automatisch die CSS-Klasse class="ai-optimize" eingefügt. Auch...
mehr lesen
WordPress bietet seit Version 2.9 eine praktische Papierkorb-Funktion, die das versehentliche Löschen von Inhalten verhindert. Gelöschte Beiträge, Seiten und Kommentare werden nicht sofort endgültig...
mehr lesen
Wer eine Website bei HostEurope betreibt, kennt das Problem: Die Fehler-Logs im KIS (Kunden-Interface) sind oft leer oder enthalten nur spärliche Informationen. Das macht...
mehr lesen
Was bedeutet RSS? RSS steht als Abkürzung für Really Simple Syndication und lässt sich ins Deutsche mit „echt einfache Verbreitung“…
Was ist ACF? Advanced Custom Fields (ACF) ist ein populäres WordPress-Plugin, mit dem sich zusätzliche Eingabefelder („Custom Fields“) zu Beiträgen,…
Was versteht man unter White Space? Im Grafikdesign / Webdesign versteht man unter „White Space“ einen ungenutzten, leeren und informationsfreien…