Après sa suppression du référentiel de plugins WordPress hier, le populaire plugin WP GDPR Compliance a publié la version 1.4.3, une mise à jour qui corrige plusieurs vulnérabilités critiques. Au moment d’écrire ces lignes, le plugin a été réintégré dans le référentiel WordPress et compte plus de 100 000 installations actives. Les vulnérabilités signalées permettent aux attaquants non authentifiés d’escalader les privilèges, ce qui leur permet d’infecter davantage les sites vulnérables. Tous les sites qui utilisent ce plugin doivent avoir pour priorité immédiate de le mettre à jour vers la dernière version, ou de le désactiver et de le supprimer si les mises à jour ne sont pas possibles.

La vulnérabilité

Dans son utilisation standard, le plugin gère quelques types d’actions qui peuvent être soumises via la fonctionnalité admin-ajax.php de WordPress. Ces actions comprennent le type de demandes d’accès aux données et de demandes de suppression requises par GDPR, mais aussi des fonctionnalités permettant de modifier les paramètres du plugin à partir du tableau de bord d’administration WordPress.

Faille de sécurité dans le module WP GDPR compliance

Cependant, les versions non corrigées de WP GDPR Compliance (jusqu’à la version 1.4.2 incluse) n’effectuent pas de contrôles de capacité lors de l’exécution de son action interne save_setting pour effectuer ces changements de configuration. Si un utilisateur malveillant soumet des options et des valeurs arbitraires à ce point final, les champs de saisie seront stockés dans la table des options de la base de données du site affecté.

Faille de sécurité dans le module WP GDPR compliance

Faille de sécurité dans le module WP GDPR compliance

En plus du stockage des valeurs d’options arbitraires, le plugin effectue un appel do_action() en utilisant le nom et la valeur de l’option fournie, qui peut être utilisée par les attaquants pour déclencher des actions WordPress arbitraires.

Les divulgations de cette faille l’ont signalée comme deux vulnérabilités distinctes : d’abord les options arbitraires mettent à jour et ensuite les appels d’actions arbitraires, mais avec les deux exploits potentiels vivant dans le même bloc de code et exécutés avec la même charge utile, nous traitons ceci comme une seule vulnérabilité de l’escalade de privilèges.

Exploits dans la nature

Nous avons déjà commencé à voir des cas de sites vivants infectés par ce vecteur d’attaque. Dans ces cas, la possibilité de mettre à jour des valeurs d’options arbitraires est utilisée pour installer de nouveaux comptes administrateurs sur les sites concernés.

En utilisant cette faille pour définir l’option users_can_register à 1, et en changeant le rôle par défaut des nouveaux utilisateurs à “administrateur”, les attaquants peuvent simplement remplir le formulaire à /wp-login.php?action=register et accéder immédiatement à un compte privilégié. A partir de là, ils peuvent revenir à la normale et installer un plugin ou un thème malveillant contenant un shell web ou un autre logiciel malveillant pour infecter davantage le site de la victime.

Dans plusieurs des cas que nous avons triés depuis la divulgation de cette vulnérabilité, nous avons vu des comptes administrateurs malveillants présents avec les variations du nom d’utilisateur t2trollherten. Ce vecteur d’intrusion a également été associé à des webshells téléchargées nommées wp-cache.php. Bien qu’il s’agisse d’IOC (Indicateurs de compromis) courants, ces exploits peuvent bien sûr changer à mesure que les attaques deviennent de plus en plus sophistiquées.

Conclusion

Jusqu’à la sortie du correctif hier, plus de cent mille sites WordPress utilisant le plugin WP GDPR Compliance étaient vulnérables à ce type d’attaque. Il est d’une importance cruciale que tout site utilisant ce plugin effectue la mise à jour dès que possible.

Si vous pensez que votre site a été affecté par cette vulnérabilité, n’hésitez pas à lire l’article “les 12 signes qui indiquent que votre site WordPress a été piraté”  ou “Comment sécuriser son site contre les piratages“. Pour finir vous pouvez partager cet article avec vos pairs afin d’améliorer la sensibilisation à cette question.


Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *