“Die Nutzlast liegt an mindestens acht Stellen gleichzeitig, verteilt über Dateien, die Datenbank und den Shared Memory, und jede dieser Stellen kann alle anderen wieder aufbauen”, sagte der Sicherheitsforscher Gabriel Barbosa. “Löscht man das Plugin, schreibt ein Drop-in es neu. Löscht man das Drop-in, schreibt das Theme es neu. Bereinigt man jede Datei auf der Festplatte, stellt der nächste Seitenaufruf den gesamten Satz aus der Datenbank oder aus einem Shared-Memory-Segment wieder her. Das Ergebnis ist ein zirkuläres System ohne einen einzelnen Punkt, den man entfernen könnte, um es zu stoppen.”
Lesbare Funktionsnamen enthält die Schadsoftware nach Angaben von Sucuri nicht; stattdessen entschlüsselt ein Decoder den Code über eine Substitutionschiffre. Die acht Komponenten im Überblick:
- .user.ini: setzt “auto_prepend_file”, damit vor jeder PHP-Anfrage im betreffenden Verzeichnisbaum ein Loader ausgeführt wird.
- wp-content/c1b12371.php: der Loader, der eine versteckte, mit einem Punkt beginnende Datei einbindet, sofern sie am selben Ort existiert.
- wp-content/.c1b12371.php: die versteckte Punktdatei, die als Loader der ersten Stufe ein gefälschtes Plugin aufspürt und es in mu-plugins aus drei Quellen wiederherstellt – einer vorhandenen Kopie im plugins-Ordner, einem kodierten Stub im Cache-Verzeichnis und einem ZIP-Wiederherstellungspaket mit zufälligem Hex-Namen.
- wp-content/db.php: wird beim Bootstrap geladen und trägt die komplette Backdoor-Nutzlast komprimiert und Base64-kodiert in sich. Sie dekodiert und verteilt das Plugin erneut, sobald es fehlt oder zu klein ist.
- wp-content/advanced-cache.php: wird von WordPress bei aktiviertem Caching vor den gewöhnlichen Plugins geladen und baut das Plugin aus fünf unabhängigen Quellen wieder auf – einem vorhandenen mu-plugin, einer vorhandenen Plugin-Kopie, einem System-V-Shared-Memory-Segment mit PHP-Code, einem ZIP-Paket und der Datenbank. Anschließend hängt sie sich an plugins_loaded und bindet das Plugin ein.
- wp-content/themes/khorshidi/functions.php: ein im Theme residenter Zwilling von db.php mit derselben Backdoor, der das Plugin jedes Mal neu schreibt, wenn es nicht vorhanden ist.
- wp-content/mu-plugins/hyper-engine-kit.php: die eigentliche Schadsoftware, die sowohl als Must-use-Plugin als auch als normales Plugin installiert wird.
- wp-content/plugins/hyper-engine-kit/hyper-engine-kit.php: eine Dublette derselben Backdoor-Nutzlast zur Redundanz.
Unabhängig davon, über welchen Weg die Backdoor gestartet wird, führt sie eine Reihe von Aktionen aus: Sie versteckt sich vor der Plugin-Übersicht im Administrationsbereich und vor Update-Prüfungen, kommuniziert über die Ethereum-Blockchain mit einem Command-and-Control-Server, erstellt einen Fingerabdruck der infizierten Seite und lädt weitere Nutzlasten nach, legt ein verstecktes Administratorkonto an und betreibt die Reinfektionsschleife.
Damit kann der Betreiber die Kontrolle über die WordPress-Seite übernehmen, beliebiges JavaScript nachladen und einschleusen, um Besucher mit Skimmern oder anderer Schadsoftware anzugreifen, PHP-Code ausführen sowie einzelne Plugins deaktivieren oder löschen.
“Auf Servern, die System-V-Shared-Memory unterstützen, wird die Nutzlast in ein Segment geschrieben, das über einen festen numerischen Schlüssel identifiziert wird”, so Sucuri. “Dieses Segment liegt im Arbeitsspeicher, es übersteht also sowohl das Löschen von Dateien als auch eine Bereinigung der Datenbank, und im Shared Hosting kann es sogar einem anderen Konto gehören.” Zusätzlich registriere die Infektion Cron-Hooks, darunter zufällig benannte neben einem bekannten Abruf-Hook. Der System-Cron rufe die WordPress-Cron-Datei auf – unabhängig vom Besucherverkehr – und stoße die erneute Auslieferung planmäßig an.
Wie die Schadsoftware ursprünglich auf die WordPress-Seite gelangte, ist bislang unbekannt. Zu den typischen Einstiegswegen zählen bekannte Sicherheitslücken in WordPress, Plugins und Themes, schwache Zugangsdaten, Angriffe auf die Software-Lieferkette populärer Plugins sowie der Missbrauch unsicherer Medien- oder Formular-Upload-Funktionen, um PHP-Webshells in Serververzeichnisse zu schieben.
“SC ist eine Erinnerung daran, dass eine moderne WordPress-Infektion ein System sein kann statt einer Datei”, erklärte Sucuri. Das Toolkit verteile identische Kopien einer Backdoor über Drop-ins, das Theme, ein gefälschtes Plugin an zwei Orten, die Datenbank und den Shared Memory, verstecke seinen Befehlskanal in legitimer Blockchain-Infrastruktur und schreibe sich bei der nächsten Anfrage aus jeder überlebenden Kopie neu.
Parallel dazu wird eine als hoch eingestufte, nicht authentifizierte SQL-Injection-Schwachstelle im WordPress-Plugin wpForo Forum aktiv ausgenutzt (CVE-2026-1581, CVSS-Wert 7.5). Betroffen sind alle Versionen bis einschließlich 2.4.14. Telemetriedaten von Previdian zufolge wurden seit dem 3. Juli 2026 weniger als 20 Ausnutzungsversuche beobachtet. Die Aktivität ging von fünf eindeutigen Angreifer-IP-Adressen aus Bulgarien, der Schweiz, Frankreich, den USA und dem Jemen aus.
