Comment correctement sécuriser WordPress ?

Réponses rédigées par Antoine
Dernière mise à jour : 2022-06-21 12:00:48
Thèmes : wordpress - securite
Question

Pouvez vous m'expliquer ce qu'il faut faire pour correctement sécuriser un site Web WordPress ?

Réponse

Il est évident que la première chose à faire, et ce de manière récurrente, pour sécuriser WordPress, est de vérifier que WordPress et ses plugin sont à jour.

Voici par ailleurs d'autres points à ne pas négliger pour correctement sécuriser un site Web WordPress :

  • Désactiver les langages de scripts non utilisés : Cette mesure de sécurité désactive la prise en charge des langages de scripts non utilisés dans WordPress, tels que Python et Perl. En les désactivant, vous vous assurez que votre site Web ne peut être compromis par l'exploitation de vulnérabilités dans ces langages de scripts.

  • Restreindre l'accès aux fichiers et répertoires : Si les droits d'accès sur les fichiers et répertoires ne sont pas assez sûrs, ces fichiers sont à la portée des hackers et donc utilisables pour compromettre votre site Web. Cette mesure de sécurité doit s'assurer que les droits des fichiers wp-config.php sont définis sur 600, ceux des autres fichiers sur 644 et ceux des répertoires sur 755.

  • Configurer les clés de sécurité : Plus d'information via cette autre question.

  • Bloquer la navigation dans les répertoires : Si la navigation dans les répertoires est activée, des hackers pourraient accéder à des informations sur votre site Web susceptibles d'altérer sa sûreté. Généralement, la navigation dans les répertoires est désactivée par défaut, mais lorsqu'elle est activée, cette mesure de sécurité peut l'interdire (via le fichier .htaccess : Options -Indexes).

  • Interdire l'exécution de scripts PHP dans le répertoire wp-includes : Plus d'information via cette autre question.

  • Interdire l'exécution de scripts PHP dans le répertoire wp-content/uploads : Plus d'information via cette autre question.

  • Bloquer tout accès non autorisé à wp-config.php : Plus d'information via cette autre question.

  • Désactiver la concaténation des scripts sur le panneau admin WordPress : Plus d'information via cette autre question.

  • Désactiver l'exécution PHP dans les répertoires cache : Plus d'informations via cette autre question.

  • Désactiver l'édition de fichier dans le tableau de bord WordPress : Désactiver l'édition de fichier dans WordPress supprime la possibilité de modifier les sources des fichiers de plug-ins et thèmes dans l'interface WordPress. Cette mesure ajoute une couche de protection supplémentaire au site Web WordPress au cas où l'un des comptes admin WordPress serait compromis. Elle empêche notamment les comptes piratés d'ajouter facilement du code exécutable malveillant aux plug-ins et thèmes.

  • Modifier le préfixe de table de base de données par défaut : Les tables de bases de données WordPress portent le même nom standard dans toutes les instances WordPress. Si le préfixe wp_ standard est utilisé dans des noms de tables de bases de données, alors la structure globale de la base de données WordPress est transparente, mettant ses données à la portée de tout script malveillant. Cette mesure de sécurité remplace le préfixe par défaut wp_ du nom de la table de base de données par un autre préfixe.

  • Activer la protection contre les robots : Plus d'information via cette autre question.

  • Bloquer l'accès aux fichiers sensibles : Plus d'information via cette autre question.

  • Bloquer l'accès à .htaccess et .htpasswd : Plus d'information via cette autre question.

  • Bloquer les author scans : Plus d'information via cette autre question.

  • Modifier le nom d'utilisateur de l'administrateur par défaut : Pendant l'installation WordPress crée un utilisateur avec des privilèges administrateur et le nom d'utilisateur "admin". Les noms d'utilisateur n'étant pas modifiables dans WordPress, le mot de passe de cet utilisateur est sensible aux attaques par force brute pour accéder à WordPress en tant qu'administrateur. Il faut ainsi créer un autre administrateur avec un nom différent, puis ensuite supprimer le compte admin par défaut.

  • Désactiver les pingbacks : Plus d'information via cette page du site de WordPress.