Une vulnérabilité critique du plugin WordPress AI Engine a mis plus de 100 000 sites web actifs en danger de compromission totale par le biais d’attaques d’escalade de privilèges non authentifiées.
La faille permet aux attaquants d’extraire des jetons d’authentification et de prendre le contrôle administratif des installations WordPress concernées.
De la fuite de jetons à la prise de contrôle
La vulnérabilité (CVE-2025-11749) découle d’un problème d’exposition d’informations sensibles qui touche toutes les versions d’AI Engine jusqu’à la version 3.1.3 incluse.
Lorsque les administrateurs activent la fonctionnalité No-Auth URL dans les paramètres du Model Context Protocol (MCP) du plugin, celui-ci expose involontairement des jetons bearer via l’index de l’API REST /wp-json/.
Ces jetons servent d’identifiants d’authentification pour des agents d’IA tels que Claude ou ChatGPT, leur permettant de gérer du contenu, d’exécuter des commandes et de modifier des comptes utilisateurs grâce à l’intégration du plugin avec WordPress.
Une fois exposés, ces jetons bearer peuvent être récupérés par des attaquants non authentifiés, simplement en consultant le point de terminaison /wp-json/ sur les sites vulnérables.
À l’aide de ces identifiants, les acteurs malveillants peuvent s’authentifier auprès du point de terminaison MCP et exécuter des commandes privilégiées, notamment wp_update_user, afin d’élever leurs privilèges au niveau administrateur.
Une fois l’accès administratif obtenu, les attaquants peuvent téléverser des plugins malveillants, injecter du spam, rediriger les visiteurs vers des sites d’hameçonnage ou installer des portes dérobées persistantes.
Comment un seul paramètre a ouvert la voie
La vulnérabilité se situe dans la classe Meow_MWAI_Labs_MCP, où les routes de l’API REST sont enregistrées à l’aide de la fonction rest_api_init().
La faille se produit lorsque la fonctionnalité No-Auth URL est activée. Le plugin enregistre des points de terminaison spéciaux de l’API REST contenant directement le jeton bearer dans le chemin de l’URL, mais ne masque pas ces points de terminaison dans l’index public de l’API.
Plus précisément, le plugin ne définissait pas le paramètre show_in_index sur false lors de la création de ces routes, les rendant visibles à toute personne consultant l’index de l’API.
Cette négligence a donc exposé des jetons d’authentification sensibles sur Internet, permettant aux attaquants d’y accéder sans disposer au préalable d’identifiants ni effectuer la moindre interaction.
Le développeur du plugin a corrigé le problème dans la version 3.1.4 en modifiant le code d’enregistrement des routes pour y inclure show_in_index => false, empêchant ainsi l’affichage public des points de terminaison.
Cependant, tous les sites sur lesquels l’option No-Auth URL avait déjà été activée doivent immédiatement renouveler leurs jetons bearer, car ces identifiants sont peut-être déjà compromis.
La puissance de l’IA face aux risques de sécurité
Le plugin AI Engine permet à des agents d’IA de gérer des sites WordPress via le Model Context Protocol (MCP), offrant une intégration poussée avec des systèmes comme Claude et ChatGPT.
Si cette fonctionnalité améliore l’automatisation et la productivité, elle élargit également la surface d’attaque lorsque les contrôles d’authentification sont mal configurés.
L’intégration d’agents d’IA dans les environnements administratifs crée de nouveaux risques lorsque les API et les identifiants ne sont pas correctement sécurisés.
À mesure que davantage de plugins et d’applications intègrent une connectivité avec l’IA, les développeurs comme les administrateurs doivent considérer l’exposition de jetons comme un vecteur de vulnérabilité critique.
Renforcer les défenses de WordPress
Bien que la mise à jour vers la version corrigée soit essentielle, les organisations doivent prendre des précautions supplémentaires pour renforcer leur niveau global de sécurité WordPress et de leurs API.
- Désactiver les fonctionnalités d’API inutilisées comme No-Auth URL et vérifier régulièrement l’exposition de l’API REST.
- Utiliser un pare-feu applicatif (WAF) pour bloquer les requêtes d’API non autorisées ou suspectes.
- Renouveler régulièrement les jetons et les identifiants, en particulier après l’application de correctifs.
- Mettre en place des contrôles d’accès basés sur les rôles (RBAC) afin de limiter les autorisations des plugins et des agents d’IA.
- Renforcer la sécurité de WordPress en imposant le protocole HTTPS, en désactivant la modification des fichiers et en mettant à jour les plugins.
- Surveiller les journaux et l’activité de l’API afin de détecter les accès inhabituels ou les tentatives d’escalade de privilèges.
- Effectuer régulièrement des audits de sécurité pour détecter les plugins et intégrations obsolètes ou mal configurés.
La mise en œuvre de ces mesures aide les organisations à réduire le risque d’exposition de jetons et d’escalade de privilèges réussie.
La vulnérabilité d’AI Engine montre comment de simples erreurs de configuration dans des plugins intégrant l’IA peuvent entraîner une compromission totale du système.
Avec plus de 100 000 installations concernées, cette faille rappelle de manière critique que les jetons d’authentification et les points de terminaison d’API doivent être traités comme des actifs sensibles.
À mesure que les outils d’IA s’intègrent davantage aux systèmes de gestion de contenu, la frontière entre commodité et sécurité continue de s’estomper.
Cette tension croissante entre accessibilité et sécurité explique pourquoi de nombreuses organisations adoptent une approche zero-trust dans le cadre de leur cyberrésilience.

