Aller au contenu
Blog

WordPress · SimpleForm · Project Manager

WordPress : 7 extensions critiques fin octobre 2026 (SimpleForm, Project Manager, PDF Invoice, Uncanny Toolkit…)

Sept extensions WordPress notées 9.1 à 9.8 le 31 octobre : upload, exécution de code, injection d'objet PHP, contournement d'authentification. Quoi vérifier.

Le 31 octobre 2026, NVD a publié sept CVE critiques dans des extensions WordPress, toutes signalées par Wordfence. Quatre sont notées 9.8, trois 9.1. Le motif qui revient : un nonce censé protéger une action, mais imprimé dans les pages publiques ou distribué par un endpoint anonyme. Le contrôle existe sur le papier, il ne filtre personne.

ExtensionCVEClasseCVSS 3.1Bornes NVD
SimpleFormCVE-2026-118235Upload de fichier arbitraire9.8jusqu'à 3.10.2 incluse
Project Manager (weDevs)CVE-2026-116512Exécution de code à distance9.8jusqu'à 4.1.1 incluse
PDF Invoice for WooCommerceCVE-2026-109220Injection d'objet PHP9.8jusqu'à 7.1.1 incluse
Uncanny Toolkit for LearnDashCVE-2026-119096Contournement d'authentification9.8jusqu'à 3.8.2 incluse
Acadlix LMSCVE-2026-103882Suppression de fichier arbitraire9.1jusqu'à 1.1.9 incluse
Popup BuilderCVE-2026-89270Contournement d'autorisation9.1jusqu'à 4.4.5 incluse
WP Booking SystemCVE-2026-116557Contrôle d'autorisation manquant9.1jusqu'à 2.1.0.5 incluse

Les scores sont ceux de Wordfence (CNA). Vecteur AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H pour les 9.8, AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H pour les 9.1. Les sept sont au statut NVD Received (pas encore analysées) et aucune n'est au CISA KEV à la date de rédaction. Les bornes viennent de la description : NVD ne nomme pas la version corrigée. Vérifie le journal des modifications de l'extension avant de considérer une version comme sûre.


SimpleForm — CVE-2026-118235

Constructeur de formulaires. La fonction handle_upload dérive l'extension du fichier avant de nettoyer son nom : un nom terminé par un point contourne toutes les vérifications d'extension et de type MIME. Un visiteur anonyme peut déposer un fichier exécutable, donc exécuter du code.

Condition d'exposition : une page qui affiche un formulaire SimpleForm. Le seul contrôle est un nonce présent dans l'attribut data-nonce de chaque formulaire public.

Action : passer au-delà de 3.10.2 ; à défaut, retirer les formulaires avec champ de fichier ou désactiver l'extension.

Project Manager — CVE-2026-116512

Gestion de projet et tableau Kanban de weDevs. Le paramètre id est concaténé dans une chaîne de règles de validation, découpée ensuite en noms de fonctions PHP appelés dynamiquement, sans liste blanche. Résultat : exécution de code sans authentification.

Le détail qui rend la faille anonyme : le cœur de WordPress exécute le validate_callback d'une route REST avant son permission_callback. Le contrôle de droits de l'extension n'est jamais atteint sur ce chemin.

Action : passer au-delà de 4.1.1. Pas de contournement simple : l'API REST est publique par défaut.

PDF Invoice for WooCommerce — CVE-2026-109220

Génération de factures PDF. Le champ « note client » du paiement est inséré tel quel dans le HTML de la facture, retransformé en balise par simplehtmldom, puis passé à unserialize() par mPDF : injection d'objet PHP menant à l'exécution de code, sans compte.

Condition d'exposition : une boutique qui accepte le virement bancaire ou le chèque. Une commande anonyme via l'API Store de WooCommerce passe automatiquement « en attente » et déclenche la génération de facture.

