Support » Installation » xmlrpc.php

  • Gelöst Thobie

    (@thobie)


    Moin, Moin,

    eine eventuell nicht ganz in das Forum passende Frage, aber vielleicht hat jemand das gleiche Problem und eine Lösung parat.

    Meine WordPress App auf meinem iPad 8 funktioniert nicht korrekt. Veröffentlichte Beiträge werden im Ordner „Entwürfe“ gelistet, obwohl sie im Frontend schon veröffentlicht sind u.a.m.

    Automattic als Hersteller des Plugins JetPack und der WordPress App teilt mir mit, dies liege an der Schnittstelle XML-RPC, die benötigt werde.

    Leider lässt sich diese im Betreff genannte Datei auf meinem Foodblog nicht aufrufen, es erfolgt eine Fehlermeldung.

    Nun schieben sich Automattic und mein Hoster Strato den schwarzen Peter gegenseitig hin und her. Automattic will IP-Adressen gewhitelistet haben, Strato sagt, machen wir nicht aus Gründen der Sicherheit unserer Server, Auttomatic sagt dann, dann funktioniert aber die XML-RPC-Schnittstelle nicht usw. usw.

    Geprüft habe ich die xmlrpc.php auf Zugangsberechtigung. Sie ist korrekt und steht auf 644. Dennoch erfolgt beim Aufrufen der Datei https://www.nudelheissundhos.de/xmlrcp.php eine Fehlermeldung.

    Also irgendwo muss ein Fehler liegen.

    Beide Anbieter gehen nun langsam dazu über, ihren Support für das Problem einzustellen, „es liegt nicht an uns, da können wir nichts machen“, und ich kann die WordPress App auf dem iPad nicht korrekt betreiben.

    Hat hier jemand eine Lösung?

    Grüße aus Hamburg

    Thobie

    Die Seite, für die ich Hilfe brauche: [Anmelden, um den Link zu sehen]

