Back-office WordPress : comment le protéger contre les intrusions ?
WordPress est aujourd’hui le CMS le plus utilisé au monde (près d’un site sur cinq est construit avec WordPress). De nombreux avantages comme les mises à jour régulières, les nombreuses extensions et la communauté active ont fait sa popularité. Néanmoins, ce CMS présente aussi des inconvénients : il est une cible de choix pour les pirates qui sont en connaissance de ses moindres failles. Par rapport aux différentes « portes d’entrée » du site, le back-office est la priorité en matière de sécurisation.
Voici quelques bons réflexes permettant de contrer la majorité des tentatives de piratage.
Opter pour un identifiant pénible à deviner
Créer un compte administrateur est l’une des premières étapes de l’installation de WordPress.
Il faut être conscient que ce compte permet un contrôle total sur le back-office, c’est-à-dire sur les pages et articles, les menus, les widgets, la configuration des extensions ainsi que la liste des utilisateurs. Il permet même d’éditer les fichiers de votre site, ou en d’autres termes, d’exécuter des requêtes très simplement ! Il est donc primordial que ce compte ne soit pas accessible à n’importe qui. En effet, une intrusion réussie peut provoquer des dégâts irréversibles sur votre site.
Afin de limiter les risques, soyez sûr de choisir un identifiant difficile à trouver. A bannir à tout prix : « admin ». C’est le premier identifiant que les pirates testent ! N’utilisez pas non plus votre nom/prénom, pseudo ou le nom de votre site. La meilleure solution est de créer une combinaison regroupant des caractères complexes et pénibles à retenir (notez votre identifiant dans un endroit sûr). Important à savoir, il est inutile de mettre des majuscules, elles sont considérées comme des minuscules. En revanche, vous pouvez utiliser des chiffres et des caractères spéciaux tels que les tirets (-) ou underscores (_) en plus des lettres.
NB : Il n’est pas possible de modifier l’identifiant d’un compte utilisateur déjà existant. Néanmoins, si ce compte a un identifiant non sécurisé, vous pouvez créer un nouveau compte administrateur et supprimer l’ancien par la suite. Il ne faut pas oublier de transférer tout le contenu de ce compte vers le nouveau (lors de la suppression du compte, le choix vous est proposé). Pour supprimer l’ancien compte, veillez à être connecté au nouveau : il est impossible de supprimer votre propre compte !
Choisir un mot de passe fort
Un identifiant complexe est insuffisant s’il n’est pas associé à un mot de passe solide. Depuis la version 4.3 de WordPress, lors de la création d’un nouvel utilisateur, un mot de passe fort vous est proposé d’office. Bien évidemment, il est impossible à retenir, mais vous pouvez le noter dans un endroit sûr dans un premier temps et ensuite le mémoriser dans votre navigateur (pensez à utiliser un mot de passe principal pour une sécurité maximum).
Si vous souhaitez choisir votre mot de passe vous-même, assurez-vous de ne pas utiliser un mot ou un nom, ce sont les premiers mots de passe trouvés en cas d’attaque par force brute. Votre mot de passe doit être long d’au moins 8 caractères, comporter des majuscules, des minuscules, des chiffres et des caractères spéciaux. Il vous est aussi possible d’utiliser des espaces.
Nous vous recommandons le site www.generateurdemotdepasse.com pour générer automatiquement un mot de passe fort. Nous vous conseillons de cocher la case « Avec des caractères spéciaux » et d’augmenter le nombre de caractères. En choisissant 15 caractères, votre mot de passe pourra résister pendant de nombreuses années voir des centaines d’années à des attaques par force brute. En effet, le nombre de combinaisons possibles (7815 soit 2.4 x 1028) est conséquent et donc difficile à trouver.
Si vous avez un doute ou que vous détectez une activité suspecte sur votre site, changez systématiquement et rapidement votre mot de passe. Cela ne vous prend qu’une minute et peut vous éviter de nombreux ennuis. Nous vous recommandons également de le modifier assez régulièrement, en particulier si votre site est très visité, car il est potentiellement plus exposé aux attaques.
Dissimuler l’interface de connexion au back-office
Les pirates savent que pour arriver sur l’interface de connexion de votre site, il suffit de rajouter /wp-admin ou /wp-login.php à l’URL du back-office de WordPress. Vous pouvez réduire de manière conséquente les tentatives d’intrusion en modifiant cette URL.
Pour se faire, vous devez ajouter cette ligne à votre fichier .htaccess (présent à la racine de votre FTP) : RewriteRule ^(/)?customlogin/?$ /wp-login.php [QSA,L]
L’interface de connexion au back-office deviendra alors http://www.votresite.com/customlogin. Le slug* (traduction ? Terme très technique, non ?) « customlogin » doit être remplacé par celui de votre choix afin de personnaliser votre URL de connexion. Ainsi, vous êtes certain de bien cacher votre back-office.
*court texte utilisable dans une URL et facilement compréhensible à la fois par les utilisateurs et les moteurs de recherche pour décrire et identifier une ressource.
Si vous ne souhaitez pas modifier directement votre fichier .htaccess, une extension de sécurité gratuite et très complète peut être utilisée. iThemes Security propose de nombreuses fonctionnalités et options pour protéger votre site contre les attaques et tentatives d’intrusion. Vous pouvez notamment configurer cette extension afin de bloquer automatiquement les adresses IP des visiteurs ou robots qui essayent de se connecter à plusieurs reprises à votre back-office (attaques par force brute). Vous pouvez même bloquer immédiatement toute adresse IP qui tente de se connecter avec l’identifiant « admin » grâce à une option prévue à cet effet.
Définir un nombre d’administrateur limité
Plus votre site comporte d’administrateurs, plus vous multipliez les risques de piratage. En effet, si vous utilisez un identifiant et un mot de passe difficiles à trouver alors qu’un ou plusieurs de vos administrateurs ne prennent pas les mêmes précautions que vous, la sécurité du site est compromise.
Afin d’éviter ces problèmes, prenez de bonnes habitudes :
- En général, un seul administrateur par site suffit. Limitez donc au maximum le nombre d’administrateurs. Il vous est possible de donner des droits d’éditeur / auteur / contributeur aux autres utilisateurs en fonction du rôle de chacun et de leurs besoins sur le site.
- Si une personne de confiance doit intervenir sur votre site en ayant besoin des accès administrateur, donnez-lui vos accès personnels directement ou créez-lui un compte temporaire. Choisissez le mot de passe selon les règles citées précédemment et une fois l’intervention terminée, vous pouvez supprimer le compte ou retirer les droits d’administrateur.
- Dans le cas où vous êtes obligé d’utiliser plusieurs comptes administrateur, veillez à ce que chacun dispose d’un identifiant et d’un mot de passe complexes. Insistez auprès des utilisateurs afin qu’ils appliquent ces règles primordiales de sécurité.
- Chaque compte est une porte d’entrée supplémentaire sur votre site. Prenez l’habitude de supprimer les comptes non utilisés avec ou sans droits d’administration.
Ne pas dévoiler l’identifiant dans les pages d’auteur
Lorsque vous disposez d’une partie blog sur votre site et que votre thème fait apparaître les pages d’auteur (archives qui listent tous les articles d’un même utilisateur), prenez garde aux URLs de ces pages. WordPress utilise l’identifiant d’utilisateur par défaut comme slug de l’URL. Par exemple, ceci est ma page d’auteur sur le blog de Première Place : https://www.alsace-referencement.com/author/caroline-hoeffel/ . Vous pouvez observer que « caroline-hoeffel » apparaît dans l’URL. Il s’agit en fait, de mon identifiant de connexion. Pour les pirates, c’est une information précieuse puisqu’ils n’ont plus qu’à trouver mon mot de passe.
Evidemment, par sécurité, ce compte « caroline-hoeffel » n’est pas un compte administrateur. Il est simplement limité à la rédaction des pages ou des articles. L’intérêt pour un pirate est alors limité lui aussi. Généralement, il ne faut jamais utiliser votre compte administrateur pour publier des articles lorsque les pages d’auteur sont présentes sur votre site. Sur le back-office de WordPress, une option vous permet d’attribuer un article à n’importe quel utilisateur lors de sa publication. Si cette option n’apparaît pas : cochez « Auteur » dans « Options de l’écran ».
Il existe des extensions qui permettent de modifier l’URL des pages d’auteur. Néanmoins, la meilleure solution à adopter est d’utiliser un autre type de compte pour la publication d’articles ou de désactiver complètement les pages d’auteur du site lorsqu’elles ne sont pas utiles (l’extension Yoast SEO le permet).
Attention : ne négligez pas les mots de passe forts pour les comptes éditeur ou auteur même s’ils sont moins intéressants pour les pirates. En cas de piratage d’un compte éditeur, l’intrus pourrait publier, modifier ou supprimer n’importe quel contenu de votre site.