Un WordPress vraiment protégé

Sécuriser WordPress, mythes et réalités

La sécu­ri­té, ce n’est pas mon métier. Mais du haut de mes quinze ans de Word­Press sans pira­tage, je me suis dit que je pouvais faire le point sur la sécu­ri­té de Word­Press, les failles réelles et les erreurs des débu­tants. Enfin, disons que je vais donner un point de vue très person­nel sur la ques­tion qui devrait aider les amateurs à se faire une idée sur les bonnes pratiques.

Le strict minimum pas vraiment utile

Word­Press est-il une passoire comme les anti-Word­Press se plaisent à le répé­ter sur les forums de déve­lop­peurs ? Évidem­ment que non puisque sinon la plupart des sites tour­nant sous le moteur Word­Press seraient infec­tés. Un Word­Press tout nu ne craint rien tant qu’il est à jour (on ne va pas comp­ter les failles au niveau de l’hébergement ou un ordi­na­teur vérolé).

La seule faiblesse éven­tuelle (mais très rela­tive à mes yeux), toujours souli­gnée sur le Web, c’est la page login. Elle est expo­sée aux attaques des bots qui cherchent à devi­ner iden­ti­fiant et mot de passe par essais succes­sifs. Évidem­ment, si vous avez un mot de passe fort non utili­sé ailleurs, il est impos­sible pour les bots de le devi­ner rapi­de­ment, surtout qu’ils sont fainéants et listent les iden­ti­fiants et mots de passe déro­bés qui traînent sur le Web. Cette faiblesse est donc à rela­ti­vi­ser si vous avez choi­si un mot de passe fort non utili­sé ailleurs.

securite echopluigins porte login

Pour contrer cette menace, la réponse que l’on trouve partout depuis des années c’est «dépla­cer l’URL de la page de login ». La seconde, c’est de limi­ter les tenta­tives de connexion. Fonda­men­ta­le­ment, ce ne sont pas de mauvaises idées mais, para­doxa­le­ment, elles fragi­lisent les sites. Pour­quoi cela ? C’est qu’une fois instal­lée une exten­sion de dépla­ce­ment URL ou de blocage, beau­coup d’utilisateurs amateurs sont persua­dés qu’ils ont fait le plus dur et que leur site est parfai­te­ment proté­gé. C’est évidem­ment faux puisque le vrai et durable danger pour un site Word­Press, ce sont les exten­sions et les thèmes qui amènent d’éventuelles failles de sécu­ri­té problé­ma­tiques (déve­lop­peur incons­cient, thème pas mis à jour…). 

Le second problème que je vois avec le dépla­ce­ment de l’URL du login, c’est que l’on modi­fie un compor­te­ment par défaut de Word­Press et je consi­dère toute modi­fi­ca­tion de ce type inop­por­tune car elle veut géné­rer des problèmes de compa­ti­bi­li­té avec d’autres exten­sions – et ne parlons pas des gens qui oublient au bout d’un moment quelle est l’URL du login.

À rete­nir : dépla­cer l’URL de login ou bloquer les attaques à ce niveau n’est pas suffi­sant pour sécu­ri­ser son WordPress.

Bouts de code

Un autre mantra qui peut être contre­pro­duc­tif pour les gens qui se mettent à Word­Press, c’est la phobie des exten­sions. « Je ne veux pas ajou­ter une exten­sion, je préfère un bout de code, c’est plus léger ». C’est évidem­ment très rela­tif puisque si le bout de code fait la même chose que l’extension, vous n’y gagnez rien. Dans le cas de la sécu­ri­té, ça se traduit par une accu­mu­la­tion de bouts de code qui servent à tout : ça va de la sécu­ri­sa­tion du très impor­tant fichier wp-config.php au dépla­ce­ment entier des fichiers vers un réper­toire secret. Toutes ces ficelles ont un point commun : elles commencent à dater. Elles datent très exac­te­ment du temps où il n’y avait pas d’extension de sécu­ri­té complète pour Word­Press. Les utili­sa­teurs en étaient réduits à cher­cher des recettes sur le Web. Person­nel­le­ment, je consi­dère qu’elles n’ont pas de néces­si­té. Si un pirate peut avoir accès à wp-config.php ou plus géné­ra­le­ment au serveur où sont entre­po­sés vos fichiers, il a la possi­bi­li­té de nuire qui dépassent l’accès aux fichiers cachés. Ces bouts de code ont un autre incon­vé­nient : en cas de problème sur le site, il faudra faire une véri­fi­ca­tion sur tous ces ajouts.

À rete­nir : reco­pier des bouts de code pour sécu­ri­ser son site est une solu­tion obso­lète et contraignante

Faisons simple

Je ne connais qu’une seule et bonne méthode pour sécu­ri­ser un site : instal­ler une (et une seule) solu­tion de sécu­ri­té/­pare-feu.

