7 Vulnérabilités Vos plugins de sécurité WordPress ne peuvent pas vous protéger (et comment les réparer manuellement)

Publié: 2025-01-27

Si vous êtes comme la plupart des utilisateurs de WordPress, vous avez probablement installé un plugin de sécurité pour aider à assurer la sécurité de votre site Web. Il s'agit d'une excellente première étape et gérera une grande partie de votre protection - surtout si vous avez activé l'authentification à deux facteurs.

Mais remarquez que j'ai souligné la première étape. Je l'ai fait délibérément parce que beaucoup de gens pensent que c'est la seule étape qu'ils doivent prendre. Si vous vous souciez vraiment de la sécurité de votre site, cela ne devrait pas l'être.

La bonne nouvelle est qu'avec une configuration manuelle légère, vous pouvez améliorer votre sécurité WordPress au niveau du serveur et rendre votre site beaucoup plus résistant aux attaques. En prime, vous vous sentirez comme un expert en sécurité WordPress tout en le faisant - sans doute la partie la plus importante de l'ensemble du processus. 😉

Donc, si vous êtes prêt à passer d'un utilisateur WordPress occasionnel en un pro et à rendre votre site Web à l'épreuve des balles, commençons.

Table des matières

Boîte à outils

Croyez-le ou non, pour réussir, vous n'aurez besoin que de trois (peut-être quatre) outils.

  • Vérification du site Sucuri : outil gratuit pour exécuter votre analyse initiale et pour vérifier vos modifications.
  • En-têtes de sécurité : un autre outil gratuit qui fournit des commentaires détaillés sur les configurations de sécurité du site Web.
  • Accès à votre panneau de commande d'hébergement : j'utilise CPanel, mais je couvrirai quoi faire si vous avez autre chose.
  • Un éditeur de texte (peut-être): votre panneau de configuration d'hébergement en a probablement un intégré, donc cela pourrait ne pas être nécessaire, mais je le répertorie ici au cas où.

La chose la plus compliquée de la liste ci-dessus va accéder à CPanel. Ce n'est pas difficile, mais chaque entreprise d'hébergement a sa propre façon de le faire et si vous ne l'avez jamais fait auparavant, vous devez le comprendre.

La façon la plus simple de l'aborder (si vous n'êtes pas sûr) est d'aller à la base de connaissances sur le site Web de votre société d'hébergement et de rechercher «cpanel». Si cela ne vous mène nulle part, contactez leur assistance client.

Exécuter vos vérifications de sécurité initiales

Avant de commencer à bricoler avec le code de votre site, vous souhaitez d'abord vérifier comment il gère actuellement la sécurité. Les modifications que je vais montrer que vous êtes très spécifique, vous souhaitez donc vous assurer qu'elles sont en fait nécessaires à votre site.

Dans la plupart des cas - surtout si vous comptez sur l'hébergement partagé - vous devrez les fabriquer. Cependant, sur certains plans d'hébergement WordPress gérés de niveau supérieur, il est possible que votre hôte puisse faire les ajustements en votre nom. D'où la raison pour laquelle la gestion de ces analyses à l'avance est importante.

Vérification du site Sucuri

Pour commencer, dirigez-vous vers l'outil de vérification du site de SUCURI et collez l'adresse de votre site Web dans le scanner:

Page de vérification du site SUCURI.

Cliquez sur Soumettre et laissez SUCURI travailler sa magie.

Aux fins de ce tutoriel, je n'ai pas intentionnellement non protégé mon site personnel pour vous montrer à quoi ressemble la configuration WordPress standard (avant de faire les modifications):

Résultats de la numérisation initiale SUcuRI montrant les vulnérabilités de sécurité.

Comme vous pouvez le voir, l'analyse a révélé cinq lacunes de sécurité que vous verrez dans toute configuration WordPress typique. Je vais expliquer ce qu'ils veulent dire dans un instant.

En-têtes de sécurité

