WordPress propulse aujourd’hui 25% du WEB mondial, c’est d’ailleurs pour cette même raison qu’il est victime de son propre succès et est très régulièrement la cible des cyber-criminels. De plus notre très grande communauté d’extensions et thèmes forme ainsi un melting-pot de codes qui ne s’avère pas souvent être de la {code=poetry}, le rendant de cette manière encore plus particulièrement vulnérable.
Il faut donc redoubler d’efforts pour sécuriser WordPress afin de repousser les envahisseurs et ainsi profiter sereinement de son site. Je vais vous donner mes astuces pour sécuriser un site, sans forcément y consacrer beaucoup de moyen financier, temporel et/ou technique.
Quel que soit le projet, grand, petit, moche ou beau, je mes toujours en place ce « package » d’extensions qui vont vous positionner dans le top, niveau sécurité.
1 – Sécuriser WordPress par des extensions
Analyse tout le trafic du site et bloque ainsi les requêtes malveillantes du site.
Il faut juste l’installer et c’est fini 😉
Il va principalement changer les formulaires de connexion de monsite/wp-login en quelque chose de plus personnel monsite/ma-page-connexion. Au delà de l’effet esthétique, ceci va permettre de réduire le nombre d’attaques bruteforce car la page de connexion ne sera plus celle par défaut.
Son paramétrage se déroule en deux étapes :
1 – Personnalisation des urls de login :
On modifie donc les urls comme bon nous semble puis on choisit les options qui nous paraissent les plus pertinentes.
/ ! \ S’il vous plait ne mettez pas l’option « Ne rien faire, rediriger vers la nouvelle page de connexion ». Un robot qui voudrait vous brute force par exemple tapera dans monsite/wp-login.php et sera automatiquement redirigé vers la nouvelle url, soit monsite/my-custom-login. On aura donc installé ce plugin pour rien / ! \
2 – Mise en place des règles .htaccess
Il faut s’assurer que le plugin peux écrire dans votre .htaccess, sinon recopier, comme indiqué, les règles nécessaires à son bon fonctionnement.
Limite le nombres de tentatives de connexion sur le page de connexion, et dans le cas de trop nombreuses tentatives (robots) va ajouter les adresses IP en blacklist.
Sucuri est une extension indispensable et complète pour sécuriser WordPress. Il n’y a pratiquement rien à faire, juste s’assurer que tout est bien activé dans la page générale des options.
A savoir que la version payante offre une protection serveur contre le DDOS appelée « Hardening » et qui va rediriger les attaques sur un autre serveur (expliqué ici). Il y a aussi la possibilité de réaliser des scan du site à l’affut de « virus » et/ou fichiers malveillants.
Je fait aussi toujours attention à bien régler les notifications qui peuvent vite fait devenir du spam plus qu’autre chose.
J’en parlais dans mon article sur comment mettre le XMLRPC KO, que si vous ne faites pas de contribution par le biais d’un smartphone et/ou tablette , vous n’avez aucune raison de laisser votre xmlrpc accessible.
Allez voir comment le désactiver et ainsi sécuriser WordPress.
2 – Des bonnes pratiques pour sécuriser WordPress
Dans le codex de WP, il est précisé qu’un bon développement doit respecter des critères :
- Sanitization : traiter des données récupérées pour les rendre sécurisées et réutilisables pour une sauvegarde en BDD.
- Escaping : transforme des données de la BDD pour les rendre utilisables par le biais de fonctions permettant de contextualiser l’affichage.
- Nonce : système de vérification par code unique utilisé en général lors de lancement d’actions
Ce sont donc des éléments qui font qu’un plugin et/ou thèmes est de bonne qualité concernant la sécurité.
3 – S’assurer de l’intégrité de son site
Lors du Word Camp Paris 2016, j’ai réalisé une conférence sur GIT & WP et j’en étais amené à dire que GIT peut être un moyen de pour sécuriser WordPress, comment ?
Le fait de versionner son site permet de :
- suivre les modifications qui y auraient été réalisées sans passer par GIT (git status) lors d’un hack entre autre
- réaliser un nettoyage rapidement (git clean -df & git checkout — .)
- mettre une version antérieure fonctionnelle, au besoin (git checkout {tag_or_commit_to_reset}
Bref, nous l’avons vu il est possible, même de manière rapide et facile, de sécuriser WordPress et rendre son site moins vulnérable.
N’hésitez donc pas à me partager vos expériences, feedbacks et surtout me dire si vous utilisez d’autres extensions afin de sécuriser WordPress.