JPKCom Disable XML-RPC — Anleitung & Tipps
XML-RPC in WordPress mit JPKCom Disable XML-RPC global abschalten — Installation, Voraussetzungen und Sicherheits-Tipps.
JPKCom Disable XML-RPC schaltet die XML-RPC-Schnittstelle von WordPress global ab. Sinnvoll, wenn du diese alte Remote-Schnittstelle nicht brauchst und ihre Angriffsfläche schließen möchtest.
Anleitung
Voraussetzungen
- WordPress 6.9 oder neuer (getestet bis WordPress 7.1)
- PHP 8.3 oder neuer
Installation
- Gehe im Admin-Bereich zu Plugins → Installieren und klicke auf Plugin hochladen.
- Wähle die ZIP-Datei des Plugins und klicke auf Jetzt installieren.
- Klicke auf Aktivieren.
Wie es wirkt
Es gibt keine Einstellungsseite — sobald das Plugin aktiv ist, deaktiviert es XML-RPC für die gesamte Installation:
- Anfragen an
xmlrpc.phpwerden mit HTTP 403 und einem XML-RPC-Fault beantwortet. Clients bekommen damit eine auswertbare Absage statt einer stummen, leeren Antwort. - Das Flag
xmlrpc_enabledist aus, die Methodenliste leer, und die Instanziierung der XML-RPC-Server-Klasse wird als letzte Absicherung blockiert. - Die Site bewirbt den Endpunkt nicht mehr: Weder der HTTP-Header
X-Pingbacknoch ein<link rel="pingback">-Tag werden noch ausgegeben.
Wichtig: Pingbacks laufen über XML-RPC und werden daher nicht mehr angenommen. Weil WordPress beide Mechanismen an derselben
pings_open()-Prüfung festmacht, werden auch Trackbacks abgewiesen.
Tipps & Tricks
- Angriffsfläche reduzieren: XML-RPC ist eine häufige Anlaufstelle für Brute-Force- und Pingback-Angriffe. Wenn du keine Dienste nutzt, die XML-RPC zwingend brauchen, kannst du die Schnittstelle bedenkenlos abschalten.
- Vorher prüfen, was XML-RPC nutzt: Manche externe Dienste oder ältere App-Anbindungen sprechen WordPress noch über XML-RPC an. Stelle sicher, dass du keine solche Integration im Einsatz hast, bevor du global abschaltest.
- Trackbacks mitgedacht: Wenn du Trackbacks bewusst weiter nutzen willst, ist dieses Plugin die falsche Wahl — sie fallen seit Version 1.0.9 zusammen mit den Pingbacks weg.
- 403 statt 200 seit 1.0.9: Bis Version 1.0.8 antwortete
xmlrpc.phpmit einem nackten HTTP 200 und leerem Body statt der dokumentierten 403. Wenn du das Abschalten per Monitoring oder Security-Scan prüfst, erwartet dein Test ab 1.0.9 also einen anderen Statuscode. - Reproduzierbare Updates: Ab Version 1.0.2 nutzt das Plugin sichere, selbst gehostete Updates über GitHub mit SHA256-Prüfsummen, arbeitet mit
declare(strict_types=1), typisiert die Callbacks und säubert den Zugriff auf$_SERVER.
Weiterführende Informationen
- Quellcode auf GitHub: https://github.com/JPKCom/jpkcom-disable-xmlrpc
- API-Dokumentation (PHPDoc): https://jpkcom.github.io/jpkcom-disable-xmlrpc/docs/
- Changelog dieses Projekts