Alors que Sucuri nous a donné une bonne vue de l'oiseau, soyons vraiment ringards un instant et vérifions ce que les en-têtes de sécurité ont à dire. La première étape est exactement la même que SUCURI - Tapez ou collez simplement l'adresse de votre site Web dans l'outil et cliquez sur Scan .

Selon la taille de votre site, les résultats pourraient prendre de la seconde à… enfin, plus longtemps. 😅 Mon résultat initial ressemblait à ceci:

Securityheders.com Échec de la sécurité.

Toutes les couleurs rouges et le géant F pourraient sembler un peu intimidants, mais cela nous donne en fait des informations très utiles. Chacune de ces marques rouges indique un en-tête de sécurité manquant qui rend votre site plus vulnérable.

Je veux également souligner que vous verrez ces résultats même avec WordFence ou un autre plugin de sécurité installé sur votre site. L'exception étant si votre entreprise d'hébergement ou quelqu'un d'autre apporte les modifications que nous allons faire avant vous.

Comprendre tous les drapeaux rouges

Ordissons maintenant de tout ce que nos analyses ont trouvé - il y a un certain chevauchement entre les outils, mais chacun a également abordé des problèmes uniques.

Problème des deux outils capturés 🤝

  • Content-Securecurity-Policy manque entièrement - ce qui signifie qu'il n'y a rien contrôlant quels scripts et contenu peuvent charger sur le site. ℹ️ Pourquoi est-ce mauvais? Sans ces contrôles, un code malveillant pourrait être injecté et exécuté sur vos pages, compromettant potentiellement votre site et vos visiteurs.
  • Les options X-Frame sont manquantes, ce qui laisse le site vulnérable aux tenues de clics par des tentatives par intérim non autorisée. ℹ️ Pourquoi est-ce mauvais? Clickjacking est lorsque les attaquants incitent les utilisateurs à cliquer sur quelque chose de différent de ce qu'ils voient, souvent en superposant de manière invisible votre site légitime sous un contenu malveillant.
  • Les options de type contenu ne sont pas définies, ce qui pourrait permettre des attaques de confusion de type mime. ℹ️ Pourquoi est-ce mauvais? La confusion de type MIME se produit lorsqu'un navigateur est trompé dans le traitement d'un type de fichier comme un autre, exécutant potentiellement du code nocif.

Les résultats uniques de Sucuri 🔍

  • La version PHP est visible dans les en-têtes HTTP. ℹ️ Pourquoi est-ce mauvais? Lorsque les attaquants peuvent voir votre version PHP, ils savent exactement quelles vulnérabilités pourraient fonctionner contre votre site - comme avoir un plan de votre système de sécurité.

Les idées supplémentaires de l'en-tête de sécurité 🔬

  • Aucune politique de référence en place. ℹ️ Pourquoi est-ce mauvais? Sans cette politique, votre site peut fuir des informations sensibles sur les modèles de navigation de vos utilisateurs vers d'autres sites Web.
  • La stratégie des autorisations n'a pas été configurée. ℹ️ Pourquoi est-ce mauvais? Cela signifie que toute page sur votre site pourrait potentiellement demander l'accès aux caméras, microphones ou données de localisation des visiteurs sans restrictions.
  • STRICT-Transport-Security est manquant. ℹ️ Pourquoi est-ce mauvais? Sans cet en-tête, les connexions à votre site peuvent rétrograder de HTTPS à HTTP, ce qui les rend vulnérables à l'interception.

La beauté de la résolution de ces problèmes est que vous n'avez pas besoin de comprendre tous les détails techniques - il vous suffit de mettre en œuvre correctement les solutions. Ce qui, commodément, est exactement ce que nous allons faire.

Trouver votre chemin vers les fichiers du serveur

En supposant que vous avez CPanel comme moi, cliquez sur File Manager dans votre tableau de bord:

Accéder au gestionnaire de fichiers via CPanel.

