Attaques massives contre les sites sous WordPress

Depuis quelques mois, le nombre d’attaques ciblant les sites sous le CMS WordPress a augmenté de façon inquiétante.
L’objectif des pirates est de prendre le contrôle de ces sites en pénétrant dans leur espace d’administration pour bloquer, modifier ou détourner leurs contenus.

Selon des rapports récents, des milliers de sites sous WordPress (mais pas seulement) sont attaqués chaque jour dans le monde, avec des pics à 90 000 attaques enregistrées chez un seul hébergeur en avril 2013.

Ce type d’attaque a été baptisé « force brute ». Elle consiste en une multiplication de tentatives de connexions à votre compte administrateur grâce à des robots super-puissants capables de tester plusieurs centaines de combinaisons de chiffres et de lettres à la seconde. Couplée à ce que l’on appelle les « attaques par dictionnaire » qui consistent à utiliser des listings contenant des milliers de mots régulièrement utilisés par les propriétaires de sites, cette méthode est absolument redoutable.
Et si l’on sait que des concours de hacking (=piratage) sont régulièrement organisés sur notre belle planète, on commence à avoir des frissons dans le dos.

Voici quelques solutions pour contrer ces attaques et sécuriser le fruit de votre travail sur le Web

1- Personnalisez votre identifiant de connexion
Par défaut, à l’installation d’un WordPress, l’identifiant de l’administrateur est admin. Si vous ne le personnalisez pas, vous ouvrez d’ores et déjà une grande porte aux pirates puisque c’est la combinaison identifiant-mot de passe qui sécurise l’accès à votre espace administration.
Choisissez donc un identifiant bien à vous, et évitez d’y intégrer des termes faciles à deviner tels que admin, administrateur ou administrator, test, root, ou encore le nom de votre site, votre nom ou prénom.

2- Choisissez soigneusement votre mot de passe
Le décryptage de votre mot de passe sera rendu plus difficile si vous adoptez un mot de passe long (plus de 8 caractères), comportant des majuscules, des minuscules, des chiffres, des symboles (ponctuation, arobase, …) ou encore des caractères spéciaux (caractères accentués).
Vous pouvez utiliser un générateur de mot de passe. Il en existe plusieurs sur internet. Mirobolus utilise celui-ci : http://www.generateurdemotdepasse.com/

3- Changez votre mot de passe régulièrement
2 à 3 fois par an par exemple.

4- Installez une extension (=plugin) qui bloquera les tentatives répétées de connexion
Il existe plusieurs extensions pour WordPress, comme Limit Login Attempts (testé et approuvé par Mirobolus) ou Login LockDown. Au delà d’un nombre de tentatives de connexions que vous définissez (par exemple 3 ou 4 tentatives), ce type de module bloque l’accès au formulaire de connexion et vous alerte par email.
Cette fonctionnalité peut également être intégrée à une extension plus complète (voir ci-après).

5- Restez à jour
Veillez à disposer d’une version de WordPress à jour, et effectuez sans attendre les mises à jour de vos extensions.
Wordpress, comme tous les autres CMS, est analysé, décortiqué, pour y trouver des failles de sécurité. Les développeurs travaillent activement au colmatage de ces failles. Faites donc des visites de votre espace d’administration pour suivre les mises à jour disponibles de WordPress et de vos extensions. Les plugins que j’évoque plus loin offrent (entre autres choses) une fonctionnalité d’alerte de mises à jour.

6- Installez un bon plugin de sécurité
Il vous aidera notamment, grâce à des notifications par email, à être alerté lorsque :

  • votre WordPress ou l’un des modules installés réclame une mise à jour
  • des tentatives de connexion suspectes sont détectées
  • des modifications ont été effectuées sur des fichiers installés initialement

et bien d’autres choses fort utiles…
Ce type d’extensions réalise en outre des scans réguliers de vos fichiers, des surveillances de trafic en temps réel, permet de bloquer des adresses IP uniques, par famille ou encore par pays, vous indique la faiblesse de votre mot de passe,…
Je préconise le plugin Wordfence Security, très complet, ou All In One WP Security & Firewall, mais il en existe d’autres (WordPress Security Scan par exemple).

7- Pensez à sauvegarder votre base de données et les fichiers stockés sur votre serveur
Notez que les extensions citées plus haut permettent de programmer des sauvegardes à intervalle régulier. Vous pouvez également regarder du côté de WordPress Database Backup.
N’oubliez pas de rapatrier également les fichiers qui sont stockés sur votre serveur (grâce à un logiciel FTP). Conservés sur votre disque dur (après avoir lancé un scan complet avec Wordfence Security par exemple), ils pourront être rapidement remis en place après une attaque massive.

8- Demandez à votre prestataire web de réaliser quelques actions plus complexes :

  • modifier le nom de la page de connexion (la page /wp-login.php, ciblée par les robots)
  • bloquer l’accès à vos répertoires par le fichier .htaccess (comme /wp-content qui contient les données multimédia que vous avez ajoutées à vos articles),
  • sécuriser les fichiers sensibles : le fichier wp-config qui contient les paramètres de configuration de votre blog ; le fichier htaccess et les fichiers de configuration….
  • masquer la version de WordPress,
  • supprimer le fichier readme.html situé à la racine de votre site : il contient le numéro de version de WordPress,
  • changer le préfixe de votre base de données,…