Si vous avez reçu un e-mail de ma part vous renvoyant à cette page, c’est parce que votre site web semble utiliser une version vulnérable de Funnel Builder by FunnelKit (l’extension WordPress funnel-builder, également répertoriée sous le nom Funnel Builder for WooCommerce Checkout). Cette page explique pourquoi cela compte et comment y remédier.

Cet avis concerne CVE-2026-47100, une faille critique (CVSS 8.7), activement exploitée, qui permet à un attaquant d’injecter son propre code JavaScript dans vos pages de paiement sans se connecter. Elle affecte toutes les versions antérieures à 3.15.0.3 et est corrigée dans 3.15.0.3. Si vous utilisez une version concernée, mettez à jour Funnel Builder vers 3.15.0.3 ou une version ultérieure dès que possible. Comme cette faille est exploitée pour dérober les données des cartes de paiement, vous devriez également inspecter votre page de paiement à la recherche de code injecté (voir Si vous utilisiez une version concernée ci-dessous).

Il s’agit d’une faille d’une extension, et non du noyau de WordPress. Un WordPress et un WooCommerce parfaitement à jour ne vous protègent pas si l’extension Funnel Builder elle-même est obsolète.

Ce message est-il légitime ?

Oui. Il s’agit d’un avis de bonne foi, selon le principe de la divulgation responsable, émanant d’un chercheur en sécurité indépendant. Je ne vous demande pas d’argent, de mots de passe ni d’accès à votre site, et je n’ai pas tenté de m’y introduire, de téléverser quoi que ce soit ni d’exploiter quoi que ce soit.

Je n’ai fait que consulter des fichiers publiquement visibles que votre site web fournit à chaque visiteur (de la même manière que votre page d’accueil est publique) et noter le numéro de version que l’extension Funnel Builder publie dans ces fichiers : son fichier readme.txt public et le numéro de version que WordPress appose sur les ressources front-end de l’extension. Je n’ai spécifiquement pas touché à la fonctionnalité de paiement vulnérable, et rien dans cette vérification ne touche à vos données, à votre zone d’administration ni à aucune partie privée de votre site.

Si vous souhaitez vérifier qui je suis, consultez les coordonnées au bas de cette page et la page À propos.

Pourquoi cela compte

Funnel Builder by FunnelKit est une extension de tunnel de vente et de paiement très largement utilisée pour les boutiques WooCommerce. Dans les versions concernées, un point d’accès public de la page de paiement peut être atteint sans connexion et sans aucun jeton de sécurité, et il peut être utilisé pour écrire le paramètre global « External Scripts » de l’extension : le paramètre qui injecte des scripts dans chaque page de paiement. Cette combinaison permet à un attaquant distant de placer son propre code JavaScript sur votre page de paiement, là où vos clients saisissent leur nom, leur adresse et les données de leur carte de paiement.

Il s’agit du schéma classique du web-skimming / Magecart : le script injecté copie discrètement ce que saisissent les acheteurs et l’envoie à l’attaquant, tandis que votre page de paiement continue de fonctionner normalement, de sorte que rien ne semble anormal. La société de sécurité Sansec signale que cette faille est activement exploitée dans la nature, le code de vol étant souvent déguisé en Google Tag Manager ou en extrait d’analytique afin de se fondre dans le décor.

La faille a reçu un score de 8,7 sur 10 (sévérité élevée). Si mon e-mail a cité ce problème, cela signifie que la version signalée par votre site entre dans la plage concernée. Je n’ai pas testé si votre site en particulier est exploitable ou déjà compromis, seulement qu’il signale une version concernée.

La bonne nouvelle : la mise à jour vers une version corrigée comble la faille, et la mise à jour est simple.

Comment vérifier votre version

Vous n’êtes pas obligé de me croire sur parole quant à la version que vous utilisez.

Depuis le manifeste public (aucune connexion nécessaire) : ouvrez votredomaine.com/wp-content/plugins/funnel-builder/readme.txt dans un navigateur. La ligne Stable tag: située près du haut est la version signalée par votre installation de Funnel Builder, et il s’agit du même fichier public que celui que j’ai lu.

Depuis la zone d’administration WordPress (si vous y avez accès) :

  1. Connectez-vous à votre tableau de bord WordPress (généralement à l’adresse votredomaine.com/wp-admin).
  2. Allez dans Extensions puis Extensions installées.
  3. Recherchez Funnel Builder (il peut apparaître sous le nom Funnel Builder for WooCommerce ou FunnelKit) et notez la version affichée sous son nom.

