Vulnérabilité critique dans le plugin Funnel Builder exploitée pour voler des données de paiement WooCommerce
Une faille de sécurité critique dans le plugin **Funnel Builder** pour WordPress fait l'objet d'une exploitation active. Les attaquants tirent parti de la vulnérabilité pour injecter du JavaScript malveillant sur les pages de paiement WooCommerce, dans le but de voler des informations de paiement sensibles.

### Exploitation active du plugin Funnel Builder
Une vulnérabilité de sécurité critique affectant le plugin **Funnel Builder** pour WordPress fait l'objet d'une exploitation active pour injecter du code JavaScript malveillant sur les pages de paiement WooCommerce. L'objectif est de voler des données de paiement.
Les détails de cette activité ont été publiés par **Sansec** cette semaine. La vulnérabilité ne dispose actuellement pas d'un identifiant **CVE** officiel. Elle affecte toutes les versions du plugin antérieures à la 3.15.0.3 et impacte plus de 40 000 boutiques WooCommerce.
### Injection de JavaScript non authentifiée
La faille permet aux attaquants non authentifiés d'injecter du JavaScript arbitraire sur chaque page de paiement du magasin, selon la société néerlandaise de sécurité e-commerce. **FunnelKit**, qui maintient Funnel Builder, a publié un correctif pour la vulnérabilité dans la version 3.15.0.3.
« Les attaquants plantent de faux scripts **Google Tag Manager** dans le paramètre 'External Scripts' du plugin », a noté **Sansec**. « Le code injecté ressemble à des analyses ordinaires à côté des balises réelles du magasin, mais charge un skimmer de paiement qui vole les numéros de carte de crédit, les CVV et les adresses de facturation lors du paiement. »
### Détails techniques de la vulnérabilité
Selon **Sansec**, Funnel Builder inclut un point de terminaison de paiement publiquement exposé qui permet à une requête entrante de choisir le type de méthode interne à exécuter. Cependant, les anciennes versions étaient conçues de telle sorte qu'elles ne vérifiaient jamais les permissions de l'appelant ni ne limitaient les méthodes pouvant être invoquées.
Les attaquants exploitent cette faille en émettant une requête non authentifiée qui peut atteindre une méthode interne non spécifiée. Cette méthode écrit des données contrôlées par l'attaquant directement dans les paramètres globaux du plugin. Le fragment de code ajouté est ensuite injecté dans chaque page de paiement Funnel Builder.
En conséquence, un attaquant peut planter une balise `<script>` malveillante qui se déclenche à chaque transaction de paiement sur un site WordPress vulnérable.
### Implémentation du Skimmer
Dans au moins un cas, **Sansec** a observé un payload se faisant passer pour un chargeur **Google Tag Manager** (GTM) pour lancer du JavaScript hébergé sur un domaine distant. Il ouvre ensuite une connexion WebSocket vers le serveur de command-and-control (C2) de l'attaquant (`wss://protect-wss[.]com/ws`) pour récupérer un skimmer adapté à la vitrine du victime. L'objectif final de l'attaque est de siphonner les numéros de carte de crédit, les CVV, les adresses de facturation et d'autres informations personnelles saisies par les visiteurs du site lors du paiement. Il est conseillé aux propriétaires de sites de mettre à jour le plugin Funnel Builder vers la dernière version et de vérifier `Settings > Checkout > External Scripts` pour tout élément inhabituel, en supprimant toute entrée suspecte.
« Habiller les skimmers en code Google Analytics ou Tag Manager est un schéma Magecart récurrent, car les examinateurs ont tendance à ignorer tout ce qui ressemble à une balise de suivi familière », a déclaré **Sansec**.
### Campagne de Backdoor Joomla
Cette divulgation intervient quelques semaines après que **Sucuri** a détaillé une campagne dans laquelle des sites Web Joomla sont compromis par du code PHP fortement obfusqué. Ce code contacte des serveurs C2 contrôlés par des attaquants, reçoit et traite les instructions envoyées par les opérateurs, et sert du contenu spammy aux visiteurs et aux moteurs de recherche à l'insu du propriétaire du site. L'objectif ultime est de tirer parti de la réputation des sites pour injecter du spam.
« Le script agit comme un chargeur à distance », a déclaré la chercheuse en sécurité Puja Srivastava. « Il contacte un serveur externe, envoie des informations sur le site Web infecté et attend des instructions. La réponse du serveur distant détermine quel contenu le site infecté doit servir. »
« Cette approche permet aux attaquants de modifier le comportement du site Web compromis à tout moment sans modifier à nouveau les fichiers locaux. L'attaquant peut injecter des liens de produits spam, rediriger les visiteurs ou afficher dynamiquement des pages malveillantes. »