WordPress hat seit der Version 3.5 die XML-RPC-Schnittstelle standardmäßig aktiviert. Diese Schnittstelle stellt zwar nützliche Funktionen bereit, um Inhalte sinnvoll zu verwalten und beispielsweise über externen Zugriff über Smartphone-Apps Artikel verwalten und hochladen zu können. Leider ist es auch aus diesem Grund ein beliebtes Ziel für Hacker. Wer seine Artikel also direkt in WordPress verfasst, benötigt diese Schnittstelle nicht und kann guten Gewissens darauf verzichten und den Hackern somit einen Riegel vorschieben.
Doch wie schaltet man die XML-RPC-Schnittstelle sicher ab?
Vor WordPress 3.5 konnte die XML-RPC-Schnittstelle noch ganz einfach deaktiviert werden. Heute ist das leider nur über Umwege möglich und wir zeigen euch, wie dies geht. Es werden drei Schritte benötigt um es komplett sicher abzuschalten.
Öffne die functions.php Datei im WordPress Template Verzeichnis
/STARVERZEICHNIS/wp-content/themes/TEMPLATENAME/functions.php
Füge folgenden Code ein
/* Die XML-RPC-Schnittstelle komplett abschalten */
add_filter( 'xmlrpc_enabled', '__return_false' );
Dieser kleine Codeschnipsel deaktiviert die XML-RPC Schnittstelle, aber sie erscheint noch im HTTP-Header der Webseite.
Deswegen gilt es noch den HTTP-Header zu deaktivieren, was ebenfalls in der functions.php Datei erfolgt.
Ergänzt die Datei aus dem 1. Schritt noch um folgendes Code Schnipsel:
/* Den HTTP-Header vom XML-RPC-Eintrag bereinigen */
add_filter( 'wp_headers', 'AH_remove_x_pingback' );
function AH_remove_x_pingback( $headers )
{
unset( $headers['X-Pingback'] );
return $headers;
}
Anschließend natürlich speichern und wieder über FTP zurück auf den Server laden - fertig!
WordPress hat nach wie vor noch Zugriff auf die xmlrpc.php und bietet noch versteckten Zugriff auf die Datei. Da dies die Performance der Seite beeinflussen kann, solltet ihr die Datei noch über die .htaccess Datei blocken.
Bevor ihr diesen Schritt ausführt, bitte unbedingt ein Backup der .htaccess-Datei erstellen!
Ein kleiner Tippfehler der Datei kann das ganze System zerstören. Außerdem solltet ihr beachten, wenn ihr Mac OS X nutzt, gilt .htaccess als Systemdatei - deshalb auch der Punkt vor dem Namen. Dies führt dazu, dass die Datei nicht angezeigt wird wenn sie auf dem Desktop gespeichert wird. Diese Datei kann nur über das Dashboard-Widget oder das Terminal angezeigt werden.
Habt ihr die .htaccess nun gesichert und heruntergeladen solltet ihr folgenden Code in die Datei eintragen. Der Eintrag sollte oberhalb von #Begin stehen. Am besten bearbeitet ihr die Datei mit einem Editor wie TextEdit oder Notepad:
#Zugriff auf XML-RPC-Schnittstelle blocken
<Files xmlrpc.php>
Order Deny,Allow
Deny from all
</Files>
# BEGIN WordPress...
Durch diese drei kleinen Schritte - die wirklich schnell umgesetzt sind - könnt ihr euer WordPress wesentlich sicherer machen. Ein Angriff über die xmlrpc.php Datei ist nun nicht mehr möglich und auch Anfragen an diese Datei werden nicht mehr beantwortet. Als Nachteil sollte noch erwähnt werden, dass WordPress nun keine Pingbacks mehr empfangen kann und sich somit auch nicht mehr via SmartPhone verwalten lässt.
In unserem Blog berichten wir über Interessante Themen, neue Produkte und aktuelle Infos aus der Hosting und IT Welt. Falls Sie Fragen oder Anmerkungen zu einem unserer Blog Artikel haben, freuen wir uns über ein Feedback.