Les exten­sions de sécu­ri­té protègent complè­te­ment un site sans faille de sécu­ri­té. En cas de faille (exten­sion ou thème mal codé, ordinateur/​smartphone véro­lé, héber­geur pira­té), il ne va pas obli­ga­toi­re­ment pouvoir empê­cher le pira­tage. Mais il saura vous préve­nir de tout évène­ment suspect.

Elles doivent donc (et les complètes le font) :

  1. préve­nir d’un évène­ment lié à la sécu­ri­té – chan­ge­ment de statut d’une exten­sion (instal­lée, acti­vée, etc), utili­sa­tion d’un fichier php récent, mise à jour de règles de sécu­ri­té lorsqu’une faille est décou­verte sur une exten­sion, aver­tis­se­ment lorsqu’une exten­sion ou un thème néces­site une mise à jour immédiate
  2. proté­ger la page login
  3. gérer les règles de sécu­ri­té de base liées à WordPress
  4. permettre la compa­rai­son suite à une modi­fi­ca­tion d’un fichier – c’est une possi­bi­li­té que je n’active pas parce que ça signi­fie que vous doublez l’espace serveur néces­saire et je ne peux pas me le permettre
securite echoplugins coffre

Voici les trois extensions que je conseille pour des raisons plus ou moins valables

1. NinjaFirewall

Moi aussi j’ai instal­lé des petites exten­sions de sécu­ri­té et rajou­té des bouts de code en pensant que ça suffi­sait bien comme ça. Et j’avais une peur bleue de me faire bloquer hors de mon site par une exten­sion de sécu­ri­té. Mais c’était à une autre époque, un autre temps… À force de lire des choses au sujet du pira­tage, je me suis déci­dé à sauter le pas. Ninja­Fi­re­wall a été un choix évident parce qu’elle est consi­dé­rée comme l’extension de sécu­ri­té qui impacte le moins la vitesse d’une instal­la­tion Word­Press. Elle est aussi consi­dé­rée comme très effi­cace (cf. plus loin).

2. SecuPress (pas testée)

Déve­lop­pée par une partie de l’équipe de WP Rocket, on peut imagi­ner que c’est du sérieux. De plus, déve­lop­pée par une équipe fran­çaise, ça peut aider en cas de problème. Et c’est une bonne raison pour la préfé­rer à la concurrence.

3. Wordfence (pas testée)

La plus popu­laire des exten­sions de sécu­ri­té. Diffi­cile de l’écarter de cette liste mais elle est répu­tée pour son poids sur le fonc­tion­ne­ment de WordPress.

Atten­tion, il ne faut instal­ler qu’une seule exten­sion de sécu­ri­té à la fois. Sinon les risques d’interférence sont trop impor­tants et vous risquez de voir votre site tout cassé.

Complément indispensable

Le complé­ment indis­pen­sable à l’extension de sécu­ri­té, c’est évidem­ment l’extension de sauve­garde (backup). La base de données en prio­ri­té et de manière quoti­dienne. Et les fichiers, par FTP et moins fréquemment.

Et le WAF de mon hébergeur ?

De nombreux héber­geurs proposent à leurs clients une protec­tion sous forme de WAF (Web Appli­ca­tion Fire­wall) qui est une solu­tion de sécu­ri­té qui protège toutes les appli­ca­tions que vous installez.

J’y vois un para­doxe : alors que vous êtes seul respon­sable de ce qui se passe sur votre site et que votre héber­geur ne vous aide­ra a prio­ri que pour des problèmes liés aux serveurs, il vous ajoute une couche de sécu­ri­té que vous contrô­lez plus ou moins.

Mon expé­rience avec le WAF de mon héber­geur Always­da­ta est pour le moins miti­gée. Always­da­ta propose diffé­rents types de WAF dont un desti­né aux instal­la­tions de Word­Press. Avoir le choix est une bonne chose parce que l’on peut consi­dé­rer que chaque appli­ca­tion a des besoins et des contraintes diffé­rentes. Le WAF en ques­tion s’est révé­lé très effi­cace. Voire trop effi­cace. Instal­lé alors que Guten­berg en était à ses prémices, il bloquait carré­ment les fonc­tion­na­li­tés du nouveau moteur d’édition de Word­Press. Et je passais mon temps à désac­ti­ver des règles du WAF pour faire fonc­tion­ner correc­te­ment les exten­sions que j’installais. Ça n’avait plus aucun sens. Une solu­tion de ce type ne devrait pas rajou­ter des contraintes dans la gestion de votre site.

Si il est utile que l’hébergeur installe des protec­tions au niveau des serveurs pour contrer des attaques qui les visent – je pense notam­ment aux attaques DoS – je ne vois pas l’intérêt de rajou­ter une couche exté­rieure à Word­Press que vous ne pouvez pas confi­gu­rer suivant vos besoins. De plus, les exten­sions mettent à jour en temps réel leurs règles de sécu­ri­té en fonc­tion des failles décou­vertes. Ce n’est pas le cas des WAF.

La vraie faille WordPress dont personne ne parle

