• Gelöst onlaie

    (@onlaie)


    Heute entdeckte ich einen unerwünschten Benutzer in einer eigentlich unzugänglichen, weil mehrfach abgesicherten Website.
    Die Fragen die mich beschäftigen sind:
    1. Wie kann das passieren, wenn die Site (WP, Plugins, Theme, PHP usw. aktuell) hinter einem Verzeichnis-Schutz steht und mittels Password Protected nochmal komplett gesperrt, für niemanden sichtbar ist?
    2. Was kann ein Benutzer mit Rang „Abonnent“ eigentlich tun? Nichts, oder?
    3. Wie könnte man herausfinden, wann sich dieser angemeldet hat?

    An der Site selbst scheint nichts verändert und lt. den beiden, im Hilfe-Beitrag https://wordpress.org/documentation/article/faq-my-site-was-hacked/ genannten Online-Scannern sei alles i.o.
    Der einzige Admin (ich) kann sich anmelden, der Status der anderen, berechtigten Benutzer hat sich nicht verändert.
    Hoster ist verständig, Antwort steht noch aus.

    Interessant ist vielleicht die Mail, mit der sich der unerwünschte Benutzer (mit dem Namen „wpra.source.author.site.1“) registrierte: wpra.source.author.site.1@example.com. Also mit einer (nicht existenten) Domainmail-Adresse, eben dieser, derselben Domain.
    Erwähne ich nur, falls das jemand schon mal hatte? (Meist sind die Spammer uä. Plagegeister mit recht exotischen Mailadressen unterwegs)

    Wie gesagt, ich kenne den hier oft genannten Beitrag bez. WP Hack.
    Wollte aber unabhängig davon dennoch die eingangs erwähnten Fragen stellen.
    Danke!

    PS: Kein Link, weil die betroffene Site könnte zum einen doch kompromittiert sein und zum anderen ist die ja eigentlich „geheim“, deren Existenz und Inhalt nur einem kleinen Personenkreis bekannt.

Ansicht von 7 Antworten – 1 bis 7 (von insgesamt 7)
  • Moderator threadi

    (@threadi)

    Ein Link zur Seite ist hierbei auch eher uninteressant. Viel interessanter wäre der Website-Bericht: https://de.wordpress.org/support/topic/bevor-du-ein-neues-thema-thread-erstellst/

    Da du den nicht geteilt hast, kann man schwer beurteilen was in dem Projekt los ist. Dennoch ein paar Anmerkungen:

    Wie genau ist der Verzeichnis-Schutz realisiert? Ist es eine AuthBasic-Passwort-Abfrage? Wieso nutzt du dann zusätzlich noch das Plugin „Password Protected“?

    Das Plugin „Password Protected“ schützt nur die sichtbaren Seiten vor dem Lesezugriff für Besucher, sie schützt keine anderen Einfallstore für Angreifer wie das Login, XMLRPC oder Sicherheitslücken in von dir genutzten Plugins. Somit stellt das auch keinen Schutz gegen Angreifer dar.

    Dass die E-Mail des Nutzers mit wpra anfängt lässt mich aufhorchen. Für mich klingt das wie ein Kürzel eines Plugins. Es gibt einige wenige Plugins die selbstständig Nutzer anlegen. Da uns hier kein Website-Bericht vorliegt, kann ich das nicht genauer beurteilen.

    Die Rolle Abonnent kann sprichwörtlich gar nichts im Projekt machen. Ich glaube sie kann sich nicht mal im Backend anmelden. Diese Rolle deutet für mich auch auf einen Zusammenhang mit einem von dir genutzten Plugin hin. Kontrolliere dennoch auch mal deine Kommentar-Einstellungen unter Einstellungen > Diskussion. Wenn dort eingestellt ist, dass man sich registrieren kann, könnte jemand auch darüber einen Nutzer anlegen der eben genau diese Rolle hat.

    Thread-Starter onlaie

    (@onlaie)

    Der Verzeichnisschutz wurde vom Hoster eingerichtet, weil mit (deren) NGINX Regeln und so. Aber ja, ist auth_basic .... Jener Schutz ist aber nur für den Adminbereich, nicht für die ganze Site. Daher auch „Password Protected“, weil die Site niemand sonst sehen soll.
    Klar: Das Plugin regelt nur die Sichtbarkeit, Zugänglichkeit für den öffentlichen Teil der Site, sonst nichts.
    (Erwähnte das Passwort-Plugin nur, weil ich es seltsam finde, dass sich jemand zu einer quasi unsichtbaren Site Zugang verschafft.)

    klingt das wie ein Kürzel eines Plugins

    In der Tat scheint das die Lösung!
    Das Plugin „WP RSS Aggregator“ könnte seit dessen Version 5 daran „Schuld“ sein. Scheinbar wurde dieser interne Systemuser ab der Version mit eingebaut. Der übernimmt quasi temporär die Inhalte, wenn die Quelle … ach ich weiß es nicht genauer.
    Aber das scheint es zu sein, danke für den Denkanstoß!
    Habe es mal deaktiviert, wenn nun 24 Stunden lang kein neuer „wpra.source.author.site.1“ mehr erscheint, dann wars das und ich kann hier als erledigt markieren.

    Daher ja: Sorry wegen Website Bericht, denn wenn das RSS Plugin da genannt ist, wäre es für erfahrene Helfer wie dich wahrscheinlich gleich aufgefallen.

    Moderator threadi

    (@threadi)

    Prima, wenn dir der Tipp schon helfen konnte. Allerdings schützt du, wenn ich es richtig sehe, deine Website nicht wirklich vor Angriffen, auch auf potentielle Sicherheitslücken in Plugins. Der Auth Basic Schutz für wp-admin ist nur ein Teil. Offen liegen die XMLRPC-Schnittstelle und das gesamte Plugin-Verzeichnis. Zu denen könnte ein Angreifer durchaus Anfragen schicken um Lücken auszunutzen.

    Wenn du kein Sicherheitsplugin hast, würde ich dir dringend dazu raten ein solches einzurichten. Es kümmert sich für dich um die Absicherung der noch offenen Punkte und du könntest beruhigter dich um deine eigentlichen Aufgaben am Projekt kümmern.

    Das nur als Hinweis 🙂

    Wenn deine Frage geklärt ist, kannst du das Topic gerade auf gelöst setzen.

    Thread-Starter onlaie

    (@onlaie)

    Es ist ja auch kein Hochsicherheitstrakt, sondern die Inhalte sind einfach nur für einen kleinen, bestimmten Personenkreis gedacht.

    Das XML Dingens ist raus; Pluginverzeichnis ist … hmmm, ja da weiß ich nicht, ob und wie man das schützen sollte. (Auch mit einem Verzeichnisschutz? Hat dann eh keine negativen Auswirkungen auf den Betrieb?)

    Sicherheitsplugin: Welches wäre zu empfehlen?

    Wie gesagt, bez. Erledigt Status warte ich bis morgen, wenn dann alles ruhig bleibt, dann ist echt das RSS Plugin die Ursache und damit erledigt.

    Moderator threadi

    (@threadi)

    Eine Auswahl von Sicherheitsplugin findest du hier: https://de.wordpress.org/plugins/tags/security/– empfehlen würde ich hier kein kongretes, da jeder das für ihn am besten passende finden muss. Sie sind technisch auch ziemlich ähnlich aus meiner Sicht, unterscheiden sich vor allem im Handling (der Oberfläche zur Konfiguration).

    Das Pluginverzeichnis sollte man mit so einem Sicherheitsplugin schützen, welches die Ausführung von PHP-Code dort verhindert. Die meisten der Plugins unter o.g. Link machen das von sich aus bereits. Dadurch wird verhindert, dass ein fehlerhaft programmiertes Plugin von extern aufgerufen werden kann ohne, dass WordPress dazwischen ist.

    Das XML Dingens ist raus

    Was heißt das genau? Ich würde dringend davon abraten die Datei xmlrpc.php zu löschen, da diese zum WordPress Core gehört und bei jedem Update wieder mit eingespielt wird. Sicherheitsplugin bieten die Möglichkeit dessen Funktionen abzuschalten, Alternativ kann man XMLRPC auch im Hosting verhindern muss hier aber aufpassen, dass man dabei nicht Funktionen von Plugins beeinträchtigt, die das tatsächlich noch nutzen (eher wenige, aber es gibt sie).

    Thread-Starter onlaie

    (@onlaie)

    Ok, schau ich mir an

    verhindert, dass ein fehlerhaft programmiertes Plugin von extern aufgerufen werden kann

    Verstehe

    XMLRPC wurde vom Hoster in der Serverkonfiguration deaktiviert.
    Glaube einfach so:

    location ^~ /xmlrpc.php {
        deny all;
    }

    Dies hatte seit ~ 8 Jahren keine negativen Auswirkungen

    • Diese Antwort wurde vor 7 Monaten, 2 Wochen von onlaie geändert.
    Moderator threadi

    (@threadi)

    Ja, ok, genau so kann man das seitens des Hostings sperren. Wenn es keine Auswirkungen hatte – gut so 🙂

Ansicht von 7 Antworten – 1 bis 7 (von insgesamt 7)

Das Thema „Unerwünschter Benutzer in gesperrter Website registriert“ ist für neue Antworten geschlossen.