Vulnérabilité dans le plugin WordPress WP Fluent Forms

Date de publication :

CVE-2021-34620 [Score CVSS v3 : 8.8]
WP Fluent Forms est un plugin installé sur plus de 80000 sites qui permet de créer et de gérer facilement des formulaires de contact. Il utilise un large ensemble d'actions AJAX afin de modifier les paramètres globaux ainsi que pour la majorité de ses fonctionnalités. Dans ce contexte, toutes les actions AJAX non publiques utilisent une méthode unique, Acl::verify, afin d'effectuer des contrôles de capacité sur ces actions.

Ces actions AJAX sont cependant vulnérables à la falsification de requêtes intersites, car la méthode Acl::verify n'effectue pas de vérification du nonce (le nonce, dans le contexte de WordPress est une clé à utilisation unique son utilisation peut par exemple permettre de protéger des ressources qui ne sont pas censées être modifiées). Par conséquent, il était possible d'inciter un administrateur à envoyer une requête (par exemple, en cliquant sur un lien menant à une page contrôlée par l'attaquant qui contient un formulaire automatique) pour apporter des modifications arbitraires au plugin. Cette attaque fonctionne également contre tout utilisateur ayant reçu l'autorisation d'accéder aux paramètres du formulaire.

Son exploitation peut permettre à un attaquant distant et non authentifié d’injecter du code JavaScript arbitraire à n'importe quel formulaire via l'action AJAX fluentform-save-form-custom_css_js. Le code malveillant serait exécuté dans le navigateur de tout visiteur accédant au formulaire avec les privilèges de la victime.

Informations

La faille est activement exploitée :

Un correctif existe :

Une mesure de contournement existe :

Risques

Risques

  • Injection de code arbitraire
  • Violation des politiques de sécurité

Criticité

  • Score CVSS v3 : 8.8

Existence d’un code d’exploitation

  • Aucun code d'exploitation n’est disponible publiquement à l’heure actuelle.

Composants vulnérables

  • Les versions du plugin WordPress WP Fluent Forms antérieures à la version 3.6.67 sont impactées par ces vulnérabilités.

CVE

Solutions ou recommandations

Mise en place de correctifs de sécurité

  • Mettre à jour le plugin WordPress WP Fluent Forms vers la version 3.6.67 ou ultérieure.

Solution de contournement

  • Aucune solution de contournement n’est disponible publiquement à l’heure actuelle.