WordPress est-il sûr ? Pas vraiment, car il présente un certain nombre de vulnérabilités graves. Et comme plus de 28% de l'Internet fonctionne actuellement avec WordPress, il est une cible de choix pour les attaques. La bonne nouvelle, c'est que les principales vulnérabilités peuvent être facilement éliminées.
Ce qui est bien avec WordPress, c'est que tout le monde peut vraiment l'utiliser. En fait, il suffit d'une connexion Internet et tu peux commencer. Il en va tout autrement de la sécurité de WordPress. Peut-être justement parce que A cause de la facilité d'utilisation, tous les utilisateurs ne se préoccupent pas de la sécurité intrinsèque de WordPress.
Mais dans tous les cas, en raison de ses grands atouts - l'incroyable éventail de fonctionnalités et les designs variés - WordPress a tendance à être très peu sûr. La construction modulaire offre de nombreux points d'attaque. Et les hackers en profitent bien sûr. Et ce, de manière automatisée, 24 heures sur 24, 365 jours par an.
Mais ne t'inquiète pas : ces faiblesses intégrées de WordPress peuvent être facilement éliminées. Et pour commencer, sans plugin de sécurité supplémentaire.
Je ne veux pas te dissuader d'utiliser ton plugin de sécurité. Il peut même être très utile. Mais la sécurisation de ton site WordPress ne s'arrête pas à son installation. Et avant de te lancer dans des combats d'ombres avec des pseudo-menaces, il est plus judicieux de compenser les faiblesses de base de WordPress.
En particulier, nous parlons aujourd'hui de
- la zone d'administration et pourquoi elle est si vulnérable
- les faiblesses de la structure modulaire de WordPress
- le rôle de l'hébergement dans la sécurité de base de ton site
"Mais mon site n'est pas intéressant pour les pirates".
Ne te trompe pas : cette hypothèse est tout simplement fausse. Chaque site WordPress est précieux pour les attaquants. Par exemple, en tant qu'attrape-spam, partie d'un botnet ou plateforme publicitaire pour des sites de phishing.
Et en cas de doute, l'attaquant se fiche complètement de savoir si ton site est petit, nouveau ou peu visité. De toute façon, ce sont toi et ton entreprise qui en souffriront. Il peut arriver que ta newsletter soit classée comme spam, que les utilisateurs soient avertis de ne pas visiter ton site et que ton classement Google en souffre parce que ton site est sur une liste noire.
Ce que je veux dire, c'est que rien qu'en raison de la popularité et de la diffusion de WordPress, les sites WordPress sont des cibles faciles pour les attaques. Et ce, indépendamment de leur contenu et de leur objectif.
La zone admin de WP est particulièrement vulnérable
La page de connexion est accessible par défaut via le suffixe "wp-admin". C'est pourquoi elle est très souvent la cible d'attaques - par exemple les attaques dites de force brute. Ces attaques font partie des piratages les plus fréquents contre les sites WordPress. Elles sont en effet très faciles à automatiser. Lors d'une attaque par force brute, le pirate essaie en principe de deviner la bonne combinaison du nom d'utilisateur et du mot de passe. Si le mot de passe est faible ou si la zone de connexion n'est pas protégée, il peut arriver qu'une attaque par force brute réussisse - et que le pirate puisse se connecter avec succès à ton WP - ou que l'arrivée massive de tentatives de connexion paralyse ton site.
Wordfence, le célèbre fabricant du plugin de sécurité du même nom, a enregistré en moyenne 34 millions d'attaques par force brute rien qu'au mois de mars - et cela chaque jour. En comparaison, les attaques dites complexes, c'est-à-dire celles qui exploitent des failles de sécurité spécifiques, se situent à un niveau de 3,8 millions d'attaques par jour.