Si la version est antérieure à 3.15.0.3, vous utilisez une version concernée et vous devriez mettre à jour. Les versions 3.15.0.3 et ultérieures sont corrigées.

Comment mettre à jour

La voie la plus sûre consiste à effectuer la mise à jour via WordPress lui-même, et à réaliser une sauvegarde au préalable :

  1. Sauvegardez votre site (fichiers et base de données) avant d’apporter des modifications. La plupart des hébergeurs proposent des sauvegardes en un clic, ou utilisez une extension de sauvegarde WordPress.
  2. Dans l’administration WordPress, allez dans Tableau de bord puis Mises à jour, ou Extensions puis Extensions installées. Si une mise à jour de Funnel Builder est répertoriée, installez-la à partir d’ici.
  3. Si aucune mise à jour n’apparaît, vous pouvez obtenir la dernière version directement depuis la page de l’extension sur l’annuaire WordPress.org, Funnel Builder by FunnelKit, et mettre à jour via Extensions puis Ajouter une extension puis Téléverser une extension.
  4. Après la mise à jour, confirmez le nouveau numéro de version (3.15.0.3 ou ultérieure) en suivant les étapes ci-dessus, et vérifiez que votre page de paiement se charge et finalise normalement une commande de test.

Tant que vous y êtes, il vaut la peine de confirmer que le noyau de WordPress, WooCommerce et vos autres extensions sont à jour, car le même principe s’applique à tous.

Si vous utilisiez une version concernée

Comme cette faille est exploitée pour implanter des scripts de vol de données de paiement, une boutique qui a utilisé une version concernée ne devrait pas présumer qu’une simple mise à jour suffit. La mise à jour supprime la vulnérabilité, mais elle ne supprime pas un éventuel script qu’un attaquant aurait déjà pu injecter. Vous (ou votre webmaster) devriez vérifier cela sur votre propre site :

  • Examinez le paramètre « External Scripts » de l’extension. Dans les paramètres de FunnelKit / Funnel Builder, examinez toutes les entrées globales d’en-tête/pied de page ou « External Scripts » qui s’appliquent à votre page de paiement, et supprimez tout ce que vous n’avez pas ajouté vous-même : en particulier un script qui prétend être Google Tag Manager, un outil d’analytique ou un pixel, mais que vous n’avez pas configuré.
  • Consultez le code source d’une page de paiement. Chargez votre propre page de paiement dans un navigateur, affichez le code source de la page et recherchez tout <script> externe que vous ne reconnaissez pas, en particulier ceux qui se chargent depuis un domaine inconnu. Les voleurs de données sont conçus pour ressembler à des outils d’analytique ordinaires.
  • Surveillez les signaux de fraude. Une augmentation inexpliquée des signalements de fraude à la carte par vos clients après une commande chez vous est un indicateur fort qu’un voleur de données était actif.

Si vous trouvez du code injecté, considérez la boutique comme compromise : supprimez le script malveillant, changez tous vos identifiants (administration WordPress, base de données, panneau d’hébergement, ainsi que toutes les clés d’API de passerelle de paiement) et, comme les données de carte des clients ont pu être exposées, prévenez votre processeur de paiement et suivez ses instructions, qui peuvent inclure des obligations de notification des clients au titre de la norme PCI-DSS ou de la loi locale. Par précaution, examinez également vos comptes administrateur à la recherche de tout compte que vous ne reconnaissez pas. Si votre organisation dispose d’une équipe de sécurité informatique, associez-la à la démarche.

Je tiens à être clair : je n’ai pas vérifié la présence de l’un de ces indicateurs sur votre site, et je ne sais pas si votre site a été affecté. Cette liste est fournie ici pour que vous puissiez vérifier par vous-même.

Je n’ai pas de webmaster / je suis bloqué

Si vous n’êtes pas la personne qui gère le site, veuillez transférer cette page à celle qui s’en charge (votre développeur web, votre agence ou votre hébergeur). Elle reconnaîtra rapidement les étapes ci-dessus.

Si vous gérez le site vous-même et que vous êtes bloqué, je me ferai un plaisir de vous aiguiller dans la bonne direction, sans frais. Contactez-moi à l’aide des coordonnées ci-dessous.

Contact

Evan Harris, chercheur en sécurité

Je contacte les exploitants au sujet de problèmes comme celui-ci uniquement pour les aider à sécuriser leurs sites. Si vous préférez ne plus être contacté, faites-le-moi simplement savoir et je le respecterai.

Références

Avis officiels et suivi

Éditeur / extension

Signalement et analyse