Devenez votre propre Webmaster

Comment protéger votre site wordpress

Si vous êtes ici, c'est que vous faites sans doute parti des 32% de personnes possédant un site Internet tournant grâce au CMS WordPress.

L'inconvénient de cette popularité, est que WordPress est sans doute le CMS le plus attaqué. 60.000 sites wordpress se font piratés chaque jour, soit prêt 22 millions de sites chaque année.

Il est toujours rageant de se faire pirater un site sur lequel on a passé des centaines d'heures et de voir nos efforts anéantis. C'est d'autant plus préjudiciable lorsque le site est celui de votre entreprise.

Quand on interroge les personnes dont le site WordPress à été piraté 61 % disent ne pas savoir la faille qui a été exploité par le pirate. Il faut savoir pourtant, que les nouvelles lois de RGPD peuvent vous tenir pour responsable en cas de piratage des données de vos utilisateurs, si vous ne prouvez pas que vous avez fait ce qu'il fallait pour protéger les données de vos utilisateurs et vos clients.

Je vous propose donc de voir comment protéger au mieux votre site wordpress.

Comment pirater ou infecter un site wordpress ?

Selon une étude de Wordfence, 55,9% des attaques de sites wordpress ont exploité la faille d'un plugins, 16,1% on été piraté par des attaques par force brute. C'est deux attaques représentent déjà 72% des intrusions sur les sites piratés.

L'attaques par force brute est simple, c'est une méthode utilisée en cryptanalyse pour trouver un mot de passe. Il s'agit de tester, une à une, toutes les combinaisons possibles. Elle est extrêmement facile à mettre en place automatiquement par des robots qui pilonneront votre site pour ce connecter en testant des millions de noms d'utilisateurs avec des millions de mots de passe.

Il existe des milliers de plugins gratuits. Du coup quelle est l'intention du programmeur ? Est-ce un geek qui veut partager quelque chose ou est-ce une personne mal intentionnée qui va implanter volontairement une faille pour accéder aux sites qui feront l'erreur d'installer son plugin ? Et si les intentions du programmeurs ne sont pas malveillantes, est-il assez sérieux et compétant pour développer un plugin qui ne va pas ouvrir des failles de sécurité sur votre site ?

Selon une étude réalisée par la société de sécurité Sucuri, 74% des sites WordPress qu'ils ont étudiés étaient infectés en 2016 et ce chiffre est passé à 83% en 2017. Sur ces sites, 39,3% n'étaient pas à jour pour le version WordPress et des plugins utilisés.

71% des sites infectés le sont des "Backdoor" ou "porte dérobée" qui est une fonctionnalité inconnue de l'utilisateur légitime, qui donne un accès secret à votre site. Le meilleur moyen de l'installer est via un plugin. Même s'il peut être installer par d'autres moyens, comme via un accès sftp, ftp, ..;

47% des sites infectés le sont par des "Malware". C'est un logiciel malveillant, aussi dénommé, "logiciel nuisible" ou "programme malveillant" ou "pourriciel". Ce programme est développé dans le but de nuire à un système informatique, sans le consentement de l'utilisateur dont l'ordinateur est infecté. Par exemple, il peut implanter des cookies ou des scripts sur les ordinateurs de vos visiteurs, ou encore envoyer au pirate, les données de vos utilisateurs.

44% des sites infectés le sont par des "Span SEO" (SEO black hat). Le but de cette attaque est d'implanter des liens factices depuis votre site vers des sites qui veulent augmenter leur référencement. Google avait déjà tirer un signal d'alarme sur cette pratique en 2017, car non seulement cela peut fausser votre référencement, mais ces liens peuvent diriger vos clients vers des sites malveillants et vous faire perdre des lecteurs, des clients et du chiffre d'affaire. C'est la faille qui est de plus en plus exploitée, car peu coûteuse pour le pirate.

Les autres types d'infections sont les "Mailer" (19%), les "Hactool" (14%), les "Droper" (6,1%), les "Defaced" (5,5%), le "Phishing" (5,5%).

Quels sont les points faibles de WordPress ?

Les utilisateurs

Et oui, c'est la première faille de tous les systèmes informatiques. Plus le nombre d'utilisateurs est important et plus il y a de failles possibles. Des mots de passe trop faibles, des mises à jours non faites ou faites trop vite, des installations de plugin sans vérification préalable et/ou inutiles. Des créations ou utilisations d'utilisateurs avec des droits trop importants pour les tâches exécutées.

Les utilisateurs ouvrent des failles en permanence sur votre site et vous êtes la principale faille. Votre utilisateur possèdent sans doute énormément de droits, faites attention à le sécuriser au maximum.

PHPMYAdmin

Souvent utilisé pour accéder à votre base de données et trop souvent oublié dans la liste des points faibles. Si un pirate accède à votre base de données, tout devient possible, depuis l'aspiration des données de vos utilisateurs et clients, à l’implantation d'infection ou au piratage de vos comptes utilisateurs. Il peut même vous interdire l'accès à votre site en modifiant tous les mots de passe et toutes les adresses mails de vos utilisateurs.

Choisissez peux d'utilisateurs avec des noms complexes, ainsi qu'un mot de passe long, complexe et modifié une fois par mois.

Les plugins

Comme on l'a vu plus avant, les plugins sont la source principale d'infection et de piratages des sites. Inutile de vous dire de faire attention à ce que vous installez sur votre site wordpress (il en est de même sur vos ordinateurs personnels). Tant que ce n'est pas vous qui développez les choses, renseignez-vous sur la fiabilité des plugins que vous installez, vous trouverez facilement les informations sur Internet.

N'installez que le strict nécessaire. Faites vos mises à jour sur votre site d'exploitation après les avoir testé sur un site de test.

wp-admin - wp-content - wp-includes

Ces répertoires contiennent des données sensibles et entre autre l'accès aux connexions de votre site, ainsi que la liste des fonctions exécutables sur votre site. Il va falloir les protéger.

Le niveau d'accès des répertoires

Beaucoup de personnes ne protègent pas les répertoires contenant les fichiers de leur site contre l'écriture, la modification ou même la lecture. C'est une faille importante qui peut être exploitée par des pirates. Par exemple pour remplacer des fichiers via un accès ftp, sftp par exemple.

Les fichiers les plus modifiés lors des piratages sont index.php (28%), .htaccess (10%), function.php (9%). Ce sont des fichiers importants pour la sécurité de votre site, mais permettant aussi d'implanter de nouvelles fonctions et qui sont utilisés à chaque accès à votre site Internet.

Le fichier wp-config.php, même s'il n'est pas dans le top 3 des fichiers les plus modifiés par les hackers (car moins d'intérêt de le modifier) est aussi un fichier sensible. Il contient entre autre les clés de cryptage et le chemin d'accès, l'utilisateur, le mot de passe d'accès à votre base de données.

En sécurisant au maximum l'accès aux répertoires les contenants, cela permet de limiter les modifications et l'accès, même en lecture de ces fichiers.

Comment protéger son site WordPress ?

Limiter les utilisateurs et leurs droits

Beaucoup de blogs ou de sites, n'ont pas beaucoup d'utilisateurs. Les rédacteurs et l'administrateur. La plupart de vos lecteurs ne sont inscrit qu'à votre newsletter et n'ont pas de compte utilisateur sur votre site.

Pour les autres sites, définissez bien le rôle de vos utilisateurs. Chaque rôle à des droits différents :

  • Administrateur : Accès à toutes les fonctionnalités de l’administration WordPress
  • Éditeur : Peut publier et gérer les pages ainsi que celles des autres utilisateurs
  • Auteur : Peut publier et gérer ses propres articles uniquement
  • Contributeur : Peut écrire et gérer ses propres articles mais ne peut pas les publier
  • Abonné : Peut uniquement gérer son profil.

Dans le menu "Réglages/Général" vous pouvez déterminer le rôle par défaut de chaque nouveau utilisateur. Choisissez bien. Vous pouvez utiliser des plugins comme "User Role Editor" pour modifier les droits des utilisateurs, si vous souhaitez avoir des profiles autres que ceux définis par défaut dans les rôles wordpress.

Si vous êtes le seul à rédiger des articles sur votre site, le mieux est de créer uniquement deux utilisateurs :

  • L'utilisateur administrateur (celui créé lors de l'installation du site). Donnez lui un nom difficile à trouver et sans rapport aucun avec votre site.
  • Le rédacteur. Idem choisissez un nom de connexion difficile et sans rapport avec votre site, puis dans le profile modifier le nom à afficher publiquement (celui que vos lecteurs verront). Donnez lui le "Rôle" d'auteur seulement.

N'utilisez l'utilisateur administrateur que lorsqu'il vous faut mettre à jour ou installer un nouveau plugin ou mettre à jour votre site. Bref, plus l'utilisateur à un nombre de droits importants, plus il faut limiter son utilisation.

Fixez une politique de mot de passe

Bizarrement WordPress ne permet pas de créer une politique de mot de passe pour les utilisateurs.

