Le mardi 20 octobre, quelqu'un a annoncé sur un forum public que deux failles graves de PHP allaient être dévoilées. PHP est le langage de programmation sur lequel roulent environ sept sites Web sur dix, dont ceux faits avec WordPress. Il se trouve donc aussi sous une bonne partie des sites de commerces, de cliniques et de restaurants du Canada atlantique. Ces failles permettaient à un inconnu d'exécuter son propre code sur un serveur Web sans même ouvrir de session. Une fois la fuite connue, les pirates savaient quoi chercher. PHP a donc devancé son correctif d'une journée et l'a publié le mercredi 21 octobre (Huntress, en anglais).
L'agence américaine de cybersécurité a demandé aux organisations d'appliquer le correctif immédiatement, et de mettre hors ligne leurs systèmes PHP si elles ne pouvaient pas le faire (CISA, en anglais). Le 26 octobre, elle a ajouté les deux failles, qu'on appelle maintenant php2shell, à sa liste de vulnérabilités utilisées dans de vraies attaques.
L'homme dont presque personne n'avait entendu parler
Sur une grande partie des serveurs Debian et Ubuntu, le correctif est arrivé par des paquets préparés par un seul homme. Ondřej Surý vit en République tchèque et dirige le développement DNS à l'Internet Systems Consortium, un organisme sans but lucratif. Dans ses temps libres, depuis plus de vingt ans, il transforme le code source de PHP en paquets prêts à installer, qu'un administrateur peut appliquer à des centaines de machines en une seule commande. C'est un bénévole, payé en dons (blue News, en anglais).
Cette semaine-là, il a aussi publié des correctifs pour PHP 7.4, une version si vieille que PHP lui-même ne la prend plus en charge, mais que bien des serveurs utilisent encore. Un développeur a raconté sur Reddit qu'il avait appris l'existence des failles à 2 h du matin et que tout était à jour à 3 h. Dans les 24 heures suivantes, Surý a reçu à peu près autant de dons qu'en une année normale.
Charlie Warzel, du magazine The Atlantic, l'a appelé le lendemain, et l'entrevue (en anglais) vaut la peine d'être lue au complet. Surý y paraît comme les meilleurs experts le sont souvent : calme, généreux quand vient le temps de donner le crédit aux autres, plus intéressé par le travail que par l'attention. Il a dit à Warzel que la semaine n'aurait vraiment été stressante que s'il avait été « sur un bateau au milieu de l'Adriatique ». L'entrevue se termine ainsi :
« Je leur recommanderais de s'en remettre aux experts. C'est ce que nous faisons tous en situation de crise : nous parlons aux experts et nous leur faisons confiance. Comptez sur les gens, sur le fait que ceux qui s'occupent de ces choses savent ce qu'ils font. Et c'est tout ce que nous pouvons faire. »
Pourquoi cette réponse compte encore plus aujourd'hui
C'est une réponse modeste, et c'est justement ce qui la rend juste. En pleine crise, personne ne lit le code source soi-même. On appelle la personne qui s'y connaît, on lui fait confiance et on la laisse travailler. Bien des serveurs ont été corrigés en quelques heures cette semaine-là parce que quelques personnes savaient exactement quoi faire, et le faisaient discrètement depuis des années.
L'IA rend cette vérité facile à oublier. Une fenêtre de clavardage répondra à n'importe quelle question sur PHP, les serveurs ou la sécurité, avec des phrases propres et assurées, et la plupart du temps elle aura à peu près raison. Ce qu'elle ne fera pas, c'est remarquer à 2 h du matin que votre site roule sur une vieille version dont personne ne vous a parlé, préparer le correctif et en répondre. L'IA est le pilote automatique. Il vous faut quand même un pilote. C'est tout l'argument de notre article sur pourquoi l'IA a besoin d'un pilote. Surý l'a mieux dit, et il venait de passer une semaine à le démontrer.
Nous irions même un peu plus loin. Ce qu'un projet d'IA laisse de plus utile à une petite entreprise, ce n'est pas l'outil. C'est une personne, qu'on peut nommer, qui comprend comment l'outil fonctionne, où il se trompe et comment l'éteindre. Les outils changent tous les deux ou trois ans. Le jugement de cette personne, lui, reste.
L'autre chose qu'il a dite
Surý a aussi dit à Warzel : « On ne peut pas continuer comme ça éternellement. » Lisez cette phrase à côté de la première. S'en remettre aux experts ne fonctionne que si l'on prend soin des experts : qu'ils soient payés, qu'ils aient du renfort et qu'ils ne soient pas seuls. Une grosse partie de la défense d'Internet, cette semaine-là, reposait sur les temps libres d'un bénévole, et il discute maintenant avec une entreprise de logiciels, Freexian, de qui pourrait reprendre le travail si un jour il ne le pouvait plus.
Les petites entreprises vivent le même problème en miniature. Le site Web, la tenue de livres, le nouvel outil d'IA : chacun dépend habituellement d'une seule personne qui sait comment il fonctionne. Souvent un pigiste, un neveu ou l'employé le plus enthousiaste. Tout va bien jusqu'au jour où cette personne est sur un bateau au milieu de l'Adriatique.
Quoi faire cette semaine
- Sachez qui s'occupe de votre site Web, par son nom. S'il est fait avec WordPress, il roule sur PHP. Demandez à cette personne si la version de PHP du serveur a été mise à jour après le 21 octobre. Les versions corrigées sont 8.5.12, 8.4.27, 8.3.36 et 8.2.35.
- Si la réponse est PHP 8.1 ou plus ancien, demandez quel est le plan. PHP ne prend plus ces versions en charge, et la CISA conseillait de les mettre hors ligne jusqu'à leur mise à jour.
- Nommez une personne de relève. C'est la même règle que dans notre article (en anglais) sur la gestion du changement dans une équipe de cinq : ce qui appartient à une seule personne s'arrête quand elle part en vacances.
- Payez les gens qui font tourner les choses, y compris ceux que vous ne voyez jamais. Surý accepte les commandites par GitHub.
Notre façon de travailler
Dans chacun de nos mandats, une personne approuve tout ce qui touche l'argent, la sécurité ou la réputation, et le mandat se termine par un guide d'exploitation en langage clair qui comprend l'interrupteur d'arrêt. Le but : quand quelque chose tourne mal à 2 h du matin, l'expert qui sait quoi faire fait partie de votre propre équipe, et vous connaissez son nom. Si vous ne savez pas qui joue ce rôle pour les outils que vous utilisez déjà, un appel gratuit de 30 minutes est un bon point de départ.