Ansicht von 12 Antworten - 1 bis 12 (von insgesamt 12)
  • Hm. Ich kenne wenige Menschen, die tatsächlich die App verwenden. 🙂
    Die Bedienung des WordPress-Backend sollte auch ohne App auf dem iPad bestens funktionieren.

    Wie auch immer … Es gibt ja diverse Tricks, wie man das Anmeldeformular wp-login.php so erweitern kann, dass Passwort-Raten (auch „Brute-Force-Angriff“ genannt) erschwert wird: Du kannst zum Anmeldeformular CAPTCHA-Felder hinzufügen, IP-Adressen nach mehreren Login-Versuchen sperren, die Adresse des Anmeldeformulars umbenennen …
    Der Hacker-Anfänger lernt dann ganz schnell, dass es da ja noch eine andere Methode für die Anmeldung gibt, die für Apps bereitgestellt wird: XML-RPC.
    Desghalb wirst du, wenn du All-in-One-Sicherheits-Plugins installierst, auch gleich gefragt, ob du tatsächlich diese Schnittstelle nutzt oder ob sie blockiert werden soll, um die Anzahl der Angriffe etwas zu reduzieren. Die meisten Anwender klicken dann das Feld an, ohne überhaupt zu wissen, was XML-RPC ist und wunrdern sich dann, dass die App nicht mehr funktioniert. Also: solltest du ein All-in-One-Sicherheits-Plugin verwenden, geh noch mal die Einstellungen einzeln durch und deaktivieren wieder den Schutz für diese Datei.

    Da ich selber kein großer Fan dieses All-in-One-Sicherheitslösungen bin, trage ich selber eine Regel in der .htaccess ein, die einen Zugriff auf die Datei verbietet:

    <Files xmlrpc.php>
    order deny,allow
    deny from all
    </Files>

    Es ist auch gut möglich, dass du sowas (oder ähnlichen Code – ein Aufruf der Datei gibt auf deinem Server einen 404 – File not found zurück) unwissentlich übernommen hast – schau mal nach.

    Und dann besteht auch noch die Möglichkeit, dass du die Datei gelöscht oder mit anderen Benutzerrechten versehen hast. Das kannst du per FTP rasch überprüfen.

    Sorry, das hast du ja schon:

    Geprüft habe ich die xmlrpc.php auf Zugangsberechtigung. Sie ist korrekt und steht auf 644.

    Thread-Ersteller Thobie

    (@thobie)

    Moin, Moin, Bego,

    die Datei xmlrpc.php ist nicht gelöscht.

    Sie hat die Zugriffsrechte 644, das habe ich mit einem FTP-Programm geprüft.

    Ich benutze ein All-in-one-Sicherheits-Plugin, Wordfence Security. Und dieses hat in seinen Einstellungen tatsächlich diese Option:

    Disable XML-RPC authentication
    If disabled, XML-RPC requests that attempt authentication will be rejected.

    Die Checkbox dazu ist aber nicht aktiviert.

    Aber ich hatte Erfolg bei der htaccess-Datei auf dem Webspace des Foodblogs. Diese enthielt nämlich den folgenden Eintrag:

    # Schnittstelle abstellen
    <Files xmlrpc.php>
    Order Deny,Allow
    Deny from all
    </Files>

    Diesen habe ich gelöscht.

    Rufe ich nun die Datei xmlrpc.php meines Foodblogs auf, erhalte ich die folgende (bestätigende) Meldung:

    XML-RPC server accepts POST requests only.

    Danke für Deine Hilfestellung.

    Ich werde jetzt die WordPress App auf meinem iPad prüfen und schauen, ob die bisherigen Probleme dort noch bestehen.

    Noch eine Zusatzfrage: Wenn die Schnittstelle XML-RPC jetzt offen ist, habe ich dann vermehrt mit Hacker-Angriffen zu rechnen? Das Foodblog ist dreifach gesichert, htaccess für den Webspace, Benutzername/Passwort für das Backend und zusätzlich Google reCaptcha.

    Grüße aus Hamburg

    Thobie

    Noch eine Zusatzfrage: Wenn die Schnittstelle XML-RPC jetzt offen ist, habe ich dann vermehrt mit Hacker-Angriffen zu rechnen?

    Sagen wir mal so: es gibt eine weitere Tür, die aber ein Schloss hat. Das heißt, dass es mehr Angriffspunkte gibt, aber bei einem ausreichend starken Passwort sollte das eigentlich kein Problem sein. – Mir ist es trotzdem lieber, diese Tür mit Brettern zu vernageln und Angriffe ganz allgemein zu erschweren.

    Was mir bei deinen Sicherheitsmaßnahmen übrigens fehlt ist eine 2-Faktor-Authentifikation. Das CAPTCHA halte ich hingegen bei Einsatz eines .htpasswd für überflüssig. Aber das sieht wohl jeder ein bisschen anders …

    Thread-Ersteller Thobie

    (@thobie)

    Moin, Moin, Bego,

    okay, jetzt habe ich für mein Foodblog, das die umfangreichste und wichtigste WordPress-Installation ist, auch noch die 2-Faktor-Authentifikation versuchsweise einmal installiert und aktiviert.

    Jetzt ist das Foodblog vierfach verschlüsselt. 😄

    Grüße aus Hamburg

    Thobie

    Thread-Ersteller Thobie

    (@thobie)

    Moin, Moin, Bego,

    Zusatzfrage zur Zusatzfrage.

    Ich habe jetzt weitere Websites mit der 2-Faktor-Verschlüsselung abgesichert.

    Und auf meinem Smartphone, dem 2. Faktor, Google Authenticator installiert, der mir für die Sites den jeweiligen Zugangscode liefert.

    Meine Frage ist nun die folgende: Bei dem Einloggen in eine Site mit dem iPad oder auf dem Büro-Mac macht das ja noch Sinn. Ohne den Code vom Smartphone geht da nichts.

    Aber wenn mir jemand mein Smartphone klaut, sich auf dem Smartphone mit dem Browser in eine Site einloggt, dann hat er doch auf genau diesem Smartphone mit dem Google Authenticator genau den Zugangscode, den ja ein zweites Gerät als 2. Faktor liefern sollte?

    Grüße aus Hamburg

    Thobie

    Die App Google Authenticator ist nicht ideal, weil du bei einem Wechsel des Smartphones keine Möglichkeit hast, die „Geheimnisse“ (die Zifferkombinationen oder QR-Codes, die als Grundlage für die Berechnung des One Time Passwords) auf ein anderes Gerät zu übertragen. Du musst dann für jede Website ein neues Geheimnis generieren lassen, was etwas aufwendig ist. Auf Android nutze ich deshlab lieber die kostenlose App andOTP, auf iOS die App FreeOTP.

    Der Code, der von der App errechnet wird, ist ein zusätzlicher Schlüssel zur Authentifikation – deshalb wird das ja auch 2-Faktor-Authentifikation genannt. Nur mit der laufend neu errechneten Zahlenkombination alleine kannst du dich nicht anmelden. Wer dir aber dein Smartphone klaut, dich ohnmächtig haut, mit deinem Daumen das Smartphone, die Passwort-App und die OTP-App freischaltet, kann dann auch auf deine Website zugreifen. Wahrscheinlich hast du in dem Moment aber größere Probleme. 😉

    Nein, im Ernst: die Gefahr ist eher, dass dir bei der Passworteingabe jemand „über die Schulter schaut“, um das Passwort anschließend selber zu nutzen. Das kann dir passieren, wenn du bei einem Treffen jemand mal eben zeigen möchtest, wie du Dinge im Backend eingibst, im öffentlichen W-LAN eines Cafés eine unverschlüsselte Internet-Verbindung zum Anmeldeformular verwendest usw. Mit 2-Faktor-Authentifikation kann damit niemand etwas anfangen, der nicht den sich alle 20 Sekunden ändernden Zahlencode kennt. Das erhöht deine Sicherheit ganz wesentlich.

    Übrigens bietet das Plugin Two-Factor, das von einigen ausgezeichneten Programmierern entwickelt wurde und eigentlich längst Bestandteil des WordPress-Core sein sollte, auch noch andere Methoden zur 2-Faktor-Authentifikation. Du kannst dir z.B. eine E-Mail schicken lassen oder einen USB-Stick mit U2F-Chip verwenden und das Plugin erzeugt Backup-Codes, die du für den Notfall in den Tresor legst.

    WAHNSINNS THREAD! Gleich mal als Fave gespeichert.

    Zur XMLRCP.php:
    Ein sicheres Passwort ist da nicht unbedingt der Heilsbringer.
    Mit einem Request können bis zu ~2000 Passwörter ausgetestet werden!
    „At the moment, the maximum number of calls which can be encapsulated within the system.multicall() method without triggering a networking error is 1999 calls meaning that for each HTTP request sent 1999 different login attempts are performed.“
    https://github.com/aress31/xmlrpc-bruteforcer

    Diese Schnittstelle lässt sich also relativ einfach bruteforcen, ein Deaktivieren ist daher indiziert!

    Machs Wie @pixolin sagt: Verwende auch am Handy NICHT die App, sondern gleich das WP-Backend.
    Deine Privatsphäre dankts dir auch!

    Bevor nun noch weitere Zusatzfragen zur zweiten Zusatzfrage der Zusatzfrage kommen oder ich durch weiteres Lob eingeschüchtert werde, markiere ich den Thread rasch als „gelöst“ und freue mich, dass wir wiedermal helfen konnten.

    Alternativ kannst du auch nur die problematischen XML-RPC Methoden unterbinden, wie das erwähnte multicall.

    Zum Beispiel mit diesem Plugin:
    https://de.wordpress.org/plugins/stop-xml-rpc-attacks/

    Gruß, Torsten

    @thobie aus Interesse: Findest du die APP so gut? Was hält dich von der Nutzung ohne App ab?

    Thread-Ersteller Thobie

    (@thobie)

    Moin, Mon, Souri,

    ich habe die App auf meinem iPad 8 installiert.

    Es ist eben eine einfache Methode, Benachrichtigungen zu checken, Blogbeiträge zu schreiben und zu veröffentlichen und zu prüfen, welche veröffentlicht, welche entworfen und welche geplant sind.

    Alles weitere, was darüber hinausgeht, mache ich dann im Backend im Browser.

    Grüße aus Hamburg

    Thobie

    Ah, ok! Die Benachrichtigungen gehen out of the box, stimmt.
    Und der Rest ist Geschmack, ok.
    Danke für deine Einschätzung!

Ansicht von 12 Antworten - 1 bis 12 (von insgesamt 12)