Assez étran­ge­ment, je ne lis jamais rien sur ce qui me paraît un grave problème de sécu­ri­té lié aux exten­sions de Word­Press. Lorsque vous instal­lez une exten­sion, vous êtes préve­nu lorsqu’une mise à jour est dispo­nible. Mais jamais lorsque cette exten­sion est reti­rée du dépôt offi­ciel. Or, une des raisons les plus probables de ce retrait, c’est la décou­verte d’une faille de sécu­ri­té pas corri­gée. Si bien que vous pouvez traî­ner une exten­sion problé­ma­tique dans votre instal­la­tion pendant des années sans même savoir qu’elle a été reti­rée du dépôt. La seule façon que je connaisse de surveiller l’âge des exten­sions instal­lées est l’extension Vendi Aban­do­ned Plugin Check mais même elle ne vous dira pas si l’extension est reti­rée du dépôt.

dossier securite echoplugins porte close

Trop tard, mon WordPress a été piraté !

Si c’est le cas, il vous faut le nettoyer de fond en comble. Ne faites pas confiance aux exten­sions qui se vantent de nettoyer votre site. Elles détec­te­ront des fichiers problé­ma­tiques mais il est impos­sible de savoir si elles ont vrai­ment tout nettoyé. Car il faut nettoyer les fichiers suspects dans tous les réper­toires et les entrées suspectes dans la base de données. C’est un travail de longue haleine qui oblige à mettre les mains dans le cambouis et vous obli­ge­ra à un peu d’autoformation si FTP ou phpMyAd­min ne veulent rien dire pour vous – dans ce cas-là, un peu de lecture utile ici https://​www​.echo​des​plu​gins​.li​-an​.fr/​t​u​t​o​r​i​a​u​x​/​m​o​n​-​p​r​e​m​i​e​r​-​w​o​r​d​p​r​e​ss/.

Cet excellent tuto­riel va vous permettre de faire tout ce travail pas à pas : https://​wpfr​.net/​s​u​p​p​o​r​t​/​s​u​j​e​t​/​s​o​l​u​t​i​o​n​s​-​d​e​-​d​e​p​a​n​n​a​g​e​-​p​o​u​r​-​u​n​-​s​i​t​e​-​h​a​c​k​e​-​p​i​r​a​te/


La suite unique­ment pour les curieux


Que valent les extensions de sécurité WordPress ? (version complotiste)

securite comparatif plugin
plus troll que ça, tu meurs

Impos­sible pour un clam­pin moyen de vrai­ment tester une exten­sion de sécu­ri­té. On peut comprendre les fonc­tion­na­li­tés mais est-ce que c’est bien program­mé, est-ce que ça pense à tout ? Heureu­se­ment, il y Plugin­Vul­ne­ra­bi­li­ties pour nous dire la véri­té vraie.

Vous ne trou­ve­rez pas d’extension Plugin Vulne­ra­bi­li­ties sur le dépôt. Elle en a été reti­rée en 2017 pour compor­te­ment dépla­cé : le déve­lop­peur faisait la réclame de son produit en déni­grant la concur­rence. Et c’est toujours le cas sur le site offi­ciel https://​www​.plugin​vul​ne​ra​bi​li​ties​.com/. À l’en croire, si Plugin Vulne­ra­bi­li­ties protège un site à 100%, la concur­rence fait au mieux… 36%. Et, hour­ra, c’est NinjaFirewall.

Il y a évidem­ment un côté risible à ces chiffres puisque si c’était réel­le­ment le cas, seuls les sites proté­gés par Plugin Vulne­ra­bi­li­ties échap­pe­raient au pira­tage. Mais la lecture de leur blog est néan­moins instruc­tive si vous vous inté­res­sez à la sécu­ri­té de votre site. Leurs articles soulignent de manière éclai­rante les dysfonc­tion­ne­ments des sites plus connus d’analyse de sécu­ri­té ou même de l’équipe de gestion du dépôt (qui méri­te­rait un article à elle toute seule) ou d’Automattic. Vous y décou­vri­rez que l’installation d’Elemen­tor est décon­seillée vu les mauvaises pratiques de sécu­ri­té de cette exten­sion – dont plusieurs failles ont été décou­vertes récemment.

Est-ce que je conseille­rai leur produit ? Fran­che­ment, non. En dehors du prix prohi­bi­tif, le peu d’informations sur les options de leur pare-feu est pour le moins léger – l’extension gratuite se conten­tait d’informer des failles poten­tielles dans les exten­sions instal­lées. Ils proposent d’ailleurs une exten­sion pour navi­ga­teur qui fait le même travail et que je vais tester.

If you have found a spel­ling error, please, noti­fy us by selec­ting that text and pres­sing Ctrl+Enter.

Abon­­nez-vous par mail à l’Écho des Plugins
Vous rece­vrez un mail pour vous préve­nir de chaque nouvel article publié sur ce blog

Ceci peut vous intéresser

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Notifiez-moi les commentaires à venir via email. Vous pouvez aussi vous abonner sans commenter.

Ce site embarque des cookies pour vous offrir la meilleur expérience possible

Spelling error report

The following text will be sent to our editors: