La vulnérabilité du plugin de formulaire de contact Elementor WordPress expose jusqu’à 200 000 sites

La base de données nationale des vulnérabilités des États-Unis a publié un avis concernant une vulnérabilité XSS affectant le populaire Metform Elementor Contact Form Builder, qui expose plus de 200 000 installations actives à la vulnérabilité.

Script intersite stocké (XSS)

Une vulnérabilité XSS stockée est une vulnérabilité dans laquelle un site Web ne parvient pas à sécuriser correctement une entrée, comme un formulaire de soumission, ce qui permet à un pirate de télécharger un script malveillant sur le serveur. Le script est ensuite téléchargé et exécuté par un navigateur de visiteurs du site, permettant au pirate de voler les cookies des visiteurs ou d’obtenir leurs autorisations de site Web, ce qui peut ensuite conduire à une prise de contrôle du site Web. L’organisation à but non lucratif Open Worldwide Application Security Project (OWASP) décrit la vulnérabilité de Cross Site Scripting : « Un attaquant peut utiliser XSS pour envoyer un script malveillant à un utilisateur sans méfiance. Le navigateur de l’utilisateur final n’a aucun moyen de savoir que le script ne doit pas être approuvé et exécutera le script. Parce qu’il pense que le script provient d’une source fiable, le script malveillant peut accéder à tous les cookies, jetons de session ou autres informations sensibles conservés par le navigateur et utilisés avec ce site. Il existe différents types d’attaques XSS. La vulnérabilité affectant le plugin de formulaire de contact Elementor est appelée XSS stocké car le script malveillant est téléchargé et stocké sur les serveurs du site Web lui-même. Ce qui rend cette vulnérabilité particulièrement préoccupante, c’est qu’il s’agit d’une version non authentifiée, ce qui signifie que l’attaquant n’a besoin d’aucune autorisation de site Web pour lancer l’attaque. Cette vulnérabilité particulière a reçu un score de menace de 7,2 sur une échelle de 1 à 10, le niveau 10 étant le niveau le plus élevé.

Ce qui a causé la vulnérabilité

La cause de la vulnérabilité est un problème de codage dans le plugin qui n’a pas réussi à vérifier et à bloquer les entrées indésirables via le formulaire de soumission de contact. Ce processus de vérification et de blocage des téléchargements indésirables est appelé nettoyage. Un deuxième problème était un échec du plug-in à sécuriser les données générées par le plug-in. C’est ce qu’on appelle l’échappement de la sortie.
WordPress publie une page développeur sur l’échappement des données, qui explique :
« Échapper à la sortie est le processus de sécurisation des données de sortie en supprimant les données indésirables, telles que les balises HTML ou de script mal formées. Ce processus permet de sécuriser vos données avant de les restituer à l’utilisateur final. L’incapacité à assainir les entrées pour échapper aux sorties sont les deux principaux problèmes qui ont conduit à la vulnérabilité.
L’avertissement de la base de données nationale sur les vulnérabilités explique :
«Le plugin Metform Elementor Contact Form Builder pour WordPress est vulnérable au script intersite stocké via des zones de texte sur les formulaires dans les versions jusqu’à 3.1.2 incluses en raison d’une désinfection insuffisante des entrées et de l’échappement des sorties. Cela permet à des attaquants non authentifiés d’injecter des scripts Web arbitraires dans des pages qui s’exécuteront chaque fois qu’un utilisateur accédera à une page injectée, qui est la page de soumission.

Le plugin Metform Elementor est patché

Les éditeurs de Metform Elementor Contact Form Builder ont publié des correctifs au cours de plusieurs versions pour corriger la vulnérabilité.
Voici les versions mises à jour du plugin et leurs correctifs :

  • Version 3.2.0
    Amélioré : Sécurité et assainissement
  • Variante 3.2.2

    Corrigé : problème d’autorisation de sécurité pour le point de terminaison de l’API REST

    Version 3.2.3 (patchée le 06-03-2023)

    Corrigé : problème d’échappement dans le champ de signature.
    Corrigé : Soumission de formulaire pour les utilisateurs non connectés

Les éditeurs WordPress utilisant Metform Elementor Contact Form Builder devraient envisager de mettre à jour leur plugin vers la version 3.2.3, la version entièrement corrigée.
Lisez l’avis sur le site Web de la base de données nationale sur les vulnérabilités :
CVE-2023-0084 Détail
Lisez le changelog officiel du plugin documentant les correctifs :
Metform Elementor Contact Form Builder Changelog Image sélectionnée par Shutterstock/Asier Romero