En bref
Depuis le 4 octobre 2026, des pirates exploitent deux failles XSS stockées dans Ninja Forms (CVE-2026-94504, plus de 500 000 sites, versions 3.15.3 et antérieures) et WPC Product Bundles for WooCommerce (CVE-2026-93836, plus de 30 000 sites, versions 8.6.6 et antérieures), notées 7,1 sur 10. Le script piégé s’exécute quand un administrateur consulte une soumission de formulaire ou une commande, puis crée des comptes administrateurs, dont un invisible. Mettez à jour vers Ninja Forms 3.15.4 et WPC Product Bundles 8.6.7 au minimum, puis vérifiez vos administrateurs.
La campagne a été repérée et décrite par les chercheurs de Patchstack le 6 octobre. Ce qui la rend sérieuse, c’est ce que les pirates laissent derrière eux : quatre portes d’entrée, dont certaines survivent à la mise à jour.
Si vous avez un doute sur l’état de votre site, notre équipe intervient pour le nettoyage de sites WordPress piratés, à distance et partout en France.
Que se passe-t-il exactement avec Ninja Forms ?
Des pirates déposent du code JavaScript malveillant dans des données que le site enregistre sans les neutraliser, puis attendent qu’un administrateur les affiche. C’est le principe d’une faille XSS stockée (pour « cross-site scripting ») : le code est stocké dans la base de données et s’exécute plus tard dans le navigateur de la personne qui consulte la page, avec ses droits.
Avec Ninja Forms, le code est glissé dans une soumission de formulaire ; avec WPC Product Bundles, dans une commande WooCommerce. Dès qu’un administrateur connecté l’ouvre, le script agit à sa place, sans même voler son mot de passe.
Les extensions et versions concernées
- Ninja Forms : versions 3.15.3 et antérieures, corrigé en 3.15.4 (publiée le 21 septembre 2026), plus de 500 000 installations actives, CVE-2026-94504.
- WPC Product Bundles for WooCommerce : versions 8.6.6 et antérieures, corrigé en 8.6.7, plus de 30 000 installations actives, CVE-2026-93836.
- Score CVSS (l’échelle standard de dangerosité d’une faille) de 7,1 sur 10 pour les deux, soit une gravité élevée.
Les deux failles ont été rendues publiques le 22 septembre, et les premières attaques ont été observées le 4 octobre contre WPC Product Bundles, puis le 5 octobre contre Ninja Forms : moins de deux semaines entre le correctif et l’exploitation réelle.
Pourquoi cette attaque est-elle si difficile à repérer ?
Parce qu’elle installe plusieurs accès indépendants, dont un administrateur que vous ne voyez pas dans votre liste d’utilisateurs. D’après l’analyse de Patchstack, reprise par BleepingComputer, le script installe une fausse extension, « WP Smart Thumbnails », puis met en place quatre accès :
- un compte administrateur visible, créé de façon tout à fait classique ;
- un second administrateur caché, absent de l’écran Utilisateurs et même du compteur de comptes ;
- une adresse de connexion secrète qui ouvre une session au nom du plus ancien administrateur du site ;
- un gestionnaire de fichiers accessible sans authentification, capable de déposer d’autres fichiers.
Le compte caché et l’adresse secrète reposent sur des extensions « must-use », c’est-à-dire des fichiers placés dans le dossier wp-content/mu-plugins que WordPress charge automatiquement et qui n’apparaissent pas dans la liste habituelle des extensions. Les fichiers sont en plus antidatés, si bien qu’une recherche par date de modification ne donne rien.
Nous n’aimons pas du tout
Mettre à jour Ninja Forms ou supprimer la fausse extension ne suffit pas : le correctif empêche une nouvelle infection, mais il ne retire ni l’administrateur caché ni l’adresse secrète. Un site « à jour » peut donc rester ouvert aux pirates.
Votre site est-il concerné ?
Votre site est exposé si Ninja Forms est en version 3.15.3 ou inférieure, ou si WPC Product Bundles est en version 8.6.6 ou inférieure, et il est potentiellement compromis si un administrateur a consulté des soumissions ou des commandes pendant que l’extension était vulnérable. Le numéro de version figure dans le menu Extensions, sous le nom de chaque extension.
Quelques signes doivent vous alerter :
- une extension « WP Smart Thumbnails » que vous n’avez jamais installée ;
- un administrateur au nom anodin, comme support, updater, maintenance ou backup, souvent avec une adresse e-mail en @wordpress.org, ce qui n’a rien de normal pour un compte local ;
- un nombre d’administrateurs affiché qui ne correspond pas à ce que vous connaissez ;
- des fichiers inconnus dans wp-content/mu-plugins, visibles par FTP ou chez votre hébergeur.
L’absence de ces signes dans le tableau de bord ne prouve rien, puisque l’administrateur caché est conçu pour ne pas y apparaître : seule une vérification dans la base de données le révèle. Un scanner de sécurité donne une première indication, sans remplacer ce contrôle.
Comment protéger et nettoyer votre site ?
Mettez d’abord à jour les deux extensions, avant d’ouvrir la moindre commande ou soumission, puis adaptez la suite à ce que vous trouvez.
1. Mettre à jour sans attendre
Passez Ninja Forms en 3.15.4 ou plus (la 3.15.5 est disponible) et WPC Product Bundles en 8.6.7 ou plus, après une sauvegarde complète. D’ici là, n’affichez pas les dernières soumissions et commandes.
2. Vérifier les administrateurs et les mu-plugins
Contrôlez les administrateurs, l’extension WP Smart Thumbnails et le dossier mu-plugins. Si vous n’avez pas accès à la base de données ni au serveur, passez la main plutôt que de supprimer des fichiers au hasard.
3. Nettoyer à fond si le site est touché
Patchstack recommande de considérer comme compromis tout site où le script a pu s’exécuter dans le navigateur d’un administrateur. Le nettoyage complet comprend :
- la suppression des comptes administrateurs illégitimes, de la fausse extension et des fichiers mu-plugins déposés ;
- la suppression des réglages ajoutés en base de données ;
- le changement de tous les mots de passe à privilèges et des clés de sécurité de WordPress (les « salts », qui chiffrent les sessions de connexion) ;
- le changement du mot de passe du plus ancien administrateur, puisque l’adresse secrète ouvre une session à son nom ;
Notre guide pour détecter les malwares sur un site WordPress détaille les vérifications de base, et notre article sur les failles WordPress les plus exploitées rappelle pourquoi les extensions restent la première porte d’entrée des pirates.
Nous aimons moins
Comme pour la faille du cœur corrigée par WordPress 7.1.2 (voir notre article dédié), un site mis à jour une fois par mois laisse une fenêtre bien trop large aux pirates.
En conclusion :
Une faille de gravité « élevée » fait autant de dégâts qu’une faille critique quand elle sert à installer des accès cachés. Mettez à jour dès aujourd’hui, puis vérifiez vos administrateurs avant de clore le sujet.
Compte suspect ou simple doute ? L’équipe DépannageWP s’en occupe : audit gratuit, puis nettoyage du site piraté et fermeture de la faille, satisfait ou remboursé. Comptez en général 3 à 6 heures, soit 210 à 420 € TTC au tarif normal (voir notre page tarification).