Super Forms : une faille d'écriture de fichier exploitée plus de 250 000 fois, la porte dérobée « Mushr00w » à chercher sur votre site
Publié le · 7 min de lecture· Par Benjamin Bueno

Sommaire
En bref : Super Forms, constructeur de formulaires par glisser-déposer installé sur environ 13 000 sites WordPress, est vulnérable jusqu'à la version 6.3.313 à une écriture de fichier arbitraire sans authentification (CVE-2026-14894, CVSS 9.8) : deux requêtes suffisent pour déposer un fichier PHP à l'emplacement de son choix, y compris par-dessus un fichier existant. Le correctif 6.3.314 date du 8 juillet 2026 ; les attaques ont commencé le 14 juillet et Wordfence en a bloqué plus de 250 000, avec un pic du 18 au 25 août. Mettez à jour, puis cherchez sur tout le site un fichier Mushr00w_upl.php, tout fichier PHP créé ou modifié depuis le 8 juillet, et l'action super_submit_form dans vos journaux.
Super Forms : une faille exploitée cinq jours après sa publication
Le 3 septembre 2026, Wordfence a publié ses données d'attaque sur CVE-2026-14894, une vulnérabilité de Super Forms – Drag & Drop Form Builder, extension estimée à 13 000 installations actives. Le chercheur andrea bocchetti l'a signalée via le programme de primes de Wordfence ; l'éditeur a publié la version corrigée 6.3.314 le 8 juillet, et la faille a été rendue publique le 9 juillet. Cinq jours plus tard, le 14 juillet, les premières tentatives d'exploitation étaient bloquées, le jour même de la diffusion de la règle de pare-feu aux abonnés payants. Les sites avec la version gratuite de Wordfence n'ont reçu cette règle que le 13 août, et la plus grosse vague d'attaques a eu lieu entre le 18 et le 25 août.
| Élément | Détail |
|---|---|
| Extension | Super Forms – Drag & Drop Form Builder, environ 13 000 installations |
| Référence | CVE-2026-14894, CVSS 9.8 (critique) |
| Versions vulnérables | 6.3.313 et antérieures |
| Version corrigée | 6.3.314 (8 juillet 2026) |
| Accès requis | Aucun : deux requêtes HTTP non authentifiées |
| Exploitation | Depuis le 14 juillet 2026 ; plus de 250 000 tentatives bloquées par Wordfence ; pic du 18 au 25 août |
| Règle de pare-feu Wordfence | 14 juillet (Premium, Care, Response), 13 août (gratuit) |
Le mécanisme : un fichier encodé en base64, écrit là où l'attaquant le décide
Les envois de formulaires, fichiers compris, sont traités par la fonction submit_form() de la classe SUPER_Ajax, accessible aux visiteurs non connectés. Quand un champ de type files contient une valeur datauristring, l'extension décode le contenu base64 et l'écrit sur le disque. Deux défauts se cumulent : aucune vérification du type ou de l'extension du fichier, et un nom de destination pris tel quel dans la valeur envoyée par le client, concaténé au chemin du dossier d'envoi. L'attaquant choisit donc l'extension, .php, et peut ajouter des séquences ../ pour écrire ailleurs que dans uploads, ou écraser un fichier existant.
Le seul obstacle, un nonce de session, est levé par une autre action AJAX ouverte aux anonymes, super_create_nonce, qui délivre un sf_nonce valide et un cookie de session à qui le demande. L'exploitation tient en deux requêtes : une pour obtenir le nonce, une pour envoyer le formulaire piégé vers super_submit_form. Le type de contenu déclaré dans la donnée (data:image/gif;base64,...) n'est jamais confronté au contenu réel, qui est du PHP.
Une faille qui peut écraser vos propres fichiers
Contrairement à la plupart des failles d'envoi de fichier, celle-ci autorise la traversée de répertoire. Un attaquant peut donc écrire n'importe où le serveur web a le droit d'écrire, et remplacer un fichier légitime, par exemple un fichier de thème ou de configuration, par sa propre version. La recherche de traces ne doit pas se limiter au dossier uploads : c'est tout le site qu'il faut passer en revue, en comparant avec une copie saine.
La porte dérobée « Mushr00w »
Dans les attaques observées, le fichier déposé s'appelle Mushr00w_upl.php. Wordfence le décrit comme un « uploader » compact, visiblement généré par une IA : une page sombre à texte vert, un formulaire d'envoi de fichier, et un bout de PHP qui copie sur le disque tout fichier soumis, en affichant un lien vers celui-ci. C'est une première étape, destinée à déposer ensuite d'autres portes dérobées, des fichiers de spam, des kits de phishing ou du code malveillant. La marque « Mushr00w » est celle d'un groupe qui a récemment défiguré le site du ministère de la Santé de Malaisie via une faille d'un éditeur de contenu Joomla (CVE-2026-48907) ; Wordfence précise que cela ne prouve pas l'implication du groupe, les signatures de ce type se copiant facilement.
Les dix adresses les plus actives sont dominées par deux sources, 103.168.147.235 (plus de 106 000 requêtes bloquées) et 103.168.146.131 (plus de 82 000), ce qui suggère une campagne concentrée plutôt qu'un balayage diffus.
Que vérifier sur votre site
Mettre à jour vers la 6.3.314 ou plus
wp plugin get super-forms --field=version
Super Forms n'est pas distribué sur le dépôt WordPress.org : la mise à jour arrive par le canal de l'éditeur, ce qui suppose une licence valide et, selon la configuration, une clé renseignée sur le site ou un téléchargement manuel depuis votre compte chez le vendeur. Une licence expirée est le cas le plus fréquent de site resté en version vulnérable sans que personne ne le remarque. Vérifiez aussi les modules complémentaires de l'éditeur après la mise à jour.
Chercher les fichiers déposés ou modifiés depuis le 8 juillet
La recherche doit couvrir tout le site, et pas seulement uploads, à cause de la traversée de répertoire. Trois passes complémentaires :
find . -name "Mushr00w*" -o -name "*_upl.php"
find . -name "*.php" -newermt "2026-07-08" -not -path "./wp-content/plugins/super-forms/*"
find wp-content/uploads -type f -name "*.php"
La deuxième commande liste aussi les fichiers légitimement modifiés par vos mises à jour depuis juillet ; comparez-les avec une archive propre de WordPress et de vos extensions, ou utilisez une surveillance d'intégrité des fichiers qui fait cette comparaison pour vous. Un fichier PHP dans uploads est anormal quel que soit son nom.
Lire les journaux d'accès
La requête d'attaque est un POST vers admin-ajax.php avec action=super_submit_form, précédé d'un POST avec action=super_create_nonce. Ces paramètres sont dans le corps de la requête et n'apparaissent pas dans un journal d'accès standard ; cherchez les adresses citées par Wordfence et les appels directs à un fichier PHP inattendu :
grep -E "103\.168\.147\.235|103\.168\.146\.131|103\.154\.152\.178|103\.170\.97\.7|182\.10\.130\.51|189\.4\.122\.140|129\.227\.46\.143|64\.176\.209\.104|103\.164\.182\.122|37\.9\.33\.62" /var/log/nginx/access.log*
grep -E "GET /[^ ]*_upl\.php|GET /wp-content/uploads/[^ ]*\.php" /var/log/nginx/access.log*
Un journal applicatif ou un pare-feu qui conserve les paramètres POST permet de chercher super_submit_form directement ; notre guide pour analyser les journaux d'un piratage WordPress décrit les deux approches. L'absence de trace ne garantit rien si les journaux ne couvrent pas la période depuis le 14 juillet.
Si un fichier a été déposé
Le site est compromis, et l'uploader a probablement servi à installer d'autres accès. Suivez notre guide complet de nettoyage d'un site WordPress piraté : sauvegarde de l'état, recherche des portes dérobées, comparaison des fichiers avec des sources propres, contrôle des comptes, rotation des mots de passe et des clés. Si vous préférez déléguer, notre équipe prend en charge la suppression du virus et le nettoyage avec un diagnostic gratuit sous 12 heures.
Formulaires avec champ de fichier : le point faible de 2026
Super Forms, Elementor Pro, WooCommerce Wholesale Lead Capture, Gravity Forms : les failles d'envoi de fichier exploitées cet été passent toutes par un formulaire public. Si un formulaire n'a pas besoin de recevoir de fichiers, retirez le champ. S'il en a besoin, limitez strictement les extensions acceptées côté serveur, et bloquez l'exécution de PHP dans le dossier de destination.
Réduire l'impact de la prochaine faille du même type
- Bloquer l'exécution PHP dans uploads, avec une règle serveur : la charge déposée dans ce dossier devient un fichier inerte. Voir bloquer l'exécution PHP dans uploads. La traversée de répertoire de cette faille permet d'écrire ailleurs, mais la majorité des attaques automatisées visent uploads par défaut.
- Restreindre les droits d'écriture du serveur web. Les fichiers de WordPress, des thèmes et des extensions n'ont pas besoin d'être inscriptibles par PHP en fonctionnement normal ; seul uploads, et le cache éventuel, doivent l'être. Des permissions serrées transforment une traversée de répertoire en échec d'écriture.
- Surveiller les fichiers : un nouveau fichier PHP, ou un fichier de thème modifié en dehors d'une mise à jour, doit remonter le jour même.
- Un pare-feu à règles et des mises à jour le jour même. Trente jours ont séparé la protection des abonnés payants de celle des utilisateurs gratuits, et la plus grosse vague d'attaques est tombée pendant ce délai. La protection contre les vulnérabilités d'envoi de fichiers repose d'abord sur la rapidité de mise à jour.
Sources
- Wordfence, « Attackers Actively Exploiting Critical Vulnerability in Super Forms Plugin », 3 septembre 2026, wordfence.com
- CVE Program, fiche CVE-2026-14894, cve.org
- The Hacker News, « Over 440,000 Exploit Attempts Target Super Forms and Elementor Pro RCE Flaws », septembre 2026, thehackernews.com
Votre site est touché ?
Nous intervenons sur les sites WordPress piratés, nettoyage et sécurisation compris. Décrivez votre situation, nous vous répondons.
À lire aussi