Si vous utilisez autre chose que CPanel, vous pouvez télécharger Filezilla (c'est gratuit et voici un guide rapide sur la façon de l'utiliser). Après l'avoir installé, utilisez vos détails FTP à partir de votre tableau de bord d'hébergement pour vous connecter à votre serveur:

  • Hôte: ftp.yoursite.com - Vérifiez si c'est la bonne adresse dans la section FTP de CPanel
  • Nom d'utilisateur: your-username
  • Mot de passe: your-password
  • Port: 21 - Vérifiez également s'il s'agit du port que votre configuration utilise (FTP dans CPanel)

Certains hôtes vous fourniront également leur propre alternative cpanel qui pourrait fonctionner de la même manière. En d'autres termes, vous devrez peut-être absolument utiliser Filezilla. Si vous n'êtes pas sûr, demandez le support client.

Localiser le fichier .htaccess

Une fois connecté, vous verrez quelque chose qui ressemble au navigateur de fichiers de votre ordinateur. Nous devons trouver un fichier spécifique appelé .htaccess - il contrôle comment votre serveur gère divers paramètres de sécurité. Le moyen le plus simple de le trouver est d'utiliser la fonction de recherche de gestion de fichiers CPanel en haut à droite. Les utilisateurs de Filezilla peuvent s'appuyer sur une fonctionnalité similaire.

Tapez .htaccess dans la fenêtre et cliquez sur Go .

Recherche du fichier .htaccess dans le gestionnaire de fichiers CPanel.

Si vous n'avez qu'un seul site Web lié à votre compte d'hébergement, cela devrait être assez simple. Si vous avez plusieurs sites, assurez-vous que vous cliquez sur le fichier .htaccess qui est associé au site auquel vous allez effectuer ces modifications.

Un autre détail potentiel de Tripwire à surveiller est le fait que même sur une seule configuration de site, vous aurez probablement encore d'autres fichiers .htaccess -ish. Fondamentalement, les fichiers qui ont .htaccess dans leur nom, mais aussi d'autres mots ou caractères.

Vous ne voulez aucun de ceux-ci. Vous ne voulez que celui qui s'appelle .htaccess et rien d'autre.

Ajout de code au fichier .htaccess pour résoudre les problèmes de sécurité

Une fois que vous avez localisé le fichier, vous voudrez le télécharger avant de faire des modifications. De cette façon, si quelque chose ne va pas, vous avez une sauvegarde que vous pouvez télécharger dans le dossier.

Téléchargez le fichier .htaccess avant d'effectuer des modifications.

Rien ne devrait mal tourner, mais mieux vaut être en sécurité que vous-savoir-quoi .

Une fois votre sauvegarde téléchargée en toute sécurité, vous pouvez procéder à l'édition du fichier .htaccess . Dans le gestionnaire de fichiers de CPanel, cliquez avec le bouton droit sur le fichier et sélectionnez Modifier . Si vous utilisez FileZilla, cliquez avec le bouton droit et choisissez Afficher / Modifier - cela ouvrira le fichier dans votre éditeur de texte par défaut.

La partie suivante est l'apex de toute cette mission. C'est là que vous vous sentez comme un expert en sécurité WordPress pendant un bref instant. Profitez-en pendant qu'il dure.

Où mettre le code dans votre fichier .htaccess 👨🏻‍💻

Les installations WordPress ont généralement plusieurs sections ici, marquées par des commentaires qui commencent par # BEGIN et # END .

Recherchez une ligne qui dit ceci:

 # END WordPress

L'approche la plus sûre consiste à ajouter les en-têtes de sécurité juste après cela . Si vous ne voyez pas la ligne exacte, ou si vous n'êtes pas sûr, vous pouvez ajouter les en-têtes à la toute fin du fichier - assurez-vous simplement de laisser une ligne vide entre tout code existant et les nouveaux ajouts.

Voici le code:

 # BEGIN Security Headers Header unset X-Powered-By php_flag expose_php Off Header set X-Frame-Options "SAMEORIGIN" Header set X-Content-Type-Options "nosniff" Header set Strict-Transport-Security "max-age=31536000; includeSubDomains" Header set Content-Security-Policy "default-src 'self' 'unsafe-inline' 'unsafe-eval' *; script-src 'self' 'unsafe-inline' 'unsafe-eval' * data: blob:; style-src 'self' 'unsafe-inline' *; img-src 'self' data: *; frame-src 'self' *; font-src 'self' data: *; media-src 'self' *;" Header set Referrer-Policy "strict-origin-when-cross-origin" Header set Permissions-Policy "camera=(), microphone=(), geolocation=(), payment=()" # END Security Headers

