Home » WordPress Security » WordPress XML-RPC-Schnittstelle deaktivieren

WordPress XML-RPC-Schnittstelle deaktivieren

XML-RPC Schnittstelle deactivieren und die alternative REST API nutzen

Wir legen großen Wert darauf, ausschließlich die neuesten Standards der Codierungspraktiken einzusetzen. Diese entsprechen mindestens dem Standard von Apache 2.4, der wesentliche Verbesserungen in Leistung und Sicherheit bietet.

Wie man XML-RPC ohne Plugin deaktiviertWie man XML-RPC deaktiviert und Sicherheitsrisiken minimiert

Die XML-RPC-Schnittstelle (Extensible Markup Language Remote Procedure Call) stellt ein Risiko für Brute-Force-Angriffe dar, bei denen Angreifer eine Vielzahl von Passwort-Benutzername-Kombinationen in kurzer Zeit testen können. Zudem kann sie für DDoS-Angriffe genutzt werden, um den Server an seine Kapazitätsgrenzen zu bringen.

Hintergrundinformationen zu XML-RPC und REST-API:

WordPress Version 3.5 und früher:
In diesen Versionen war die XML-RPC-Schnittstelle standardmäßig aktiviert. Diese Schnittstelle ermöglichte es, Inhalte über externe Anwendungen zu verwalten, aber sie war anfällig für Hackerangriffe. Viele Angriffe nutzten diese Schwachstelle aus.

WordPress Versionen nach 4.7:
Ab WordPress 4.7 wurde die REST-API (Representational State Transfer Application Programming Interface) eingeführt. Diese API bietet eine sicherere Möglichkeit zur externen Kommunikation und ist weniger anfällig für Angriffe als die XML-RPC-Schnittstelle. Die REST-API ermöglicht es Entwicklern, auf WordPress-Daten zuzugreifen und sie zu verwalten.

XML-RPC-Schnittstelle beibehalten:
Obwohl die REST-API sicherer ist, wird die XML-RPC-Schnittstelle aus Gründen der Abwärtskompatibilität weiterhin unterstützt. Einige ältere Plugins und Anwendungen können immer noch darauf angewiesen sein. Es ist jedoch ratsam, die REST-API zu verwenden, wann immer möglich.

Überprüfen der Aktivität der XML-RPC-Schnittstelle:
Zunächst sollten Sie überprüfen, ob die XML-RPC-Schnittstelle noch aktiv ist oder bereits deaktiviert wurde. Dies können Sie ganz einfach testen, indem Sie Ihre URL im Browser aufrufen: https://mein-domain.de/xmlrpc.php. Erscheint hier die Meldung, dass die Schnittstelle noch aktiv ist, sollten Sie die folgenden Schritte befolgen. Erhalten Sie hingegen eine Fehlermeldung wie ‚Forbidden‘ oder ‚Zugriff verboten‘, so ist die XML-RPC-Schnittstelle bereits deaktiviert und Ihre WordPress-Installation ist sicher.

TIPP: Wer seine Artikel direkt in WordPress verfasst, benötigt die XML-RPC-Schnittstelle in der Regel nicht und kann daher guten Gewissens darauf verzichten. Durch die folgenden Schritte können Sie Ihre WordPress-Installation wesentlich sicherer machen und Angriffe über die XML-RPC-Schnittstelle verhindern.

Anpassung des Codes zur Deaktivierung von XML-RPC:

    • Deaktivieren Sie xmlrpc.php: Die Datei xmlrpc.php wurde ursprünglich in WordPress implementiert, um die Kommunikation zwischen WordPress und anderen Systemen zu ermöglichen. Seit der Einführung der REST API ist XML-RPC oft nicht mehr notwendig. Daher besteht kein Grund mehr, xmlrpc.php aktiviert zu lassen.
    • HTTP-Header entfernen: Der Code in der .htaccess deaktiviert die XML-RPC Schnittstelle, aber sie erscheint noch im HTTP-Header der Webseite. Deswegen gilt es noch den HTTP-Header zu deaktivieren, was in der functions.php Datei erfolgt.
    • Registrierung des gesamten Methodenraums aufheben: Diese Technik bindet den xmlrpc_methods-Filter ein und hebt den Registrierungsmethodenraum zur Laufzeit auf. Jede nachfolgende Anfrage für diese Methode gibt ein XML-RPC-Fehlerobjekt zurück, das mitteilt, dass die angeforderte Methode nicht existiert.
    • XML-RPC über einen codebasierten Filter deaktivieren: Schließlich können Sie XML-RPC in WordPress manuell über einen benutzerdefinierten Filter deaktivieren.
    .htaccess

    # Deaktivieren xmlrpc
    <FilesMatch "^xmlrpc\.php$">
    Require all denied
    </FilesMatch>
    functions.php
    /* Den HTTP-Header vom XML-RPC-Eintrag entfernen */
    add_filter( 'wp_headers', 'remove_x_pingback' );
    function remove_x_pingback( $headers )
    {
    unset( $headers['X-Pingback'] );
    return $headers;
    }
    
    functions.php
    /* Die XML-RPC-Methode entfernen */
    function remove_xmlrpc_methods( $methods ) {
      return array();
    }
    add_filter( 'xmlrpc_methods', 'remove_xmlrpc_methods' );
    
    functions.php
    /* Die XML-RPC-Schnittstelle komplett abschalten */
    add_filter( 'xmlrpc_enabled', '__return_false' );
    

    Wir arbeiten mit allen gängigen Hosting-Providern und Betriebssystemen

    Hostinger
    Host Europe
    United Domains
    Deutsche Telekom
    Apache Webserver
    WordPress VIP for Enterprise
    IONOS
    STRATO
    Hetzner
    All-Incl
    Domain Factory

    Diskutieren Sie mit: Ihre Kommentare sind willkommen!

    Ihre Ideen, Anregungen, Hinweise und Kritik sind gefragt! Nehmen Sie am Expertenaustausch teil und teilen Sie Ihre Gedanken in den Kommentaren mit. Wir freuen uns auf Ihre Beiträge!

    1 Kommentar

    1. Richard Keller

      Ich habe dies auf einem Dutzend der von mir erstellten Websites verwendet und ausnahmslos positive Ergebnisse erzielt. Der Prozess der Sicherung meiner Websites durch die Deaktivierung von XML-RPC und hat auf allen WordPress-Versionen funktioniert, mit denen ich es in den letzten Jahren verwendet habe.

      Unbedingt zu empfehlen!

      Antworten

    Einen Kommentar abschicken

    Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

    GetSafe 360° Box

    360° Website SecurityRundum-Absicherung

    HTTP-Sicherheits-Header
    Inhaltsicherheitsrichtlinie (CSP)
    XSS-Absicherung
    Ausführung i.d.R. innerhalb von 24 Std.
    100% Geld-zurück-Garantie
    Keine monatlichen Kosten

    Wir schützen, was Ihnen wichtig ist.

    Schlüsselfertige Absicherung:

    Unsere Experten erledigen diese Aufgabe komplett für Sie.
    Statt 245,- € jetzt zum Vorzugspreis von nur 195,- €

    Jetzt Starten »