Le bug Crowdstrike qui a paralysé bien des secteurs d’activité et engendré une panne informatique mondiale le 19 juillet dernier embarrasse d’autant plus Microsoft que les médias l’ont souvent rendu responsable. Mais le géant de Redmond ne veut pas voir l’histoire se répéter.
Le 19 juillet 2024, une mise à jour du logiciel antivirus/EDR « Falcon » de Crowdstrike faisait planter par un écran bleu tous les PC qui en étaient équipés et en empêchait le redémarrage. Crowdstrike a mis 78 minutes à se rendre compte que sa mise à jour était défectueuse. 78 minutes suffisantes pour permettre à 8,5 millions de machines de la télécharger et de se mettre en erreur bloquant des chaînes TV, des aéroports, des compagnies aériennes, des administrations, des hôpitaux, la billetterie des JO 2024…
Un fichier de configuration endommagé ayant par erreur traversé la chaîne de tests sans être découvert a été déployé à grande échelle entraînant le plantage par erreur de sécurité mémoire du pilote CSagent.sys de Crowdstrike. Problème, ce pilote qui participe activement à la lutte contre les attaques les plus sophistiquées s’installe au cœur même de Kernel de Windows. Le plantage entraînant dès lors l’effondrement de tout le système. Windows dispose de mécanismes pour redémarrer malgré la présence de pilotes défectueux mais ces derniers n’ont pas fonctionné de façon très optimale en raison même du fonctionnement du pilote de Crowdstrike (il fallait parfois plus de 15 reboots consécutifs pour voir Windows arriver à se réparer et encore ça n’a pas toujours été possible).
Cet incident aux répercussions planétaires a remis à l’ordre du jour la raison d’être de tels pilotes s’exécutant au niveau du noyau du système d’exploitation. Bien que ces pilotes offrent des avantages en termes de visibilité sur le système et de performances, ils présentent également des risques accrus en cas de dysfonctionnement. En 2007, Microsoft avait cherché à interdire un tel accès bas niveau au système. Mais, après des plaintes de nombreux éditeurs d’antivirus, la Commission Européenne avait en 2009 ordonné à Microsoft de rouvrir les accès bas niveaux aux éditeurs de sécurité afin de préserver le la concurrence sur le marché de la cybersécurité.
Désormais, Microsoft veut relancer le débat sur l’utilité de tels pilotes. L’éditeur annonce plusieurs initiatives visant à renforcer la sécurité et la fiabilité de l’écosystème Windows :
1- Microsoft veut relancer la collaboration avec l’industrie de la sécurité pour moderniser les approches et réduire la dépendance aux pilotes du noyau.
2- Microsoft veut démocratiser l’usage et le développement de nouvelles fonctionnalités de sécurité intégrées à Windows, comme les enclaves VBS (Virtualization-based Security).
3- Microsoft veut faire la promotion de pratiques de déploiement plus sûres pour les mises à jour des produits de sécurité.
4- Microsoft veut poursuivre l’exploration et l’adoption accrue du langage de programmation Rust, réputé pour sa sécurité mémoire, dans le noyau Windows.
« Nous prévoyons de travailler avec l’écosystème anti-malware afin qu’il tire davantage parti des fonctionnalités intégrées à Windows afin de moderniser leur approche, contribuant ainsi à soutenir et même à accroître la sécurité tout en améliorant la fiabilité », explique David Weston, Vice President, Enterprise and OS Security dans un billet de blog. « Cela inclut l’aide apportée à l’écosystème en réduisant le besoin de pilotes noyau pour accéder à des données de sécurité importantes, en fournissant des capacités améliorées d’isolation et de protection contre les altérations grâce à des technologies comme nos enclaves VBS récemment annoncées, et en permettant des approches de confiance zéro comme l’attestation de haute intégrité, qui fournit une méthode pour déterminer l’état de sécurité de la machine basée sur la santé des fonctionnalités de sécurité natives de Windows. »
Un effort de collaboration qui ne portera pas ses fruits à court terme mais qui paraît désormais plus que nécessaire. En attendant, la bonne nouvelle c’est que Crowdstrike a trouvé le bug qui empêchait sa chaîne de tests de repérer l’erreur qui a conduit le monde au chaos. Et l’éditeur promet aussi de renforcer sa chaîne de tests.