Mais comme Wordfence ne compte bien sûr que les attaques qui ont été bloquées par son propre logiciel, le nombre de cas non recensés est encore plus élevé.
Mais la bonne nouvelle, c'est que même si l'attaque de la zone d'administration WP est très facile et peut être rapidement automatisée, les mesures de protection contre cette attaque sont très simples. Pour sécuriser ton espace WP-Admin, tu peux ériger des barrières de protection à trois endroits :
- Au niveau de WP, par des mots de passe forts
- Lors de la connexion elle-même, en limitant les tentatives de connexion
- Avant de se connecter, par une liste noire
1) La vieille rengaine : des mots de passe forts
Les attaques par force brute sont des attaques très stupides. En principe, elles ne font que deviner. C'est pourquoi un mot de passe fort peut suffire à faire échouer les attaques. Alors, soyons clairs : le mot de passe fort est obligatoire. Il s'agit notamment de : Lettres, chiffres, caractères spéciaux et lettres majuscules et minuscules. Et bien sûr, l'authentification bidirectionnelle a aussi un sens.
ASTUCE : Avec les gestionnaires de mots de passe, il est facile non seulement de créer des mots de passe sûrs, mais aussi de les gérer. Les ordinateurs Apple offrent par exemple une possibilité pratique de gérer tes mots de passe hors ligne grâce au programme "Gestion de trousseau de clés". Il te suffit de te souvenir d'un mot de passe principal (qui doit bien sûr être le plus complexe possible). Les programmes de gestion des mots de passe basés sur le cloud, comme 1Password, LastPass ou X-Key Pass, fonctionnent de la même manière.
2) Limiter le nombre de connexions
On peut le voir de manière impressionnante dans les chiffres de Wordfence : Les attaques par force brute sont les attaques les plus fréquentes sur les sites WordPress. La probabilité que ton site soit victime d'une telle attaque est donc très élevée. Et pour que le nombre élevé de tentatives de connexion ne surcharge pas inutilement ton site, il existe la possibilité de les limiter.
Une IP sera par exemple bloquée pendant un certain temps après trois tentatives infructueuses. Si elle dépasse à nouveau la limite, la période de blocage augmente successivement. Ainsi, tu limites très rapidement le nombre de tentatives possibles de telle sorte que l'attaque devient inutile.
En fonction de la faiblesse du seuil de blocage, cette méthode peut également protéger contre une attaque avec des IP changeantes. Le moyen le plus simple de protéger ta zone de connexion est d'utiliser des plugins. Il existe par exemple WP Limit Login Attempts, Verrouillage de la connexion ou bien l'un des principaux plugins de sécurité comme Sucuri, Wordfence ou All in One WP Security. Les pages des clients Raidboxes sont déjà équipées d'une protection Brute Force sur le serveur. Un plugin supplémentaire n'est donc pas nécessaire ici.
3) Mise sur liste noire
Les employés des entreprises de sécurité comme Sucuri ou Wordfence passent une grande partie de leur temps de travail à analyser les attaques. Ils publient également ces analyses à intervalles réguliers. L'un des aspects les plus importants de ces rapports est régulièrement l'origine d'une IP. En effet, dans certains pays se trouvent des serveurs qui conduisent des attaques particulièrement fréquentes.
Un blacklistage des IP correspondantes a donc tout son sens. Surtout si la région n'est pas pertinente pour ton groupe cible. Tu peux ainsi repousser efficacement les attaques avant qu'elles n'atteignent ton site.
Tu peux soit créer toi-même de telles listes noires en les implémentant au niveau du serveur, soit utiliser un plugin de sécurité avec une fonction correspondante.
WordPress obsolète
WordPress est un système modulaire. Il se compose du core, c'est-à-dire du logiciel de base, des plugins et des thèmes. L'un des plus grands dangers pour les installations WP vient du fait que de nombreux utilisateurs ne mettent pas régulièrement à jour leur système WordPress.
Les raisons sont diverses et variées. Elles vont de l'incompatibilité des plugins et des thèmes à l'ignorance ou au manque de temps pour une mise à jour.