Action : mettre à jour (les références NVD pointent vers une archive 7.2.0 de l'extension). En attendant, désactiver ces moyens de paiement ou l'extension.

Uncanny Toolkit for LearnDash — CVE-2026-119096

Boîte à outils pour LearnDash. Le contrôle de vérification de compte cherche l'utilisateur avec l'adresse brute, alors que la connexion s'appuie sur la version nettoyée par WordPress. Avec des caractères parasites ajoutés à l'adresse, le contrôle échoue et est ignoré, mais la connexion aboutit.

Limite importante : l'attaquant doit déjà connaître les identifiants du compte visé. La faille ne vole pas de mot de passe : elle neutralise l'approbation et la suspension de comptes. Un compte suspendu par un administrateur redevient utilisable. Le 9.8 de Wordfence peut surprendre au vu de cette condition.

Action : passer au-delà de 3.8.2, et changer le mot de passe des comptes suspendus pour compromission.

Acadlix LMS — CVE-2026-103882

Quiz et cours en ligne. Une route REST supprime des fichiers sans valider leur chemin : suppression de fichier arbitraire. Supprimer wp-config.php relance l'assistant d'installation, ce qui ouvre la voie à une prise de contrôle.

Sur le papier il faut un compte abonné, mais la route ne vérifie qu'un nonce REST générique que l'extension publie sur chaque page publique. Selon la description, l'exigence d'authentification tombe de fait.

Action : passer au-delà de 1.1.9 ou désactiver l'extension.

Popup Builder — CVE-2026-89270

Fenêtres pop-up marketing. Une seule requête GET anonyme envoie toutes les pop-ups publiées à la corbeille, à cause d'un contrôle d'autorisation absent et d'un second défaut dans SGPopup::find(). Impact : intégrité et disponibilité, pas de fuite de données ni d'exécution de code.

Action : passer au-delà de 4.4.5. Les pop-ups sont récupérables depuis la corbeille si elles n'ont pas été vidées.

WP Booking System — CVE-2026-116557

Calendrier de réservation. Un contrôle de droits manque sur la suppression des notes de calendrier : un compte abonné peut supprimer celles de n'importe quel calendrier.

À noter : la description exige un compte abonné alors que le vecteur publié par Wordfence indique PR:N, et l'impact décrit (suppression de notes) paraît limité au regard du 9.1. Traite-la après les six autres.

Action : passer au-delà de 2.1.0.5, et fermer l'inscription publique si elle n'est pas utile.


Détection

  • Fichiers PHP dans wp-content/uploads/ : il ne doit y en avoir aucun (SimpleForm, PDF Invoice).
  • Commandes WooCommerce anonymes en attente avec une note client contenant du HTML ou des caractères inhabituels.
  • Requêtes vers l'API REST des extensions concernées depuis des IP inconnues, en particulier sur Project Manager et Acadlix.
  • wp-config.php : présence et date de modification ; un site qui affiche l'écran d'installation est un incident.
  • Connexions de comptes suspendus ou non approuvés sur un site LearnDash.
  • Pop-ups à la corbeille sans action d'un administrateur.

Pour une vague comparable, voir notre article sur six extensions critiques d'octobre 2026.


Mitigation générale

  1. Inventorier les sites qui utilisent l'une de ces sept extensions (wp plugin list sur chaque instance).
  2. Mettre à jour au-delà des bornes NVD dès que l'éditeur publie un correctif ; sinon désactiver l'extension.
  3. Bloquer l'exécution de PHP dans wp-content/uploads/ au niveau du serveur web.
  4. Rendre wp-config.php non modifiable par l'utilisateur du serveur web et garder une sauvegarde récente du site.
  5. En cas de doute : réinitialiser les mots de passe administrateur, changer les clés et sels de wp-config.php, auditer les fichiers récemment modifiés.

Pourquoi surveiller en continu tes extensions WordPress

Sept extensions, sept mécanismes, et pour la plupart une protection qui n'en était pas une. Sur un parc de sites, la seule question utile est « quel site utilise quelle extension, dans quelle version », et il faut y répondre avant que les scans ne commencent.

Avec cveo.tech, recense tes extensions WordPress avec leur version et reçois une alerte dès qu'une CVE critique les touche.

Sache quelles CVE touchent les versions que tu fais tourner.

Ajoute le produit et sa version : cveo.tech affiche tout de suite les CVE qui le concernent, puis t'alerte par email quand une nouvelle CVE le concerne — y compris avant que NVD ait fini son analyse. Gratuit, il suffit d'un compte.

Chaque lundi

Les CVE critiques de la semaine, dans ta boîte mail

Un email par semaine : les vulnérabilités CVSS ≥ 9 publiées ces sept derniers jours, et nos dernières analyses. Rien d'autre.

Double confirmation par email. Désinscription en un clic, à tout moment.