Forminator Forms Sicherheitshinweis
Wenn Sie eine E-Mail von mir erhalten haben, die Sie auf diese Seite verweist, liegt dies daran, dass Ihre Website anscheinend eine Version von Forminator Forms (das WordPress-Plugin von WPMU DEV, das sich in Ihren Dateien unter /wp-content/plugins/forminator/ befindet) ausführt, die in den betroffenen Bereich eines bekannten Sicherheitsproblems fällt. Diese Seite erklärt, worum es sich bei dem Problem handelt, wie Sie herausfinden können, ob es überhaupt auf Ihre Website zutrifft, wie Sie Ihre Version korrekt ablesen, ohne getäuscht zu werden, und wie Sie ein Update durchführen.
Bevor wir zu den Details kommen, ist dies die wichtigste Tatsache zu diesem Hinweis: Eine Version im betroffenen Bereich bedeutet für sich genommen nicht, dass Ihre Website anfällig ist. Das unten beschriebene Problem tritt nur auf Websites auf, deren Formulare ein Datei-Upload-Feld enthalten, und ich kann von außen nicht sehen, wie Ihre Formulare aufgebaut sind:
- Das Problem betrifft nur ein Forminator-Formular, das ein Datei-Upload-Feld enthält. Wenn keines Ihrer Formulare Besuchern das Hochladen von Dateien ermöglicht, betrifft Sie dies nicht, selbst wenn eine betroffene Version installiert ist.
- Beachten Sie, dass es auf das Vorhandensein eines Upload-Feldes ankommt, nicht auf dessen Konfiguration. Die Einschränkung eines Feldes auf bestimmte Dateitypen (z. B. Bilder oder PDFs) schließt dieses Problem nicht, da die Schwachstelle diese Einschränkung umgeht. Was Sie aus dem betroffenen Bereich herausnimmt, ist, dass Sie überhaupt kein Formular mit einem Datei-Upload-Feld haben.
Ich kann Ihre Plugin-Version aus einer öffentlich zugänglichen Datei ablesen, aber ich kann Ihre Formulare nicht einsehen. Daher ist dieser Hinweis eine vorsorgliche Warnung und kein bestätigter Befund bezüglich Ihrer Website.
Es handelt sich um CVE-2026-15748, eine nicht authentifizierte Datei-Upload-Schwachstelle in der Formularverarbeitung des Plugins. Betroffen sind die Versionen 1.18.1 bis 1.56.1, und das Problem wurde in 1.56.2 behoben, das am 30. Juli 2026 veröffentlicht wurde. Wenn Sie eine betroffene Version ausführen, aktualisieren Sie Forminator Forms auf Version 1.56.2 oder höher (die aktuelle Veröffentlichung zum Zeitpunkt der Erstellung dieser Seite befindet sich in der 1.57.x-Reihe).
Ein Wort zur Dringlichkeit, da es sich um einen bedingten Hinweis handelt. Wenn keines Ihrer Formulare ein Datei-Upload-Feld hat, ist das Update eine normale Plugin-Wartung. Wenn eines Ihrer Formulare ein solches Feld enthält, behandeln Sie das Update bitte als Priorität: In dieser Konfiguration könnte die Schwachstelle einem Besucher ohne jegliches Konto ermöglichen, eine Datei seiner Wahl auf Ihren Server zu speichern, die der Server möglicherweise ausführt, was zu einer vollständigen Kontrolle der Website führen kann.
Dies ist eine Plugin-Schwachstelle und keine Schwachstelle im WordPress-Kern. Ein vollständig auf dem neuesten Stand befindliches WordPress schützt Sie nicht, wenn das Forminator-Plugin selbst eine betroffene Version ausführt.
Ist diese Nachricht echt?
Ja. Dies ist ein Hinweis im guten Glauben im Rahmen der verantwortungsvollen Offenlegung eines unabhängigen Sicherheitsforschers. Ich bitte Sie nicht um Geld, Passwörter oder Zugriff auf Ihre Website, und ich habe nicht versucht, in sie einzubrechen, eines Ihrer Formulare zu senden oder Dateien hochzuladen.
Ich habe lediglich öffentlich sichtbare Dateien betrachtet, die Ihre Website jedem Besucher bereitstellt (auf die gleiche Weise wie Ihre Startseite öffentlich ist), und die Versionsnummer notiert, die das Plugin veröffentlicht. Ich habe bewusst kein Formular gesendet, keine Datei hochgeladen und mich nicht mit dem Upload-Handler des Plugins beschäftigt. Nichts an dieser Überprüfung berührt Ihre Daten, Ihren Admin-Bereich oder einen privaten Teil Ihrer Website (weitere Details unter Was ich getan und nicht getan habe unten).
Wenn Sie überprüfen möchten, wer ich bin, finden Sie die Kontaktdaten am Ende dieser Seite und auf der Seite Über.
Warum das wichtig ist
Mit Forminator können Sie Kontaktformulare, Quizze, Umfragen und Zahlungsformulare erstellen, und einige dieser Formulare können Besuchern ein Datei-Upload-Feld anbieten, damit sie ein Dokument oder ein Bild anhängen können. Um dies sicher zu halten, soll das Plugin kontrollieren, welche Dateien es akzeptiert und wo es sie speichert.
In betroffenen Versionen konnten diese Kontrollen umgangen werden. Eine speziell gestaltete Formularübermittlung könnte einen gefälschten Feldwert durch den Teil des Plugins schleusen, der einen Eintrag speichert, und von dort in die Routine zum Speichern von Dateien, deren Liste der verbotenen Dateitypen mit einer speziell gestalteten Anfrage umgangen werden konnte. Das Ergebnis ist, dass eine Datei, die das Plugin eigentlich abgelehnt hätte, in Ihr Upload-Verzeichnis geschrieben werden konnte. Wenn der Server diese Datei dann als etwas behandelt, das er ausführen kann, wird eine Datei eines Fremden auf Ihrer Website ausgeführt.
Daraus ergeben sich zwei Punkte, die in entgegengesetzte Richtungen weisen. Der erste ist, dass dies nur dort relevant ist, wo ein Formular tatsächlich ein Datei-Upload-Feld hat; eine Website, deren Formulare keine Uploads sammeln, ist über dieses Problem nicht erreichbar. Der zweite Punkt ist, dass dort, wo ein solches Feld tatsächlich vorhanden ist, kein Konto, kein Passwort und keine Mitwirkung von irgendjemandem erforderlich ist: Das Formular ist per Design öffentlich zugänglich. Und hier ist der Teil, der am ehesten falsch verstanden wird: Die Einschränkung dieses Feldes auf „nur Bilder” oder „nur PDFs” schützt Sie nicht, da die Schwachstelle die eigene Typüberprüfung des Feldes außer Kraft setzt. Die Frage ist einfach, ob ein Datei-Upload-Feld auf einem Ihrer Formulare existiert.
Ich beschreibe dies auf einem Niveau, das ein Website-Betreiber zum Handeln benötigt, und nicht weiter. Ich veröffentliche nicht die Details, die jemandem ermöglichen würden, dies nachzustellen, und ich bitte Sie, dies nicht gegen Ihre eigene Website oder die einer anderen Person zu versuchen. Das Überprüfen Ihrer Formulare und Ihrer Version, wie unten beschrieben, sagt Ihnen alles, was Sie wissen müssen, um zu entscheiden, was zu tun ist.
Wenn meine E-Mail dieses Problem zitiert, bedeutet dies, dass die Version, die Ihre Website meldet, in den betroffenen Bereich fällt. Ich habe nicht getestet, ob Ihre spezifische Website ausnutzbar ist, und ich kann nicht sehen, wie Ihre Formulare aufgebaut sind. Alles, was ich beobachtet habe, ist die Version.
Bin ich betroffen?
Zwei Fragen entscheiden dies, in dieser Reihenfolge.
Erstens: Hat ein Formular ein Datei-Upload-Feld?
Dies ist die entscheidende Frage, und nur Sie können sie beantworten. Das Überprüfen Ihrer eigenen Formulare ist völlig sicher und der eigentliche Zweck dieser Seite.
- Melden Sie sich in Ihrem WordPress-Dashboard an und öffnen Sie Forminator in der Seitenleiste, dann Formulare.
- Öffnen Sie jedes Formular und suchen Sie nach einem Upload-Feld (der Datei-Upload-Feldtyp von Forminator).
- Wenn keines Ihrer Formulare ein Upload-Feld hat, betrifft dieses Problem Ihre Website nicht, selbst bei einer betroffenen Version, obwohl ein Update als normale Wartung dennoch sinnvoll ist.
- Wenn irgendein Formular ein Upload-Feld hat, betrifft das Problem Sie, und Sie sollten zeitnah aktualisieren. Die Einschränkung des Feldes auf die Dateitypen, die Sie tatsächlich benötigen, ist eine gute Praxis, aber sie ist keine Behebung dieses Problems: Das Update ist die Behebung.
Bitte versuchen Sie nicht, das Problem gegen Ihre eigene Website oder die einer anderen Person nachzustellen; Sie müssen dies nicht tun, um die obige Frage zu beantworten.
Zweitens: Welche Version führen Sie aus?
Sie müssen mir nicht glauben. Für dieses Plugin gibt es ein paar Möglichkeiten zur Überprüfung, die Sie täuschen, daher ist es sinnvoll, diesen Teil sorgfältig zu lesen.
Aus dem WordPress-Adminbereich (maßgeblich):
- Gehen Sie in Ihrem WordPress-Dashboard zu Plugins und dann Installierte Plugins.
- Finden Sie Forminator Forms, den Eintrag, dessen Ordner
forminatorist, und notieren Sie die angezeigte Version unter seinem Namen.
Aus dem Seitenquelltext (kein Login erforderlich): Sehen Sie sich den Quelltext einer Seite auf Ihrer Website an, die ein Forminator-Formular anzeigt, und suchen Sie nach einem der Frontend-Assets des Plugins genau an diesen Pfaden:
/wp-content/plugins/forminator/build/front/front.multi.min.js?ver=...
/wp-content/plugins/forminator/assets/forminator-ui/js/forminator-form.min.js?ver=...
/wp-content/plugins/forminator/assets/forminator-ui/css/forminator-icons.min.css?ver=...
Die an diese Dateien unter dem Ordner forminator angehängte ?ver=-Nummer ist die eigene Version des Plugins. Für dieses Plugin entspricht sie der Veröffentlichung, weshalb ich sie als zuverlässige Angabe betrachte. Beachten Sie, dass die Assets nur auf einer Seite erscheinen, die tatsächlich ein Forminator-Formular rendert, also überprüfen Sie eine Seite, die eines enthält (eine leere Startseite ohne Formular zeigt oft nichts an).
Zwei Fallen, die Sie hier vermeiden sollten. Beide führen bei einer naiven Ablesung zu einer Versionsnummer, die nichts mit Forminator zu tun hat:
- Die gebündelte Telefonnummer-Bibliothek. Forminator liefert eine Kopie einer Drittanbieter-Bibliothek namens intlTelInput aus, die ihre eigene Versionsnummer
4.0.3trägt. Je nach Ihrer Version befindet sie sich entweder in der Dateiassets/css/intlTelInput.min.cssoderassets/js/library/intlTelInput.min.js, beide innerhalb des Forminator-Ordners. Wenn Sie eine?ver=4.0.3von einer dieser Dateien ablesen, ist dies die Version der Bibliothek, nicht die von Forminator. Forminator hatte noch nie eine 4.x-Veröffentlichung. Lesen Sie nur die oben aufgeführten Dateien und betrachten Sie jede Version, die nicht mit1.beginnt, als „nicht die Forminator-Version”. - Die pro Formular erstellte Stylesheet-Datei in Ihrem Upload-Ordner. Forminator schreibt für jedes veröffentlichte Formular ein kleines Stylesheet unter einem Pfad wie
/wp-content/uploads/forminator/<etwas>/style-<Nummer>.css?ver=<eine lange 10-stellige Zahl>. Diese lange Zahl ist ein Zeitstempel und keine Versionsnummer. Sie befindet sich unterwp-content/uploads/und nicht unter dem Plugin-Ordner, also ignorieren Sie sie vollständig.
Ein weiterer Hinweis, der spezifisch für dieses Plugin ist: Die Zeile „Stable tag” in der gebündelten readme.txt ist hier nicht zuverlässig, da sie der echten Veröffentlichung hinterherhinken kann (sowohl der Build 1.56.1 als auch der 1.56.2 melden 1.56.0), also wird diese Datei, im Gegensatz zu einigen anderen Plugins, nicht anzeigen, welche der beiden Versionen Sie haben. Der Admin-Bildschirm und die Asset-?ver=-Angabe oben sind die vertrauenswürdigen Angaben.
Wenden Sie dann diese Regel an, wobei Sie beachten müssen, dass Versionen numerisch und nicht alphabetisch verglichen werden:
- 1.18.1 bis 1.56.1: potenziell betroffen, abhängig von der oben genannten Frage zum Upload-Feld. Aktualisieren Sie jetzt.
- 1.56.2 oder neuer: in Bezug auf dieses Problem bereits behoben. Die Installation der neuesten verfügbaren Version (die 1.57.x-Reihe zum Zeitpunkt der Erstellung dieser Seite) ist der beste Schritt.
- Älter als 1.18.1: nicht von diesem Problem betroffen. Die oben beschriebene spezifische Schwachstelle wurde in 1.18.1 eingeführt. Eine so alte Veröffentlichung ist jedoch in allen anderen Bereichen weit hinterher, und ein Update ist aus allgemeinen Gründen sinnvoll.
Wenn Sie aus den oben genannten Überprüfungen keine lesbare Version erhalten können, ist dies nicht ungewöhnlich: Caching- oder Optimierungsplugins entfernen den ?ver=-Wert routinemäßig, und die Assets erscheinen nur dort, wo ein Formular gerendert wird. Der Admin-Bildschirm in der ersten Überprüfung hat immer die Antwort.
Wie Sie aktualisieren
Das Plugin ist kostenlos, wird weiterhin veröffentlicht und aktiv gewartet, sodass die Korrektur einem normalen Update entspricht. Der sicherste Weg ist die Aktualisierung direkt über WordPress selbst, und zwar nach vorheriger Sicherung:
- Sichern Sie Ihre Website (Dateien und Datenbank), bevor Sie Änderungen vornehmen. Die meisten Hosting-Anbieter bieten Ein-Klick-Sicherungen an, oder Sie verwenden ein WordPress-Sicherungsplugin.
- Gehen Sie im WordPress-Adminbereich zu Dashboard und dann zu Aktualisierungen oder zu Plugins und dann zu Installierte Plugins. Wenn ein Forminator-Update aufgelistet ist, installieren Sie es hier.
- Wenn Sie die Befehlszeile bevorzugen, erledigt WP-CLI dasselbe:
wp plugin update forminator(der Befehl verwendet den Ordnernamen). - Wenn kein Update angezeigt wird, können Sie die neueste Version direkt von der Plugin-Seite im WordPress.org-Verzeichnis herunterladen, Forminator Forms, und das Update über Plugins dann Plugin installieren dann Plugin hochladen durchführen.
- Bestätigen Sie nach dem Update die neue Versionsnummer (1.56.2 oder höher) mit den oben genannten Schritten und prüfen Sie, ob Ihre Formulare und alle Datei-Uploads darauf weiterhin normal funktionieren.
Während Sie dort sind, lohnt es sich zu bestätigen, dass WordPress-Kern und Ihre anderen Plugins auf dem neuesten Stand sind, da das gleiche Prinzip für alle gilt.
Nach dem Update
Das Update auf 1.56.2 oder höher schließt das Problem, und für die meisten Websites ist dies die gesamte Aufgabe. Diese Seite ist eine vorbeugende Mitteilung, kein Vorfallbericht: Ich habe keine Einsicht darin, ob auf Ihrer Website etwas passiert ist, und ich habe auch nicht danach gesucht.
Ein weiterer Schritt ist es wert, in Betracht gezogen zu werden, und er ist an dieselbe Upload-Feld-Frage geknüpft. Wenn Ihre Website während der Nutzung einer betroffenen Version ein Formular mit einem Datei-Upload-Feld hatte, dann war es zumindest theoretisch möglich, dass eine Datei auf Ihrem Server platziert wurde. Das Update schließt die Lücke, entfernt aber nicht, was möglicherweise bereits gespeichert wurde. In diesem Fall sind einige routinemäßige Vorsichtsmaßnahmen sinnvoll:
- Durchsuchen Sie Ihr Uploads-Verzeichnis (typischerweise unter
wp-content/uploads/, einschließlich deswp-content/uploads/forminator/-Baums) nach Dateien, die Sie nicht wiedererkennen, insbesondere solche, die nicht die Art von Dokumenten oder Bildern sind, die Ihre Formulare empfangen sollen. - Überprüfen Sie Ihre Administrator-Konten, letzten Anmeldungen und aktive Sitzungen auf alles, was Sie nicht nachvollziehen können.
- Setzen Sie die Passwörter Ihrer Administrator-Konten zurück. Das Erneuern der Sicherheitsschlüssel und Salts von WordPress in
wp-config.phpist ein sinnvoller Begleitschritt (neue Werte sind mit einem Klick über den offiziellen Schlüsselgenerator erreichbar, und das Austauschen dieser Werte meldet jeden Benutzer einmal ab).
Wenn Sie etwas finden, das Sie beunruhigt, ist es die richtige Reaktion, es wie jeden anderen vermuteten unbefugten Zugriff zu behandeln. Wenn keines Ihrer Formulare ein Datei-Upload-Feld hatte, reicht das Update allein aus.
Was ich getan und nicht getan habe
Um bezüglich der Überprüfung hinter meiner E-Mail vollständig transparent zu sein: Ich habe nur Dateien gelesen, die Ihre Website bereits jedem Besucher bereitstellt, spezifisch die öffentliche readme.txt des Plugins, Ihre Startseite und die Asset-Adressen, die in diese Seite geschrieben sind. Ich habe nicht auf Ihren WordPress-Adminbereich, Ihre Datenbank oder einen privaten Teil der Website zugegriffen.
Insbesondere habe ich nie eines Ihrer Formulare eingereicht, nie eine Datei hochgeladen und nie den Upload-Handler des Plugins berührt. Es wurde nichts eingereicht, getestet oder ausgenutzt. Das ist hier wichtiger als auf den meisten dieser Seiten, da das Hochladen einer Datei genau die Aktion ist, die dieses Problem betrifft. „Ich habe es nicht berührt” ist also der gesamte Unterschied zwischen einer Offenlegung und einem Eindringen.
Ich veröffentliche auch absichtlich nicht die Details, die jemandem helfen würden, dieses Problem auszunutzen. Die obige Beschreibung bleibt auf dem Niveau, das ein Website-Betreiber benötigt, und ich verlinke keinen Proof-of-Concept-Code.
Dies ist eine versionsbasierte Beobachtung: Ihre Website meldet eine Version im betroffenen Bereich. Es ist keine Aussage, dass Ihre Website zum Zeitpunkt meiner Prüfung ausnutzbar war. Da das Problem davon abhängt, ob eines Ihrer Formulare ein Datei-Upload-Feld hat, was ich nicht sehen kann, kann eine Website in diesem Bereich möglicherweise überhaupt nicht exponiert sein, und eine Website in diesem Bereich kann separat durch andere Mittel wie eine Web Application Firewall geschützt sein.
Ich habe keinen Webmaster / ich komme nicht weiter
Wenn Sie nicht die Person sind, die die Website wartet, leiten Sie diese Seite bitte an diejenige Person weiter, die dies tut (Ihr Webentwickler, Agentur oder Hosting-Anbieter). Sie werden die oben genannten Schritte schnell erkennen.
Wenn Sie die Website selbst warten und feststecken, helfe ich Ihnen gerne kostenlos in die richtige Richtung. Kontaktieren Sie mich über die unten stehenden Kontaktdaten.
Kontakt
Evan Harris, Sicherheitsforscher
- E-Mail: security@mail.mcpsec.dev
- X: @Evan__Harris
- GitHub: eharris128
- LinkedIn: Evan Harris
Ich kontaktiere Sie bezüglich solcher Probleme ausschließlich, um Betreibern bei der Sicherung ihrer Websites zu helfen. Wenn Sie nicht erneut kontaktiert werden möchten, teilen Sie mir dies einfach mit, und ich werde dies respektieren.
Quellen
Offizielle Meldungen und Nachverfolgung
Hersteller / Plugin