Changez son mot de passe régulièrement (1 fois/mois) et faites que le mot de passe ne soit pas facile à trouver (plus de 10 caractères, Majuscule/Minuscules, lettres, chiffres, caractères spéciaux (_-@&, ...) et évitez le chiffre en fin de mot de passe (le mieux est que ce soit une phrase facile à retenir pour vous et sans aucun sens).

exemple : "MotdePasse1" est un très mauvais mot de passe facile à trouver. "P2slk@-7DLx0_en3" est beaucoup moins facile à trouver.

Installez l'identification a deux facteurs sur votre site. Cela donne un code qui change chaque minute en plus de saisir le mot de passe, ce qui complique énormément la connexion. Il faut, et le mot de passe, et le code qui change chaque minute. Si vous n'avez pas le QCode qui génère le code, cela devient quasi impossible de vous connecter.

Cela ne limite en rien vos lecteurs pour s'inscrire à votre newsletter. Cela ne limite que les tentatives de connexion à votre site.

Limitez l'accès aux répertoires sensibles

Si vous essayez d'accéder au répertoire wp-admin de ce blog pour tenter de vous connecter, vous tomberez sur un message d'erreur vous indiquant que vous n'avez pas le droit d'y accéder. Du coup cela ne vous donne pas la possibilité de tenter de vous connecter et évite donc les attaques de force brute.

Cela ne limite en rien vos lecteurs pour s'inscrire à votre newsletter. Cela ne limite que les tentatives de connexion à votre site.

C'est très simple à mettre en place. Tous les Fournisseurs d'Accès Internet (FAI) accordent une IP fixe afin de vous faciliter la sécurisation de vos accès internet (sauf Orange et donc les accès non dégroupés auront aussi le problème peut-importe leur FAI). Il suffit donc de n'accorder un accès à ce répertoire qu'à votre (ou vos) IP. Pour cela rien de plus simple, il suffit de placer un fichier dans le répertoire wp-admin.

Nom du fichier : .htaccess (n'oubliez pas le point[.] en début de nom)

Son contenu :

AuthUserFile /dev/null
AuthGroupFile /dev/null
AuthName "Access Control"
AuthType Basic
<LIMIT GET>
order deny,allow
deny from all
allow from 127.0.0.1
allow from xxx.xxx.xxx.xxx
</LIMIT>

Les 4 premières lignes limitent l'accès au répertoire, mais sans accès par nom d'utilisateur et mot de passe. Le second bloc refuse l'accès à tout le monde sauf les IP contenues sur les ligne "allow from". Créez autant de ligne "allow from" que nécessaires (une par IP devant accéder au répertoire). Remplacez évidemment les xxx.xxx.xxx.xxx par votre propre IP.

Comme je voyage beaucoup, ce qui fait que j'ai des IP très variables, j'ai donc gardé la possibilité de supprimer le fichier à distance afin de pouvoir me connecter d'où je veux, puis je recréer le fichier de la même façon pour réactiver la protection.

Pour le reste des répertoires je vous renvois vers un ancien article où j'ai développé ce problème en détail : "Sécurisez vos site Internet"

En conclusion

Les nouvelles lois du RGPD vous rendent responsable en cas de piratage des données de votre site. Il faut donc que vous fassiez le maximum.

Posts Similaires
Passez les liens des commentaires WordPress en Dofollow

Il est possible de passer les liens des commentaires Wordpress en "dofollow" pour motiver vos visiteurs a être plus actif sur votre blog. Je vous montre comment le faire sans plugin supplémentaire.

Google Web Fonts pour rendre votre site plus unique

Google Web Fonts est un outil qui vous permet de personnaliser votre site en utilisant des fontes spécifiques. Cet outil est compatible avec tous les navigateurs et facile à implanter.

Ouvrir les liens des commentaires WordPress dans une nouvelle fenêtre

Ne perdez plus de visiteurs. Ouvrez les liens des commentaires Wordpress dans une nouvelle fenêtre. Les liens qui ne pointent pas vers votre site s'ouvrent dans une nouvelle fenêtre en ajoutant une fonction dans le fichier functions.php

A propos de

Consultant en informatique et concepteur de sites Internet.

Il a travaillé pendant plus de quinze ans pour une multinationale dans le secteur de l'ingénierie Informatique.

Durant ces années, il a participé à des projets sur les systêmes de facturation et la conception des sites Internet de différentes Banques et opérateurs téléphonique à travers le monde

Senior Analyst Programmer/Team Leader, il a participé et dirigé des projets sur les plus gros clusters d'Europe.

Il habite à Paris, en ile de France .

Le Blog :

Vos Commentaires pour "Comment protéger votre site wordpress"