Wofür benötige ich XML-RPC in WordPress?
Gar nicht!
Nun, so einfach ist das Ganze vielleicht doch nicht, aber in einer Vielzahl von Fällen wird es möglich sein XML-RPC zu deaktivieren, ohne große Funktionseinbußen zu haben.
Denn XML-RPC benötige ich dann wenn ich XML Daten über HTTP übertragen möchte. Ein Beispiel hierfür wäre das Erstellen von Beiträgen über das Smartphone, also über Apps. Und das ist meist auch schon der häufigste Grund der im Zusammenhang mit XML-RPC erwähnt wird. Also solange, ich keine externen XML Übertragungen auf meine Seite explizit zulassen will und eben auch den Smartphone Zugriff nicht benötige, kann ich umgehend eine Vielzahl von Sicherheitslücken schließen. Zudem bietet die WordPress REST API ohnehin die Möglichkeit auch extern mit meinem Server zu kommunizieren.
Nur in Ausnahmefällen benötige ich wirklich noch die XML Übertragung.
Sicherheitslücken
Die XML-RPC-API wurde immer schon offensiv als Angriffsziel verwendet.
XML-RPC bietet ein Risiko für Brute-Force Attacken, indem ich eine Vielzahl von Passwort/Benutzername Kombinationen in sehr kurzer Zeit testen kann.
Zudem wurde XML-RPC in Vergangenheit häufig für DDos Attacken genutzt, weil ich hier Pingbacks gezielt nutzen kann um den Server ans Ende der Kapazitäten zu bringen. Grund genug um dieses „Feature“ zu deaktivieren.
Deaktivierung über htaccess
Die beste und einfachste Methode ist die „Deaktivierung“ (besser gessagt der Zugriffsschutz) von xmlrpc.php über die htaccess Datei des Servers.
WordPress bietet keine native Möglichkeit um diese Datei zu deaktivieren. Dieses Code-Snippet kann für die eigene htaccess Datei verwendet werden um XML-RPC dauerhaft für alle zu deaktivieren
<Files xmlrpc.php>
</Files>
Mit diesem simplen Trick ist deine WordPress Seite direkt besser geschützt vor vielen automatisierten Attacken!