Aller au contenu
Edouard Simon Le tech qui parle business.

Pentest & sécurité

Pentest WordPress : top 10 vulnérabilités à connaître en 2026

Les 10 vecteurs d'attaque les plus exploités sur les sites WordPress aujourd'hui — et comment se protéger sans devenir paranoïaque.

Edouard Simon · · 3 min de lecture
Pentest WordPress : top 10 vulnérabilités à connaître en 2026

WordPress équipe 43% du web. Ce qui en fait la plateforme la plus attaquée au monde. La majorité des compromissions ne viennent pas d’attaques sophistiquées : elles exploitent les 10 mêmes erreurs depuis 5 ans. Voici lesquelles.

1. Plugins / thèmes obsolètes

La cause n°1 absolue. 60% des sites WP compromis l’ont été via une vulnérabilité connue d’un plugin non mis à jour. Yoast, Contact Form 7, WP File Manager — tous ont eu leur CVE critique. Mise à jour mensuelle minimum, audit de chaque plugin avant installation.

2. Mots de passe faibles + absence de 2FA

« admin/admin123 », « edouard/edouard2024 ». Brute-force automatisé via xmlrpc.php ou wp-login.php = quelques heures. Mots de passe 16+ caractères, 2FA obligatoire pour les admins (extension Wordfence Login Security ou Two-Factor).

3. XML-RPC abuse

L’endpoint /xmlrpc.php permet de tester 1 000 mots de passe par requête (multicall). Si vous n’utilisez pas Jetpack ni d’app mobile WordPress, désactivez xmlrpc complètement.

add_filter( 'xmlrpc_enabled', '__return_false' );

4. REST API fuites d’utilisateurs

/wp-json/wp/v2/users liste publiquement tous vos utilisateurs (logins inclus) sur la majorité des installations. Un attaquant récupère vos logins, puis brute-force. À désactiver pour les non-authentifiés.

5. Upload de fichiers mal contrôlé

Beaucoup de plugins acceptent des uploads sans vérifier MIME ni extension. PHP shell uploadé via un formulaire = compromission totale. Whitelist stricte des extensions, vérification MIME serveur, isolation des uploads (no exec).

6. Injection SQL via plugins custom mal codés

Surtout dans les plugins maison ou peu maintenus. Toute requête utilisateur doit passer par $wpdb->prepare(). Jamais de concaténation directe.

7. XSS stockés (commentaires, formulaires)

Un commentaire avec du JavaScript injecté qui s’exécute dans le navigateur d’un admin = vol de cookie session = compromission. Toujours esc_html(), esc_attr(), wp_kses_post() selon le contexte d’affichage.

8. CSRF sur les formulaires custom

Sans nonce, n’importe quel site externe peut faire faire des actions à votre admin connecté. wp_nonce_field() + check_admin_referer() systématique.

9. wp-config.php exposé

Mauvaise config Apache/Nginx, sauvegarde wp-config.php.bak laissée sur le serveur, dépôt Git public avec wp-config.php committé. Vos credentials DB en clair, accès complet. Auditez les fichiers exposés (Wappalyzer, dirb).

10. Misconfiguration LiteSpeed / Nginx / .htaccess

Headers de sécurité absents (CSP, X-Frame-Options, X-Content-Type-Options), exposition de la version WordPress, listing des dossiers d’upload, SSL mal configuré (TLS 1.0 toujours actif). Audit serveur en complément du pentest applicatif.

Le minimum vital

Si vous ne devez faire que 5 choses cette semaine :

  1. Mettre à jour tous les plugins/thèmes/core
  2. Activer 2FA pour tous les admins
  3. Désactiver xmlrpc.php si pas utilisé
  4. Restreindre /wp-json/wp/v2/users
  5. Activer un WAF (Wordfence, Sucuri, ou natif LiteSpeed)

Et après ?

Ces mesures couvrent 80% du risque. Pour les 20% restants — vulnérabilités métier, logique applicative, IDOR, escalade de privilèges, plugins custom mal codés — il faut un vrai pentest avec exploration manuelle. À faire 1 fois par an minimum sur un site qui traite des données sensibles ou des transactions.

Vous voulez savoir ce qui est réellement exposé chez vous ? Demandez un audit.

Un projet en réflexion ?

Si cet article a éclairé votre besoin, on peut en discuter de vive voix. 30 minutes, sans engagement.

Planifier un échange