En février 2017, une faille de sécurité dans la version 4.7.1 de WordPress a été révélée et les utilisateurs de WordPress ont été appelés à passer à la version 4.7.2 le plus rapidement possible.
En très peu de temps, cette annonce a provoqué des attaques massives sur les sites WordPress (car la faille n'était pas encore connue avant l'annonce officielle). Les fabricants de logiciels de sécurité fournissent à nouveau des chiffres à ce sujet : en l'espace de quelques jours seulement, un total de 1,5 à 2,5 millions d'utilisateurs ont été touchés. Deux millions de sites ont été piratés. C'est un employé de Wordfence qui a découvert la faille de sécurité.
Si l'on se souvient qu'actuellement Plus de 28% de la population de l'ensemble de l'Internet est basé sur WordPress, on peut se faire une bonne idée de ce qui pourrait se passer si une telle faille devait passer inaperçue. Il est donc conseillé d'automatiser ou de faire automatiser les mises à jour de WordPress Core.
Cela vaut principalement pour les mises à jour mineures, c'est-à-dire les numéros de version à trois chiffres, par exemple 4.7.4. Il s'agit des "versions de sécurité et de maintenance" et elles doivent toujours être installées le plus rapidement possible. Pour les versions plus importantes, par exemple de 4.7 à 4.8, la situation est un peu différente : les mises à jour se concentrent sur les fonctionnalités et l'expérience utilisateur.
Plugins et thèmes obsolètes
Ce qui est valable pour le cœur de WordPress l'est bien sûr aussi pour les plugins et les thèmes : les versions obsolètes des plugins recèlent presque toujours des failles de sécurité - et elles sont évitables.
L'Office fédéral de la sécurité des technologies de l'information (BSI) est du même avis, selon une étude de sécurité sur les systèmes de gestion de contenu. Les données du BSI concernent la période de 2010 à 2012. 80% des vulnérabilités officiellement signalées peuvent être attribuées à des extensions - donc dans la plupart des cas à des plugins.
Une recherche d'exploits à l'aide de ExploitsDatabase a permis de trouver plus de 250 exploits pour WordPress. La plupart des exploits pour les plugins WordPress ont été enregistrés ici.
- BSI (2013) : "Etude de sécurité des systèmes de gestion de contenu (CMS)".
Dans la pratique, les plugins sont un point d'attaque privilégié pour les pirates. Et avec plus de 50 000 extensions dans le répertoire officiel des plugins de WordPress, c'est aussi un domaine très productif. Les failles dans le code des plugins constituent le point de départ de telles attaques.
Il est important de comprendre ici : De telles failles existeront toujours. Un système sûr à 100% n'existe tout simplement pas. Et : l'absence de mises à jour d'un plugin ou d'un thème ne signifie pas automatiquement qu'il n'est pas sûr. Même si la fréquence des mises à jour est un bon indicateur de la qualité du support d'un fabricant. Mais il se peut tout aussi bien qu'aucune faille de sécurité n'ait été découverte jusqu'à présent.
Mais si l'on en découvre, le fournisseur du plugin fournira (espérons-le) une mise à jour qui comblera la lacune. S'il ne le fait pas, les injections SQL ou le Cross Site Scripting (XSS) sont par exemple possibles. Dans le premier cas, les pirates manipulent la base de données de ton site. Ils peuvent par exemple créer de tout nouveaux utilisateurs avec des droits d'administration et infecter ton site avec des codes malveillants ou le transformer en une machine à spam.
Les attaques XSS consistent essentiellement à placer du JavaScript sur ton site. Ainsi, un attaquant peut par exemple insérer des formulaires sur ton site pour voler les données des utilisateurs. De manière totalement discrète, avec un cryptage SSL et dans un environnement de confiance.
Et parce que les plugins et les thèmes offrent de multiples points d'attaque, tu devrais toujours faire attention au nombre de plugins et ne pas les laisser désactivés, mais les désinstaller réellement lorsque tu n'en as plus besoin.
Hébergement partagé
WordPress présente ces inconvénients de manière inhérente. Mais comme ton site doit être mis en ligne d'une manière ou d'une autre, l'hébergement est également un aspect important de la sécurité. Comme la sécurité et l'hébergement sont des sujets très complexes et variés, je ne parlerai ici que de l'inconvénient majeur de l'hébergement partagé. Cela ne signifie pas non plus que je veuille te dissuader d'utiliser l'hébergement partagé. C'est très logique, surtout du point de vue du prix. Mais l'hébergement partagé présente un inconvénient majeur que tu dois connaître.
En effet, dans le cas de l'hébergement partagé, plusieurs sites se trouvent sur un seul et même serveur. Les pages se partagent également l'adresse IP. Cela signifie que l'état et le comportement d'un site peuvent influencer négativement tous les autres sites sur le serveur. Cet effet est appelé Bad Neighbor Effect et se rapporte par exemple au spamming. En effet, si une page sur ton serveur fait en sorte que l'IP se retrouve sur une liste noire, cela peut également affecter ton offre.
De plus, cela peut entraîner une surutilisation des ressources, par exemple si l'un des sites sur le serveur est impliqué dans une attaque DDoS ou est touché par une attaque massive. La stabilité de ton offre dépend donc toujours, dans une certaine mesure, de la sécurité des autres sites sur ton serveur.
Pour les projets WP-WordPress gérés de manière professionnelle, un serveur virtuel ou dédié est donc tout à fait logique. Bien entendu, les concepts de sécurité des hébergeurs comprennent également des solutions de sauvegarde, des pare-feux et des scanners de logiciels malveillants, mais nous en parlerons plus en détail ailleurs.
Conclusion
WordPress n'est pas sûr. Et ce, en raison de sa structure modulaire. Sa plus grande force peut donc devenir sa plus grande faiblesse. La bonne nouvelle, c'est que tu peux facilement contourner cette faiblesse quasi inhérente. En principe, tu n'as pas besoin de faire plus d'efforts pour la gestion des utilisateurs et la création de mots de passe ainsi que pour les mises à jour.
Bien sûr, ces mesures ne transforment pas encore ton site en Fort Knox. Mais elles sont la pierre angulaire de ton concept de sécurité. Si tu ne les prends pas en compte, elles peuvent rendre caduques toutes les autres mesures de sécurité. Et chaque utilisateur de WordPress peut influencer ces aspects de manière indépendante. C'est pourquoi il est si important que tu en sois toujours conscient.