Santé de WordPress : ce que wp-admin ne peut pas vous dire
WordPress est de loin ce qui s'installe le plus sur nos serveurs, et aussi ce que nous devons le plus souvent examiner quand quelque chose ne va pas. Au fil des années, nous avons mis au point une façon d'observer une installation de l'extérieur qui nous aidait beaucoup à l'assistance, et il nous semblait absurde de la garder pour nous. Nous l'avons donc intégrée à l'espace client, et elle est gratuite.
Commençons par dire ce qu'elle n'est pas : nous ne voulons pas vous répéter ce que wp-admin vous dit déjà. WordPress dispose de son propre écran de santé depuis la version 5.2, et il vous y signale déjà les mises à jour en attente. Vous le répéter serait du bruit, et tôt ou tard nous finirions par le contredire, ce qui est pire.
Nous avons fait l'inverse : vous dire ce qu'il ne peut pas savoir. Car wp-admin regarde depuis l'intérieur de l'installation, alors que nous regardons depuis le serveur.

Ce que nous savons sans rien vous demander
Pour chacun de vos sites, nous savons déjà quelle version de WordPress il utilise et avec quelle version de PHP il tourne, et vous le voyez dès l'ouverture de l'écran. Nous lisons ces informations une fois par jour avec un grep sur un fichier texte, sans rien lancer : cela ne consomme absolument rien sur votre compte.
Et ce que nous vérifions quand vous demandez l'audit
Quand vous ouvrez l'un de vos sites et demandez son audit, nous examinons quatre points que vous ne trouverez dans aucun tableau de bord WordPress.
Si les fichiers du cœur sont bien les fichiers officiels. Nous les comparons un par un avec la liste des sommes de contrôle publiée par WordPress.org. Un fichier modifié, ou un fichier en trop dans wp-admin ou wp-includes, n'a pas d'explication innocente. C'est l'une des signatures les plus nettes d'une intrusion, et WordPress ne peut pas la détecter de l'intérieur, car l'attaquant modifie justement les fichiers qui déclencheraient l'alarme.
Si un plugin actif n'est plus maintenu par son auteur depuis des années. C'est selon nous l'un des plus utiles, car dans wp-admin un plugin abandonné ressemble en tout point à un plugin à jour : comme il n'aura jamais de mise à jour en attente, il n'apparaît dans aucune liste d'avertissements. Nous savons d'expérience que c'est souvent par là que les attaquants entrent ; nous le vérifions donc sur wordpress.org et vous indiquons depuis quand personne n'y a touché.
S'il manque un correctif de sécurité de sa propre branche. Ce n'est pas la même chose que la sortie d'une nouvelle version majeure, et la distinction compte : le correctif de branche ne contient que des corrections de sécurité et ne change rien à votre site, alors que changer de branche peut affecter un vieux plugin. Les voir ensemble pousse à repousser les deux.
Ce que dit votre wp-config.php. Si le débogage est resté activé après la résolution d'une panne, si l'éditeur de code de wp-admin est toujours ouvert, ou si un mode maintenance resté en plan après une mise à jour empêche d'afficher votre site.

Nous ne nous contentons pas de vous le dire : vous pouvez corriger sur place
Un tableau de bord qui se contente de diagnostiquer nous semblait incomplet : il finit par n'être qu'un rapport qui vous laisse avec le problème. Chaque point relevé est donc accompagné du bouton qui le résout.
Depuis ce même écran, vous pouvez mettre à jour, activer, désactiver ou supprimer des plugins et des thèmes, appliquer le correctif de sécurité de la branche, désactiver l'éditeur de code, sortir le site du mode maintenance et fermer toutes les sessions ouvertes de votre WordPress. C'est ce qu'on fait après une intrusion pour expulser la personne entrée, et jusqu'ici il fallait nous le demander.
Pour la suppression, nous sommes un peu plus prudents et vous demandons confirmation, car c'est la seule action de la liste qui ne s'annule pas : les fichiers peuvent être réinstallés, mais la configuration que ce plugin a laissée dans votre base de données ne revient pas toute seule.
Réinstaller le cœur
Si les fichiers du cœur ne correspondent pas aux fichiers officiels, vous pouvez le réinstaller depuis le même écran. Nous réécrivons wp-admin, wp-includes et les fichiers PHP de la racine avec les fichiers officiels de votre version, sans toucher à votre wp-content ni à votre base de données : vos thèmes, vos plugins, vos fichiers envoyés et votre contenu restent exactement où ils sont. Avant d'écraser quoi que ce soit, nous enregistrons une copie du cœur actuel dans votre propre compte, au cas où.
Nous préférons vous prévenir avant plutôt qu'après : réinstaller le cœur ne guérit pas une intrusion. La porte dérobée se trouve justement souvent dans wp-content, où nous n'intervenons pas. Si cela vous est arrivé, écrivez-nous et nous regarderons cela avec vous. Nous préférons vous le dire plutôt que de vous laisser tranquille avec la porte ouverte.
Pourquoi un par semaine
L'audit se fait site par site, et un par semaine. Ce n'est pas de l'avarice de notre part, et l'explication nous semble raisonnable : cette analyse lance PHP dans votre propre compte et consomme votre CPU, celui-là même qui sert votre site. La lancer de nous-mêmes tous les jours sur toutes les installations reviendrait à dépenser vos ressources pour répondre à une question que vous n'avez pas posée.
Ce qui change d'un jour à l'autre, c'est-à-dire la version du cœur, nous le lisons déjà gratuitement et quotidiennement : vous l'avez sous les yeux sans rien attendre.
Et si vous préférez ne pas vous en occuper
Tout cela est gratuit et conçu pour que vous veniez, regardiez et cliquiez quand vous le souhaitez. Si vous préférez ne pas avoir à le faire, c'est Proactive+ : la différence ne tient pas à ce qu'on peut faire, mais à qui le fait et à quelle fréquence.