Les failles PHP Everywhere RCE menacent des milliers de sites WordPress

WordPress logo

Les chercheurs ont découvert trois vulnérabilités critiques d’exécution de code à distance (RCE) dans le plugin « PHP Everywhere » pour WordPress, utilisé par plus de 30 000 sites Web dans le monde.

PHP Everywhere est un plugin qui permet aux administrateurs WordPress d’insérer du code PHP dans les pages, les publications, la barre latérale ou tout bloc Gutenberg, et de l’utiliser pour afficher du contenu dynamique basé sur des expressions PHP évaluées.

Trois failles RCE

Les trois vulnérabilités ont été découvertes par des analystes de sécurité à Clôture des mots et peut être exploité par des contributeurs ou des abonnés, affectant toutes les versions de WordPress à partir de 2.0.3 et inférieures.

Voici une brève description des défauts :

  • CVE-2022-24663 – Faille d’exécution de code à distance exploitable par n’importe quel abonné en lui permettant d’envoyer une requête avec le paramètre ‘shortcode’ défini sur PHP Everywhere, et d’exécuter du code PHP arbitraire sur le site. (Note CVSS v3 : 9,9)
  • CVE-2022-24664 – Vulnérabilité RCE exploitable par les contributeurs via la metabox du plugin. Un attaquant créerait une publication, ajouterait une métabox de code PHP, puis la prévisualiserait. (Note CVSS v3 : 9,9)
  • CVE-2022-24665 – Faille RCE exploitable par les contributeurs qui ont la capacité ‘edit_posts’ et peuvent ajouter des blocs PHP Everywhere Gutenberg. Le paramètre de sécurité par défaut sur les versions de plug-in vulnérables n’est pas sur « admin-only » comme il se doit. (Note CVSS v3 : 9,9)

Alors que les deux dernières failles ne sont pas facilement exploitables car elles nécessitent des autorisations au niveau des contributeurs, la première vulnérabilité est beaucoup plus ouverte à une exploitation plus large car elle peut être exploitée en étant simplement abonné sur le site.

Par exemple, un client connecté sur un site est considéré comme un « abonné », donc le simple fait de s’inscrire sur la plate-forme cible serait suffisant pour obtenir suffisamment de privilèges pour l’exécution de code PHP malveillant.

Dans tous les cas, l’exécution de code arbitraire sur un site peut entraîner une prise de contrôle complète du site, ce qui est le pire scénario possible en matière de sécurité de site Web.

Correction uniquement pour l’éditeur de blocs

L’équipe de Wordfence a découvert les vulnérabilités le 4 janvier 2022 et a informé l’auteur de PHP Everywhere de ses découvertes.

Le fournisseur a publié une mise à jour de sécurité le 10 janvier 2022, avec la version 3.0.0, qui a subi une augmentation majeure du numéro de version car elle nécessitait une réécriture substantielle du code.

Alors que les développeurs ont corrigé la mise à jour le mois dernier, il n’est pas rare que les administrateurs ne mettent pas régulièrement à jour leur site WordPress et leurs plugins. Selon le télécharger les statistiques sur WordPress.org, seules 15 000 installations sur 30 000 ont mis à jour le plugin depuis que les bugs ont été corrigés.

Par conséquent, en raison de la gravité de ces vulnérabilités, il est fortement conseillé à tous les utilisateurs de PHP Everywhere de s’assurer qu’ils ont mis à niveau vers PHP Everywhere version 3.0.0, qui est le dernier disponible en ce moment.

Notez que si vous utilisez l’éditeur classique sur votre site, vous devrez désinstaller le plugin et trouver une autre solution pour héberger du code PHP personnalisé sur ses composants.

En effet, la version 3.0.0 ne prend en charge que les extraits de code PHP via l’éditeur de blocs, et il est peu probable que l’auteur travaille à la restauration des fonctionnalités du Classic au coucher du soleil.