Skip to content
Idee im Kopf? Du brauchst jemanden, der mitdenkt.

Operation Kundenkartei: 742 Fake-Accounts in WooCommerce sichtbar gemacht

Eine alte WooCommerce-Installation, hunderte Kundenkonten und plötzlich E-Mail-Adressen mit SQL-Befehlen, Testmustern und kryptischen Zeichenfolgen: Was zunächst wie eine normale Export-Aufgabe aussah, entwickelte sich schnell zu einer kleinen forensischen Untersuchung. Unser Ziel war klar: echte Kunden schützen, verdächtige Accounts sichtbar machen und auf keinen Fall vorschnell löschen.

Eine alte WooCommerce-Installation, hunderte Kundenkonten und plötzlich E-Mail-Adressen mit SQL-Befehlen, Testmustern und kryptischen Zeichenfolgen
Format Labor-Beitrag vom 30.07.2026 von Rainer Wittmann
Bereich Labor / Laborprotokolle
Inhalt

Ausgangspunkt: eine gewachsene WooCommerce-Installation

Die Installation war seit vielen Jahren in Betrieb. Entsprechend lagen Kundendaten, Gastbestellungen, registrierte Benutzer und alte WooCommerce-Strukturen nebeneinander. Gesucht wurde zunächst lediglich eine Möglichkeit, alle bisherigen Kunden und Bestellungen sauber zu exportieren.

Dafür entstand ein temporäres Werkzeug, das sowohl mit der klassischen Speicherung über wp_posts als auch mit WooCommerce HPOS umgehen kann. Über die WooCommerce-Schnittstellen wurden registrierte Kunden, Gastbestellungen, Rechnungsdaten und Bestellhistorien zusammengeführt und als HTML- und XLSX-Datei ausgegeben.

Der unerwartete Fund

Bei der Prüfung der Benutzerkonten fiel auf, dass sich unter den echten Kunden eine große Zahl offensichtlich automatisiert erzeugter Accounts befand. Einige E-Mail-Adressen enthielten typische Testmuster aus automatisierten Angriffen, zum Beispiel SQL-Befehle wie SELECT, PG_SLEEP, WAITFOR DELAY oder DBMS_PIPE.

Solche Einträge entstehen häufig durch Bots oder Sicherheitsscanner, die Formulare und Registrierungsfunktionen systematisch auf Schwachstellen prüfen. In diesem Fall hatten die Tests nicht nur Fehlermeldungen produziert, sondern tatsächlich WordPress-Kundenkonten angelegt.

Warum „keine Bestellung“ nicht automatisch „Fake“ bedeutet

Die wichtigste Regel bei der Entwicklung lautete: Ein Benutzerkonto ohne Bestellung ist nicht automatisch ein Bot. Ein echter Interessent kann sich registriert haben, ohne anschließend zu bestellen. Ebenso kann ein Kunde früher als Gast bestellt haben oder sein Konto erst später angelegt haben.

Deshalb reicht eine einfache Abfrage nach bestellungslosen Benutzern nicht aus. Eine solche Liste würde zwangsläufig auch echte Personen enthalten.

Die Prüfkette

Das Werkzeug prüft deshalb mehrere Ebenen nacheinander. Ein Account wird nur dann als Kandidat angezeigt, wenn alle folgenden Bedingungen erfüllt sind:

Der Benutzer besitzt ausschließlich die Rollen customer oder subscriber. Accounts mit zusätzlichen Rollen, etwa Administrator, Redakteur, Shop-Manager oder individuellen Benutzerrollen, werden grundsätzlich ausgeschlossen.

Anschließend wird geprüft, ob eine Bestellung direkt über die WordPress-Benutzer-ID zugeordnet ist. Ist das der Fall, gilt der Account als echter Kunde und wird nicht angezeigt.

Zusätzlich wird die E-Mail-Adresse des Benutzerkontos mit allen Rechnungs-E-Mail-Adressen früherer Bestellungen abgeglichen. Dadurch werden auch Gastbestellungen erkannt, die nicht direkt mit dem später angelegten Kundenkonto verknüpft sind.

