
Ninja Forms und WPC Product Bundles-Sicherheitslücken werden aktiv zur Übernahme von WordPress-Websites ausgenutzt
Eine Ninja Forms Sicherheitslücke und eine Schwachstelle in WPC Product Bundles for WooCommerce werden aktiv ausgenutzt, um WordPress-Websites zu kompromittieren. Sicherheitsforscher von Patchstack beobachten eine Angriffskampagne, bei der Stored Cross-Site Scripting genutzt wird, um über die aktive Sitzung eines WordPress-Administrators schädliche Plugins, Administrator-Konten und mehrere Backdoors zu installieren.
Die Angriffe richten sich gegen CVE-2026-94504 in Ninja Forms und CVE-2026-93836 in WPC Product Bundles for WooCommerce. Beide Schwachstellen wurden behoben. Websites, auf denen eine erfolgreiche Ausnutzung bereits stattgefunden haben könnte, müssen jedoch zusätzlich auf eine mögliche Kompromittierung untersucht werden.
Welche Ninja Forms Sicherheitslücke wird aktiv ausgenutzt?
Patchstack hat die aktive Ausnutzung von zwei WordPress-Plugin-Schwachstellen bestätigt:
- Ninja Forms – CVE-2026-94504: Versionen bis einschließlich 3.15.3 sind für diese Schwachstelle verwundbar; Version 3.15.4 enthält die Sicherheitskorrektur.
- WPC Product Bundles for WooCommerce – CVE-2026-93836: Versionen bis einschließlich 8.6.6 sind verwundbar; Version 8.6.7 enthält die Sicherheitskorrektur.
Beide Schwachstellen sind Stored-Cross-Site-Scripting-Sicherheitslücken mit einem CVSS-Score von 7,1.
Da für Ninja Forms inzwischen Version 3.15.5 verfügbar ist und diese eine weitere separate XSS-Schwachstelle behebt, empfiehlt Vservs, direkt auf Ninja Forms 3.15.5 oder neuer zu aktualisieren und nicht bei 3.15.4 zu bleiben.
Wie funktioniert der Angriff?
Der Angriff beginnt mit Daten, die ohne WordPress-Anmeldung an eine verwundbare Website übermittelt werden können.
Bei WPC Product Bundles wird der schädliche JavaScript-Code in WooCommerce-Bestelldaten gespeichert. Bei Ninja Forms kann die Payload über eine normale Formularübermittlung in der Datenbank abgelegt werden.
Der JavaScript-Code wird nicht unbedingt sofort ausgeführt. Stattdessen wartet der Angriff darauf, dass ein angemeldeter WordPress-Administrator die betroffene WooCommerce-Bestellung oder Ninja-Forms-Übermittlung öffnet.
In diesem Moment wird der gespeicherte JavaScript-Code innerhalb des Sicherheitskontexts der WordPress-Administrationsoberfläche ausgeführt.
Der Angriff missbraucht die bestehende Administrator-Sitzung
Die Malware muss weder das WordPress-Passwort des Administrators kennen noch dessen Session-Cookie direkt stehlen.
Da der schädliche JavaScript-Code innerhalb der eigenen WordPress-Domain ausgeführt wird, werden Requests an wp-admin automatisch mit der bereits authentifizierten Administrator-Sitzung ausgeführt.
Der Angriff kann diese Sitzung nutzen, um WordPress-Nonces abzurufen und legitime administrative WordPress-Funktionen aufzurufen.
Nach der Analyse von Patchstack kann die Angriffskette anschließend unter anderem:
- ein schädliches WordPress-Plugin installieren;
- ein sichtbares Administrator-Konto anlegen;
- ein zweites Administrator-Konto anlegen, das aus der normalen WordPress-Benutzerliste verborgen wird;
- einen geheimen Login-Mechanismus installieren;
- einen ungeschützten File Manager installieren;
- zusätzliche Persistence über Must-Use-Plugins einrichten.
Schädliches Plugin tarnt sich als WP Smart Thumbnails
Die beobachtete Kampagne installiert ein Plugin mit dem Namen WP Smart Thumbnails, Version 1.2.4, das angeblich von „MediaPress Labs“ entwickelt wurde.
Das Plugin wird unter folgendem Pfad installiert:
/wp-content/plugins/wp-smart-thumbnails/
Patchstack hat festgestellt, dass dieses Plugin keine legitime Thumbnail-Funktionalität enthält. Stattdessen dient es unter anderem als Malware-Dropper, Persistence-Installer und ungeschützter File Manager.
Verstecktes Administrator-Konto ist in wp-admin nicht sichtbar
Ein besonders relevantes Merkmal dieser Angriffskampagne ist die Möglichkeit, ein WordPress-Administrator-Konto anzulegen, das gezielt aus der normalen Benutzeroberfläche ausgeblendet wird.
Die Angreifer können dafür unter anderem Must-Use-Plugins unter folgenden Pfaden anlegen:
/wp-content/mu-plugins/class-wp-query-*.php
und:
/wp-content/mu-plugins/class-wp-token-validate.php
Diese schädliche PHP-Logik manipuliert WordPress-Benutzerabfragen so, dass ein vom Angreifer kontrolliertes Administrator-Konto nicht unter Benutzer → Alle Benutzer erscheint und auch nicht in den angezeigten Benutzerzahlen berücksichtigt wird.
Eine reine Kontrolle der Benutzerliste in wp-admin reicht daher nicht aus, um eine Kompromittierung auszuschließen.
Geheimer WordPress-Login ermöglicht dauerhaften Zugriff
Die Malware kann zusätzlich einen geheimen Authentifizierungsweg über folgende URL einrichten:
/wp-login.php?_wplogin=<token>
Damit kann ein Angreifer eine authentifizierte WordPress-Sitzung als bestehender Administrator erhalten, ohne den normalen Login-Prozess zu verwenden.
Die zugehörigen Tokens werden in der WordPress-Option gespeichert:
fz_emer_login_tokens
Ein Update oder die Deinstallation von Ninja Forms beziehungsweise WPC Product Bundles entfernt diese Persistence nach einer erfolgreichen Kompromittierung nicht automatisch.
Aktive Ausnutzung ist bestätigt
Bei dieser Kampagne handelt es sich nicht lediglich um theoretische Schwachstellen oder öffentlich verfügbaren Proof-of-Concept-Code.
Patchstack hat tatsächliche Exploitation beobachtet:
- 4. Oktober 2026: erste beobachtete Ausnutzung von CVE-2026-93836 in WPC Product Bundles;
- 5. Oktober 2026: dieselbe Angriffspayload wurde über CVE-2026-94504 in Ninja Forms ausgeliefert.
In beiden Fällen wurde schädliches JavaScript von derselben Angreifer-Infrastruktur unter imgcdn1.com geladen.
Patchstack beschreibt das bislang beobachtete Exploitationsvolumen als begrenzt. Die aktive Ausnutzung selbst ist jedoch eindeutig bestätigt.
Welche Versionen sollten installiert werden?
- Ninja Forms: für CVE-2026-94504 mindestens 3.15.4; aufgrund einer inzwischen zusätzlich behobenen XSS-Schwachstelle empfiehlt Vservs 3.15.5 oder neuer.
- WPC Product Bundles for WooCommerce: mindestens 8.6.7 beziehungsweise die aktuellste verfügbare stabile Version.
Installieren Sie grundsätzlich die aktuellste stabile Version, die vom jeweiligen Plugin-Entwickler angeboten wird.
Ein Update allein reicht nach erfolgreicher Ausnutzung nicht aus
Die Sicherheitsupdates verhindern eine erneute Ausnutzung über die jeweiligen Schwachstellen. Bereits installierte Backdoors, Administrator-Konten oder andere Persistence-Mechanismen werden dadurch jedoch nicht entfernt.
Websites, auf denen verwundbare Versionen aktiv waren und auf denen Administratoren während dieses Zeitraums WooCommerce-Bestellungen oder Ninja-Forms-Einträge geöffnet haben, sollten deshalb zusätzlich auf Indicators of Compromise überprüft werden.
Auf diese Indicators of Compromise prüfen
Kontrollieren Sie das WordPress-Dateisystem insbesondere auf folgende Dateien und Verzeichnisse:
/wp-content/plugins/wp-smart-thumbnails//wp-content/plugins/wp-smart-thumbnails/wp-smart-thumbnails.php/wp-content/plugins/wp-smart-thumbnails/emer-run.php/wp-content/mu-plugins/class-wp-token-validate.php/wp-content/mu-plugins/class-wp-query-*.php
Prüfen Sie außerdem die WordPress-Datenbank auf folgende Optionen:
fz_emer_done_v1fz_emer_login_tokens
Durchsuchen Sie Webserver- und Security-Logs nach Hinweisen auf:
imgcdn1.com/fz/x.js/fz/c.php_wploginin Requests anwp-login.php.
Administrator-Konten direkt in der Datenbank kontrollieren
Da die Malware Administrator-Konten aus wp-admin ausblenden kann, sollten bei einem konkreten Verdacht die tatsächlichen WordPress-Benutzer und deren Berechtigungen direkt auf Datenbankebene kontrolliert werden.
Vergleichen Sie die Konten mit Administratorrechten mit den Benutzern, die in der WordPress-Administrationsoberfläche angezeigt werden.
Unbekannte Konten mit allgemeinen Namen wie support, updater, maintenance oder backup sollten besonders untersucht werden. Ein ungewöhnliches @wordpress.org-E-Mail-Konto bei einem lokalen WordPress-Benutzer ist ebenfalls ein mögliches Warnsignal.
Nicht nur nach kürzlich geänderten Dateien suchen
Die bei dieser Kampagne beobachtete Malware manipuliert bewusst die Änderungszeiten der von ihr angelegten Dateien.
Der Installer sucht nach älteren Dateien innerhalb der WordPress-Installation und übernimmt deren Zeitstempel für neu angelegte schädliche Dateien.
Eine Malwarekontrolle, die ausschließlich nach Dateien sucht, die in den vergangenen Tagen geändert wurden, kann diese Persistence daher übersehen.
Was tun bei bestätigter Kompromittierung?
Wird einer der beschriebenen Indicators of Compromise gefunden, sollte die betroffene WordPress-Website als potenziell vollständig kompromittiert betrachtet werden.
Vservs empfiehlt dann mindestens:
- den Zugriff auf die betroffene Website bei Bedarf einzuschränken, um weitere schädliche Aktivitäten zu verhindern;
- Ninja Forms und/oder WPC Product Bundles auf eine sichere Version zu aktualisieren;
- nicht autorisierte Plugins und schädliche Must-Use-Plugins zu entfernen;
- alle Administrator-Konten sowohl über WordPress als auch direkt in der Datenbank zu überprüfen;
- schädliche WordPress-Optionen und Persistence-Mechanismen zu entfernen;
- WordPress Core, Plugins und Themes auf Integrität zu überprüfen;
- Administrator-Passwörter und andere privilegierte Zugangsdaten zu ändern;
- die WordPress Authentication Salts neu zu generieren;
- API-Keys und andere Secrets zu rotieren, wenn diese möglicherweise zugänglich waren;
- Webserver-, PHP-, Datenbank- und Security-Logs zu sichern und auszuwerten.
Kann der Umfang einer Kompromittierung nicht zuverlässig bestimmt werden, sollte eine Wiederherstellung aus einem nachweislich sauberen Zustand in Betracht gezogen werden.
Managed WordPress Hosting bei Vservs
Diese Angriffskampagne zeigt, warum das reine Installieren von Updates für geschäftskritische WordPress-Websites nicht ausreicht. Bei aktiv ausgenutzten Schwachstellen sind Monitoring, Logging, Malwarekontrolle und Incident Response ebenso wichtig.
Mit Vservs Managed WordPress übernehmen wir unter anderem WordPress-Core-, Plugin- und Theme-Updates, Security Hardening, Monitoring, Malwarekontrollen, Backups, SSL und das technische WordPress-Management.
Zusammenfassung
- Ninja Forms CVE: CVE-2026-94504
- Ninja Forms betroffen: bis einschließlich 3.15.3
- Ninja Forms Fix für CVE-2026-94504: 3.15.4
- Aktuell empfohlen für Ninja Forms: 3.15.5 oder neuer
- WPC Product Bundles CVE: CVE-2026-93836
- WPC Product Bundles betroffen: bis einschließlich 8.6.6
- WPC Product Bundles gepatcht: 8.6.7 oder neuer
- Schwachstellentyp: Stored Cross-Site Scripting
- CVSS: 7,1
- Authentifizierung für die initiale Injection: nicht erforderlich
- Ausführung: wenn ein angemeldeter Administrator die injizierten Daten aufruft
- Aktive Ausnutzung: bestätigt
- Mögliche Auswirkungen: Administrator-Konten, Backdoors, versteckte Persistence und File Manager
- Empfehlung: sofort aktualisieren und zuvor exponierte Websites auf eine mögliche Kompromittierung prüfen
Quellen
- Patchstack – Four ways back in: the WordPress XSS campaign that hides its own admin account
- Patchstack – CVE-2026-94504
- Patchstack – CVE-2026-93836
- Patchstack – aktuelle Ninja Forms Vulnerability Database