Failles WordPress septembre 2026 : 839 vulnérabilités en trois semaines, trois campagnes d'exploitation et onze correctifs dans le cœur
839 failles WordPress du 24 août au 13 septembre 2026, 49 critiques, trois exploitées en masse, WordPress 7.1.1, Brevo. Tableau et plan d'action.
· 11 min de lecture

All-in-One WP Migration et Gravity Forms : deux failles sans authentification corrigées en silence, 3,25 millions de sites en retard
CVE-2026-19949 (All-in-One WP Migration, 5 M de sites) et CVE-2026-19513 (Gravity Forms) corrigées le 20 août sans le dire. Versions, vecteurs, contrôles.
· 8 min de lecture

Elementor Pro : la faille d'envoi de fichier CVE-2026-32475 exploitée le jour de sa publication, 190 000 attaques bloquées
Elementor Pro jusqu'en 4.2.1 : un formulaire avec champ de fichier facultatif suffit à déposer un PHP (CVE-2026-32475). Correctif 4.2.2 et vérifications.
· 6 min de lecture

WooCommerce Wholesale Lead Capture : une faille corrigée en février, plus de 100 000 attaques depuis, une porte dérobée en une requête
CVE-2026-27540 dans WooCommerce Wholesale Lead Capture : envoi de fichier sans compte, 100 000 attaques bloquées. Correctif 2.0.3.2 et traces à chercher.
· 7 min de lecture