Zum Schluss wird geprüft, ob im Benutzerkonto Rechnungsdaten hinterlegt sind. Sobald Straße, Postleitzahl oder Ort vorhanden sind, wird der Account ebenfalls nicht als Fake-Kandidat gelistet.

Zusätzliche Verdachtsmerkmale

Die verbleibenden Accounts werden nicht automatisch gelöscht, sondern lediglich bewertet und sortiert. Zusätzliche Signale helfen bei der manuellen Beurteilung:

Dazu gehören eine eingetragene Profil-URL, eine ausgefüllte Biografie, eine bekannte Wegwerf-Mail-Domain, ein fehlender Name, fehlende Rechnungsdaten, auffällige Benutzernamen oder eine ungewöhnliche beziehungsweise offensichtlich manipulierte E-Mail-Domain.

Außerdem können die Kandidaten nach Registrierungsdatum sortiert und nach E-Mail-Endungen wie .de oder .com gefiltert werden. Dadurch werden Serien automatisierter Registrierungen schnell sichtbar.

Das Ergebnis

Nach Anwendung der Prüfkette blieben in der untersuchten Installation 742 auffällige Accounts übrig. Viele davon waren am selben Tag angelegt worden, trugen Benutzernamen nach dem Muster testing-1234 und enthielten SQL-Testbefehle direkt in der E-Mail-Adresse.

In solchen Fällen ist die Bewertung eindeutig. Gleichzeitig zeigt das Beispiel, warum eine mehrstufige Prüfung notwendig ist: Am Ende einer einfachen Liste bestellungsloser Benutzer befanden sich durchaus auch echte Kunden. Erst der zusätzliche Abgleich mit Gastbestellungen und Rechnungsdaten trennte die klaren Bot-Accounts von den schützenswerten Benutzerkonten.

Die Light-Version als kostenloses Plugin

Aus dem internen Werkzeug entstand eine bewusst abgespeckte Light-Version als WordPress-Plugin. Dieses Mini-Plugin dient ausschließlich zur Analyse. Es verändert keine Daten, löscht keine Benutzer und exportiert keine Kundendaten.

Nach der Installation erscheint im WooCommerce-Backend eine zusätzliche Prüfseite. Dort werden ausschließlich potenzielle Fake-Accounts angezeigt. Die Ergebnisse lassen sich nach E-Mail-Domain, Registrierungsdatum und Verdachtsmerkmalen filtern und sortieren.

Die Light-Version eignet sich damit als schneller Check für ältere oder stark frequentierte WooCommerce-Installationen. Sie zeigt, ob sich im Benutzerbestand auffällige Registrierungen angesammelt haben, ohne dabei ein Risiko für bestehende Kundenkonten darzustellen.

Die Vollversion für Profis

Für professionelle Bereinigungen existiert zusätzlich eine erweiterte Vollversion. Sie umfasst unter anderem den HTML-Export aller Kunden und Bestellungen, einen XLSX-Kundenexport, detaillierte Bestellinformationen sowie eine kontrollierte Löschfunktion mit mehreren serverseitigen Sicherheitsprüfungen.

Diese Vollversion ist bewusst nicht frei verfügbar. Sie richtet sich an Administratoren, Agenturen und WooCommerce-Profis, die genau wissen, welche Daten sie prüfen und welche Accounts sie entfernen möchten.

Vor jeder Bereinigung ist ein vollständiges DB-Backup zu empfehlen.

Fazit

Aus einer einfachen Export-Aufgabe wurde ein praktisches Diagnosewerkzeug für alte WooCommerce-Kundenbestände. Der entscheidende Punkt dabei war nicht das Löschen, sondern die sichere Eingrenzung: echte Kunden mussten zuverlässig aus der Kandidatenliste verschwinden, bevor überhaupt über eine Bereinigung nachgedacht werden konnte.

Das kostenlose Mini-Plugin übernimmt genau diesen ersten Schritt. Es zeigt, wo sich ein genauer Blick lohnt. Die eigentliche Bereinigung bleibt eine Aufgabe für erfahrene Administratoren und die professionelle Vollversion.

An den Anfang scrollen