Une fois que vous avez terminé, cliquez sur Enregistrer les modifications en haut à droite. Pour les utilisateurs non-cpanel, trouvez quel que soit le bouton équivalent sur votre propre interface.

Avec cela à l'écart, vous pouvez à nouveau exécuter les analyses de sécurité pour voir l'impact de vos modifications.

RECOURS

Tout d'abord, vérifiez les en-têtes de sécurité:

Securityheders.com a réussi la numérisation de sécurité.

Pas trop mal, hein?

Nous sommes passés d'un F à un A.

Parlez d'un éclat!

Chaque en-tête de sécurité que nous avons configuré affiche comme correctement implémenté.

Ensuite, vérifions Sucuri:

SUCURI SCAN après avoir ajouté du code d'en-tête.

Beaucoup mieux mais étrangement il y a encore deux avertissements.

Le premier est en fait un faux positif car je sais que mon site est en cours d'exécution. Je n'ai aucune explication à cela autre que peut-être que SUCURI ne reconnaît pas WordFence pour quelque raison que ce soit. Si vous voyez le même avertissement et que vous savez également que vous avez un WAF installé, ignorez-le.

Le deuxième message est cependant un peu différent. Il apparaît également dans le résultat des en-têtes de sécurité, en dessous du rapport stellaire un rapport que je vous ai déjà montré:

Securityheders.com a passé la numérisation de sécurité mais avec des avertissements.

Voici la chose:

Bien qu'il soit signalé comme «dangereux» par les deux outils, l'utilisation d' une ligne dangereuse est en fait parfaitement correcte.

WordPress a besoin de certaines capacités JavaScript et CSS à fonctionner - en particulier pour l'éditeur de blocs et les plugins. Ainsi, bien qu'il existe des moyens plus strictes de gérer cela (c'est ce que sont ces références de nonces ), cela briserait votre site. Littéralement.

La meilleure analogie ici est de penser à une maison. Vous pouvez techniquement rendre votre maison «plus sécurisée» en scellant toutes vos fenêtres et portes avec du ciment, mais cela rendrait votre maison non fonctionnelle. C'est la même idée.

Emballage

Les plugins de sécurité WordPress sont le fondement d'une bonne stratégie de sécurité - mais ils ne peuvent pas atteindre le niveau du serveur où certaines protections critiques doivent être définies.

7 Vulnérabilités Vos plugins #wordpress #Security ne peuvent pas vous protéger de 🔐
Cliquez pour tweeter

Les captures d'écran avant et après des scans de sécurité que vous avez vues sont la preuve de cela.

Et maintenant que vous avez lu ce tutoriel, vous pouvez également passer votre sécurité WordPress de «Plugin Protected» à «au niveau du serveur sécurisé».

Sur une dernière note, en tant que meilleures pratiques de sécurité, je recommande également de faire ce qui suit:

  • Exécutez ces analyses de sécurité mensuellement.
  • Gardez la documentation de vos configurations de sécurité.
  • Testez après les grandes mises à jour WordPress pour s'assurer que tout fonctionne toujours comme prévu.
  • Modifiez l'adresse de votre page de connexion.
  • Limiter les tentatives de connexion.
  • Activez l'authentification à deux facteurs (ou 2FA pour faire court).
  • Gardez les plugins et les thèmes mis à jour et supprimez ceux que vous n'utilisez pas.

… Et bien plus encore. WordPress Security peut vous abattre dans un trou de lapin profond, mais ce que vous avez appris ici est suffisant pour vous aider à démarrer et protégera votre site de la plupart des attaques.

Avez-vous des questions? Faites-moi savoir dans les commentaires. Je serais heureux de vous aider.

Ouais! Vous êtes arrivé à la fin de l'article!