Failles plugins WordPress : les risques et comment s'en protéger

Pourquoi les plugins sont le maillon faible de WordPress

WordPress alimente plus de 40 % du web mondial. Sa force, c'est son écosystème de plugins : plus de 60 000 extensions disponibles sur le répertoire officiel, et des dizaines de milliers d'autres distribuées via des marketplaces ou directement par les développeurs. Mais cette richesse fonctionnelle a un prix : chaque plugin ajouté est un point d'entrée potentiel pour un attaquant.

En 2025, la base de données WPScan a enregistré plus de 5 200 vulnérabilités dans les plugins WordPress. La majorité de ces failles sont découvertes par des chercheurs en sécurité, mais un nombre significatif est exploité avant même qu'un correctif ne soit disponible.

Un plugin n'est pas un simple ajout fonctionnel. C'est du code tiers qui s'exécute avec les mêmes privilèges que WordPress lui-même, avec un accès complet à votre base de données et à votre système de fichiers.

Les types de failles les plus courantes

Cross-Site Scripting (XSS)

Le XSS est la vulnérabilité la plus fréquente dans les plugins WordPress. Elle représente à elle seule environ 50 % des failles reportées. Le principe : un attaquant injecte du code JavaScript malveillant qui s'exécute dans le navigateur des visiteurs ou des administrateurs.

Il existe trois variantes :

Un XSS stocké dans un plugin de formulaire de contact peut permettre à un attaquant de voler la session d'un administrateur et de prendre le contrôle total du site.

Injection SQL (SQLi)

L'injection SQL se produit quand un plugin construit des requêtes SQL en concaténant directement les données utilisateur, au lieu d'utiliser des requêtes préparées. L'attaquant peut alors lire, modifier ou supprimer des données arbitraires dans la base.

// Vulnérable : concaténation directe
$wpdb->query("SELECT * FROM wp_users WHERE id = " . $_GET['id']);

// Sécurisé : requête préparée
$wpdb->prepare("SELECT * FROM wp_users WHERE id = %d", $_GET['id']);

Une SQLi peut permettre l'extraction de tous les mots de passe hashés, la création d'un compte administrateur, ou la modification du contenu du site.

Cross-Site Request Forgery (CSRF)

Le CSRF exploite le fait que le navigateur envoie automatiquement les cookies de session avec chaque requête. Un attaquant crée une page piégée qui déclenche une action sur votre site WordPress en utilisant la session de l'administrateur connecté.

WordPress fournit un système de nonces pour se protéger du CSRF, mais de nombreux plugins oublient de les implémenter ou les implémentent incorrectement.

Remote Code Execution (RCE)

Le Saint Graal des attaquants. Une faille RCE permet d'exécuter du code PHP arbitraire sur le serveur. Les causes les plus fréquentes :

Path Traversal

Cette vulnérabilité permet de lire ou d'inclure des fichiers en dehors du répertoire prévu, en utilisant des séquences ../. Un path traversal dans un plugin de téléchargement peut exposer le fichier wp-config.php qui contient les identifiants de la base de données.

Les risques de la supply chain

Au-delà des failles techniques, l'écosystème des plugins WordPress est exposé à des risques systémiques liés à sa chaîne d'approvisionnement.

Plugins abandonnés

Un plugin qui n'est plus maintenu continue de fonctionner, mais ne reçoit plus de correctifs de sécurité. Or, des milliers de sites continuent d'utiliser des plugins dont la dernière mise à jour remonte à plus de deux ans. Ces plugins sont des cibles faciles : les vulnérabilités qui y sont découvertes ne seront jamais corrigées.

Rachats malveillants

Des acteurs malveillants rachètent des plugins populaires mais mal monétisés. Le développeur original, fatigué de maintenir un projet gratuit, accepte l'offre. L'acheteur pousse ensuite une mise à jour contenant du code malveillant, qui se propage automatiquement sur tous les sites utilisant le plugin.

Plugins nulled et piratés

Les versions "nulled" (piratées) de plugins premium sont un vecteur d'infection majeur. Dans la quasi-totalité des cas, ces versions contiennent des backdoors, des redirections malveillantes ou du code de spam SEO. Ne téléchargez jamais de plugins depuis des sources non officielles.

Comment évaluer la sécurité d'un plugin

Avant d'installer un plugin, posez-vous ces questions :

Inventaire et surveillance continue

Maintenir un inventaire à jour de vos plugins est essentiel. Pour chaque plugin, documentez la version installée, la date de dernière mise à jour et les vulnérabilités connues.

Orilyt automatise cette surveillance avec son test de détection des plugins WordPress. L'outil identifie les plugins installés sur votre site, vérifie leurs versions et les croise avec les bases de données de vulnérabilités connues. Vous obtenez en quelques secondes un inventaire de risques actionnable, sans avoir besoin d'accéder au back-office WordPress.

Les bonnes pratiques de protection

Réduire la surface d'attaque

Mettre à jour rigoureusement

Utiliser un WAF applicatif

Un Web Application Firewall (WAF) intercepte les requêtes malveillantes avant qu'elles n'atteignent vos plugins. Des solutions comme Cloudflare, Sucuri ou le module ModSecurity d'Apache offrent une protection efficace contre les exploits connus et les attaques zero-day.

Appliquer le principe de défense en profondeur

Ne comptez jamais sur une seule couche de protection. Combinez mises à jour, WAF, headers de sécurité, permissions fichiers restrictives et monitoring. Si une couche cède, les suivantes prennent le relais.

Conclusion

Les plugins sont indispensables à WordPress, mais ils sont aussi sa plus grande vulnérabilité. Une approche responsable consiste à minimiser le nombre de plugins installés, à sélectionner rigoureusement ceux que vous gardez, à les maintenir systématiquement à jour et à surveiller en continu leur état de sécurité.

Un audit régulier de votre site avec un outil comme Orilyt vous permet de détecter les plugins vulnérables, les configurations à risque et les failles exposées, avant qu'un attaquant ne le fasse à votre place.

Auditez votre site avec Orilyt

56 tests automatisés pour évaluer la sécurité, la performance et le SEO de votre site WordPress. Rapport détaillé en moins de 60 secondes.

Lancer un audit gratuit