Généralement, lorsqu’une solution domine le marché, elle s’expose à des intrusions et des attaques informatiques.
Selon W3Techs, WordPressest utilisé par 30% de l’ensemble des sites web mondiaux, de ce fait il en est le parfait exemple. Malgré son succès, WordPress présente quelques petites failles qui peuvent mettre en danger vos investissements numériques. Si la sécurité de ce CMS peut être fortement améliorée, dans la réalité, ce n’est pas vraiment le cas.
Cet article va vous aider à savoir si votre site WordPress est susceptible d’être hacké et à trouver les solutions qui vous permettent de réduire ces risques.
Sans garantir un niveau de sécurité absolu, leur mise en place est dissuasive. Elle vous met à l’abri des assauts des pirates malveillants.
Avant de vous suivre ce guide de sécurisation de votre site web, pensez toujours à faire une sauvegarde complète de votre site.
Sécurité des comptes administrateurs
Critère 1 : Utilisation de l’identifiant “admin”
Lors de son installation, WordPress propose en standard de créer le compte administrateur avec l’identifiant “admin”. En le préservant, les tentatives d’intrusion sont facilitées puisque le pirate informatique va utiliser ses outils automatiques avec le login standard et lancer une multitude de tentatives pour cracker le mot de passe.
Solution : Créez un nouvel utilisateur avec les droits d’administrateur qui aura un identifiant unique difficile à trouver, incluant des caractères spéciaux. Une fois cet utilisateur correctement paramétré, supprimez l’utilisateur “admin” en choisissant de transférer tous les contenus qui lui sont rattachés au nouveau compte.
Critère 2 : Le compte admin possède l’ID 1
Par défaut, le compte d’administrateur WordPress possède l’ID 1. En le conservant, la tâche des attaquants malveillants est considérablement simplifiée puisqu’il leur suffit de faire la requête https://monsite.fr/?author=1 pour identifier le nom d’utilisateur de l’administrateur WordPress.
Solution : Identique au critère 1. Si déjà exécuté, il est inutile de le refaire.
Critère 3 : Tous les utilisateurs ont des droits administrateurs
Il est fréquent de de constater que l’ensemble des utilisateurs ont été dotés de droits administrateurs. Cette pratique contribue à augmenter de façon exponentielle les risques d’intrusion malveillante sur votre site, puisqu’il suffit que le compte mail d’un de vos administrateurs soit compromis pour qu’un hacker puisse prendre le contrôle de votre site.
Solution : Passez en revue pour chaque utilisateur ses besoins réels et ajustez ses droits en fonction. S’il s’agit d’auteurs d’articles, les droits “auteurs” ou “éditeur” sont parfaitement adaptés. Si un membre de l’équipe n’intervient plus – temporairement ou définitivement-, attribuez lui des droits “abonnés”.
Critère 4 : Utilisation de son email administrateur comme destinataire des formulaires de contact
Lors de l’identification WordPress , l’adresse email rattachée à son compte peut-être utilisée comme identifiant. Ne pas utiliser l’adresse email de votre compte administration comme destinataire de vos formulaires de contact afin de ne pas créer une vulnérabilité susceptible d’être mise à profit par une personne malintentionnée.
Solution : Différenciez les adresses que vous utilisez pour votre marketing et pour votre sécurité.
Critère 5 : Votre Login est affiché publiquement
WordPress, de manière standard, prévoit d’afficher publiquement l’identifiant du compte. Un choix qui se révèle être désastreux en terme de sécurité.
Solution : Modifiez, dans les comptes administrateurs en premier, et dans chaque compte, ensuite, le Nom à afficher publiquement. Attention, assurez vous cela soit bien différent du nom de compte.
Procédures d’identification standards
Critère 6 : Votre page d’identification est encore wp-login.php
Par défaut, l’accès à l’identification de l’administration de WordPress s’effectue par la page wp-login.php. Cette page donne accès au formulaire de connexion au backend de votre site. En conservant l’url par défaut, la tache des pirates informatiques est facilitée.
Solution : En installant le plugin WPS Hide Login, vous pouvez changer l’url de la page d’identification.
Critère 7 : le nombre de tentatives d’accès n’est pas limité.
Le principe des attaques par Brute Force est de tester une à une les différentes combinaisons possibles pour trouver un mot de passe. En ne limitant pas le nombre de tentatives d’accès, vous donnez la possibilité à la personne qui souhaite s’introduire frauduleusement sur votre site de le faire.
Solution : De nombreuses extensions WordPress aident à lutter contre les attaques par Brute Force. Ex. : WPS Limit Login ou Loginizer Security
Sûreté de votre base de données
Critère 8: Les tables de votre base de données utilisent le préfixe “wp_”
De base, WordPress propose par défaut le préfixe “wp_” au moment de créer des tables de votre base de données. Connu de tous, ce préfixe créé une vulnérabilité en cas d’injection. A modifier lors de l’installation de wordpress, si ce n’est pas fait, veuillez installer le plugin proposait dans la solution ci-après.
Solution : Le plugin Brozzme DB Prefix vous permet de modifier simplement et rapidement le préfixe des tables d’une base de données WordPress.
Vulnérabilités des fichiers critiques sur votre serveur
Critère 9 : Le fichier wp-config.php n’est pas sécurisé
Le fichier wp-config.php recense les informations confidentielles au fonctionnement de WordPress . Il contient en particulier les informations d’accès à votre base de données ainsi que les clés de chiffrement des cookies. Lors de l’installation de WordPress , ce fichier n’est pas correctement sécurisé.
Solution : Afin de sécuriser votre fichier wp-config.php, vous devez entreprendre 4 actions spécifiques.
- Spécifier des clés SALT générées aléatoirement pour votre site .
- Déplacer le fichier wp-config.php pour le placer dans un niveau de dossier supérieur.
- Bloquer dans votre fichier .htaccess l’accès au fichier. Pour ce faire, ajoutez la ligne suivante <Files wp-config.php> order allow,deny deny from all </Files>.
- Spécifier des droits d’accès restreints au fichier en leur donnant les permissions 644.
Critère 10 : Le fichier .htaccess n’est pas sécurisé
Grâce à des instructions de configuration spécifiques aux serveurs Apache, le fichier .htaccess permet de gérer différentes modalités d’accès au contenu de votre WordPress. Il est donc très important de le sécuriser correctement.
Solution : Le fichier .htaccess a pour caractéristique de pouvoir contenir des instructions qui le protègent. En ajoutant la ligne <files wp-config.php> order allow,deny deny from all </files> à votre fichier, vous le rendez inaccessible via un simple navigateur. Une fois le fichier modifié, modifiez ses droits d’accès CHMOD à 644.
Version de WordPress et mises à jour
Critère 11 : Votre site affiche la version de WordPress
WordPress est un CMS Open-Source développé par bon nombre de personnes. Conséquence : les vulnérabilités de chaque version sont disponibles à la communauté. En affichant la version de votre WordPress, vous permettez aux pirates d’identifier très rapidement les techniques d’intrusion qui ont la meilleure probabilité de réussir.
Solution : Supprimez de votre serveur le fichier readme.html et masquez l’affichage de la version de WordPress en ajoutant au fichier function.php la ligne de code suivante: remove_action(“wp_head”, “wp_generator”);
Critpre 12 : Votre WordPress n’est pas à jour
Chaque nouvelle mise à jour de WordPress corrige de nouvelles failles de sécurité et des bugs. En omettant de mettre à jour votre gestionnaire de contenus, vous augmentez le nombre de points vulnérables de votre site.
Solution : Procédez à une sauvegarde de votre site et lancez sa mise à jour. Afin de limiter vos interventions, vous pouvez en outre activer la mise à jour automatique de votre WordPress. Nous vous conseillons toutefois d’activer uniquement les mises à jour mineures, qui présentent peu de risques de compatibilité avec la configuration de votre site.
Critère 13 : Vos extensions ne sont pas à jour
Les extensions que vous ajoutez à votre WordPress pour augmenter ses fonctionnalités sont porteuses de nouvelles vulnérabilités. Pour limiter les risques qu’ils représentent, il est indispensable de régulièrement les mettre à jour.
Solution : Allez sur l’interface d’administration des extensions dans WordPress et faites le point sur l’ensemble des extensions installées.
Votre thème et sa mise à jour
Critère 14 : Vous utilisez un thème gratuit téléchargé sur le net
La mise à disposition gratuite de thèmes est une technique fréquemment employée par les pirates informatiques pour tromper les internautes. Méfiez vous des thèmes proposés gratuitement et, en particulier, des thèmes proposés dans l’installateur de thèmes.
Solution : Passez sur un thème standard de WordPress, le thème gratuit proposé par un prestataire réputé ou achetez la licence d’un thème premium et installez-le.
Critère 15 : Votre thème n’est pas mis à jour
Les thèmes peuvent contenir des failles de sécurité. Leur mise à jour est nécessaire.
Solution : Mettez à jour votre thème.
Critère 16 : Des thèmes inactifs sont installés
Lors de la création de votre site, vous avez testé différents thèmes et vous ne les avez pas supprimer. Ces thèmes inactifs peuvent servir de porte d’entrée à une personne malveillante. Il faut les supprimer.
Solution : Supprimez tous les thèmes que vous n’utilisez pas. Il sont situés dans le dossier Themes (wp-content/themes/).
Pour conclure
Si certain des critères sont simples à mettre en oeuvre, d’autres nécessitent de solides bases techniques.
Il existe des solutions intégrées de sécurisation des sites WordPress ( comme l’hébergeur spécialisé WordPress Infomaniak) permettent de gérer les différents aspects de sécurité de votre CMS WordPress et bien plus encore. Il est fortement conseillé d’y avoir recours, notamment si votre site constitue votre principal fond de commerce !