Sécurité Web

Sécuriser un site WordPress en 10 étapes concrètes (2026)

Publié le 3 April 2026 — 3 min de lecture
En bref

Guide pratique pour sécuriser WordPress en 2026 : mises à jour, 2FA, Cloudflare WAF, sauvegardes hors-site, changement de préfixe DB et hardening complet.

90 000 attaques automatisées ciblent des sites WordPress chaque minute selon Wordfence. La bonne nouvelle : 95% de ces attaques exploitent des failles connues, et toutes ont une parade simple. Voici le protocole complet pour sécuriser votre site WordPress en 2026.

Étape 1 — Maintenir WordPress, thèmes et plugins à jour

98% des hacks WordPress exploitent des failles dans des plugins ou thèmes non mis à jour — pas dans WordPress core. Les mises à jour de sécurité sont publiées et les exploits automatisés suivent dans les 24-48h.

Actions concrètes :

  • Activer les mises à jour automatiques pour WordPress core (mises à jour mineures)
  • Mettre à jour plugins et thèmes chaque semaine
  • Supprimer les plugins désactivés (ils restent des vecteurs d’attaque même désactivés)
  • Remplacer les plugins abandonnés (plus de mise à jour depuis 12+ mois)

Étape 2 — Mots de passe forts et 2FA

Les attaques brute-force sur /wp-login.php testent des millions de combinaisons login/mot de passe par heure. Un mot de passe fort réduit ce risque à zéro.

  • Mot de passe admin : 20+ caractères, généré par un gestionnaire de mots de passe (Bitwarden, 1Password)
  • 2FA (double authentification) : plugins recommandés — WP 2FA, Wordfence (inclut 2FA), ou Google Authenticator
  • Nom d’utilisateur admin : évitez “admin”, “administrator”, votre prénom ou le nom de votre site

Étape 3 — Changer l’URL de connexion

Masquer /wp-login.php ne suffit pas à elle seule, mais elle élimine 80% du bruit des bots automatisés qui n’essaieront même pas de trouver votre URL custom.

Plugin recommandé : WPS Hide Login (léger, sans dépendances).

Étape 4 — Configurer Cloudflare WAF

Cloudflare (même en version gratuite) offre un pare-feu applicatif (WAF) qui bloque les patterns d’attaque connus avant qu’ils n’atteignent votre serveur : injections SQL, XSS, brute-force, enumération d’utilisateurs.

Règles Cloudflare à activer en priorité :

  • OWASP Core Ruleset (plan Free inclut les règles de base)
  • Règle custom : bloquer les requêtes vers /xmlrpc.php (principal vecteur d’attaque brute-force)
  • Règle custom : challenge CAPTCHA sur les accès à /wp-login.php depuis des pays non ciblés

Étape 5 — Désactiver xmlrpc.php

XML-RPC est une ancienne API WordPress utilisée pour les pingbacks et les connexions depuis des apps mobiles. Elle est massivement exploitée pour les attaques brute-force amplifiées (1 requête = 1000 essais de connexion).

Dans .htaccess :

<Files xmlrpc.php>
  Order Deny,Allow
  Deny from all
</Files>

Ou via le filtre WordPress : add_filter('xmlrpc_enabled', '__return_false');

Étape 6 — Changer le préfixe de la base de données

Par défaut, WordPress utilise le préfixe wp_. Les attaques par injection SQL ciblent souvent wp_users et wp_options directement. Un préfixe custom rend ces tables plus difficiles à cibler.

À faire à l’installation (dans wp-config.php : webegine_ = 'wbe_';). Après installation, migration via WP-CLI ou plugin.

Étape 7 — Protéger wp-config.php

Ce fichier contient vos identifiants de base de données. Ajoutez dans .htaccess :

<Files wp-config.php>
  Order Deny,Allow
  Deny from all
</Files>

Vous pouvez aussi déplacer wp-config.php un niveau au-dessus du dossier WordPress — WordPress le détecte automatiquement.

Étape 8 — Sauvegardes hors-site quotidiennes

Une sauvegarde sur le même serveur que le site ne vaut rien si le serveur est compromis. La règle : sauvegardes hors-site, dans un service cloud externe (AWS S3, Google Cloud Storage, BackBlaze B2).

Plugin recommandé : UpdraftPlus avec connexion à un cloud externe configurée. Fréquence : quotidienne pour la base de données, hebdomadaire pour les fichiers.

Étape 9 — Configurer les en-têtes de sécurité HTTP

Les en-têtes HTTP de sécurité préviennent les attaques XSS, clickjacking et injection de contenu. À ajouter dans .htaccess ou la configuration Nginx :

Header always set X-Frame-Options "SAMEORIGIN"
Header always set X-Content-Type-Options "nosniff"
Header always set Referrer-Policy "strict-origin-when-cross-origin"
Header always set Permissions-Policy "geolocation=(), microphone=(), camera=()"

Étape 10 — Monitoring et alertes

La détection rapide d’une compromission limite les dégâts. Configurez :

  • Wordfence — scan de malware quotidien, alertes par email sur les changements de fichiers critiques
  • UptimeRobot (gratuit) — alerte si votre site devient inaccessible
  • Google Search Console — alertes de sécurité si Google détecte du contenu malveillant

Ces 10 étapes prennent 2 à 4 heures à implémenter et réduisent votre surface d’attaque de 95%. Pour un audit de sécurité complet avec rapport détaillé, contactez-nous.

W
Rédigé par
WebEngine
Développeur web freelance à Paris spécialisé WordPress, WooCommerce et SEO technique depuis 2010. 13 avis vérifiés · Note 5/5. Chaque site livré atteint un score PageSpeed mobile supérieur à 90.

Un projet en tête ?

Devis gratuit sous 48h, sans engagement.

Demander un devis gratuit