
Die Datei xmlrpc.php gehört zu jeder WordPress-Installation, in ihr wird die sogenannten XML-RPC-Schnittstelle zu WordPress definiert. Sie ermöglicht es externen Anwendungen, mit WordPress zu kommunizieren – etwa um Beiträge zu veröffentlichen oder Inhalte zu verwalten.
Früher war das besonders für Blog-Editoren, die WordPress-App sowie Pingbacks und Trackbacks relevant.
Für viele Websites wird die Schnittstelle heute aber nicht mehr benötigt. Beiträge werden direkt im WordPress-Backend erstellt, und moderne Integrationen setzen überwiegend auf die modernere REST API von WordPress.
Warum deaktivieren?
Die Schnittstelle wird häufig automatisiert angesprochen, etwa für Brute-Force-Angriffe oder Pingback-Missbrauch. Das erzeugt unnötige Anfragen und Last auf der Website, nicht selten lassen sich gehackte WordPress-Seiten auch auf einen Angriff über die XML-RPC-Schnittstelle zurückführen.
Wer weder die WordPress-App noch externe Publishing-Tools nutzt, kann XML-RPC in der Regel abschalten. Weniger öffentlich erreichbare Funktionen bedeuten auch weniger unnötige Angriffsfläche.
XML-RPC mit Apache sperren
Am zuverlässigsten wird XML-RPC direkt über den Webserver blockiert. Bei Apache kann dafür folgende Regel in die .htaccess im WordPress-Hauptverzeichnis (unterhalb von „# END WordPress“) eingefügt werden:
<Files“xmlrpc.php“>
Require all denied
</Files>
Danach werden Aufrufe von xmlrpc.php mit einem Fehler wie 403 Forbidden abgewiesen. Die Anfrage erreicht WordPress und PHP gar nicht erst.
Vorher sollte kurz geprüft werden, ob die Website XML-RPC wirklich nicht benötigt. Falls die WordPress-App oder ein externes Redaktionssystem eingesetzt werden, könnten einzelne Funktionen nach der Sperrung nicht mehr arbeiten. Diese Fälle sind aber mittlerweile sehr selten.
Fazit
Für klassische WordPress-Websites ohne externe Anbindung ist XML-RPC meist überflüssig (und wenn eine solche existierte, läuft diese meistens über die REST-API). Eine Sperre über Apache reduziert unnötige Bot-Anfragen und ist eine einfache, sinnvolle Ergänzung zur Absicherung der WordPress-Installation.
(Beitrag im Original auf unaone.net erschienen)
