WinRing0 : pourquoi Windows commence à considérer comme malveillantes diverses applications de monitoring PC
(theverge.com)- À partir du 11 mars 2025, un très grand nombre d’utilisateurs de PC dans le monde ont commencé à recevoir des alertes de code malveillant de la part de Windows Defender (l’antivirus intégré à Windows).
- La source de ces alertes se trouvait principalement dans des logiciels de contrôle PC, dont Razer Synapse, SteelSeries Engine et MSI Afterburner.
- Il s’est avéré que tous ces logiciels avaient en commun l’utilisation d’une bibliothèque appelée WinRing0.
Le modèle de sécurité des OS modernes
- Les systèmes d’exploitation adoptent une structure de « protection rings » pour protéger le système. Il existe des rings 0 à 3, mais les OS modernes n’utilisent en pratique que 0 et 3.
- Le ring 0 correspond à l’espace noyau, avec un accès direct et illimité à toutes les parties de l’ordinateur, y compris le matériel, la mémoire et les registres CPU.
- Le ring 3 correspond à l’espace applicatif, où s’exécutent les applications ordinaires, à l’exception des logiciels système.
- Les rings externes ne peuvent pas voir les rings internes, et l’accès à l’espace noyau depuis l’espace applicatif nécessite donc un pilote de périphérique.
L’état actuel du marché des périphériques PC
- Avec l’intensification de la concurrence sur le marché des périphériques PC, les fabricants fournissent de plus en plus souvent des logiciels dédiés pour différencier leurs fonctionnalités.
- Par exemple, pour un ventirad CPU, il est possible de contrôler directement la vitesse du ventilateur en fonction de la température du processeur, et ce réglage peut être effectué via un logiciel.
- De nombreux matériels sont conçus pour communiquer avec le système d’exploitation via le protocole SMBus (System Management Bus).
- Mais il est impossible d’accéder au SMBus au niveau applicatif ; cela n’est possible qu’au travers d’un pilote de périphérique.
Le modèle de pilote Windows (WDM) et WinRing0
- Pour contrôler du matériel via SMBus, il faut un pilote en mode noyau fonctionnant en ring 0.
- Les pilotes en mode noyau exigent un haut niveau de sécurité : ils doivent donc disposer d’une signature électronique EV (Extended Validation), et Microsoft doit les examiner puis les signer directement.
- Comme cette procédure est complexe et coûteuse, les fabricants de périphériques ont commencé à la contourner via WinRing0.
- WinRing0 est un pilote et une bibliothèque développés en 2007 par Miyazaki Noriyuki, créateur de CrystalDiskMark, dont la fonction est d’exposer à la couche applicative différentes parties du ring 0.
- Les fabricants de périphériques ont ainsi développé des logiciels permettant à la couche applicative d’accéder directement au ring 0 via WinRing0 pour contrôler le matériel.
- Il semble que WinRing0 ait été signé par cross-signing avant le durcissement de la procédure de certification des pilotes Windows.
- Son auteur a expliqué l’avoir créé comme une sorte de projet ludique pour explorer la programmation bas niveau, mais face à sa réutilisation continue dans des produits réels, il a arrêté le développement en 2010 en recommandant de ne plus l’utiliser.
- Cependant, du fait de la nature open source du projet, il a continué à être distribué et utilisé en de nombreux endroits même après l’arrêt de sa maintenance par son développeur.
Les menaces de sécurité de WinRing0
- Comme WinRing0 a précisément pour objectif d’exposer tel quel à la couche applicative des zones qui devraient être gérées par le noyau, cela revient à neutraliser les fondements mêmes de la sécurité de l’OS, ce qui suscite des inquiétudes depuis longtemps.
- Plusieurs CVE ont été enregistrées à ce sujet (CVE-2019-6333, CVE-2020-14979, CVE-2021-44901).
- Des attaques réelles ont également été observées, notamment avec le malware « SteelFox », connu pour avoir volé des numéros de carte bancaire, des historiques de navigation et des cookies de navigateur, qui exploitait WinRing0.
- Sont concernés non seulement les logiciels qui utilisent directement WinRing0, mais aussi les très nombreux logiciels qui en dépendent indirectement via OpenHardwareMonitor (https://github.com/openhardwaremonitor/openhardwaremonitor) et LibreHardwareMonitor (https://github.com/LibreHardwareMonitor/LibreHardwareMonitor).
- Le logiciel Touchpoint Analytics de HP utilisait OpenHardwareMonitor, si bien qu’en 2019, tous les PC portables HP alors commercialisés étaient concernés.
- Le 11 mars 2025, Microsoft a pris la décision de bloquer l’ensemble des pilotes WinRing0.
La réponse des fabricants
- Les inquiétudes concernant les vulnérabilités de sécurité de WinRing0 sont anciennes, et des correctifs existent déjà à ce sujet.
- Mais la distribution d’un pilote mis à jour nécessite une procédure de signature électronique, ce qui empêche la diffusion de ces correctifs.
- De plus, certains soulignent que le contenu du correctif se limite essentiellement à restreindre l’accès au pilote aux seuls administrateurs, sans corriger la vulnérabilité de fond.
- Razer et SignalRGB ont publié des mises à jour supprimant leur dépendance à WinRing0.
- Certains logiciels, comme CapFrameX, recommandent aux utilisateurs d’ajouter ces programmes comme exceptions dans Windows Defender.
- iBuyPower, l’éditeur de Hyte Nexus, a indiqué être prêt à faire lui-même signer une version corrigée de WinRing0 avant de la distribuer, mais affirme n’avoir reçu aucune réponse concrète de Microsoft.
- Steelseries a supprimé la fonction de monitoring système de son logiciel.
Autres points de débat
- Bien que WinRing0 soit par nature un logiciel risqué, certains — notamment parmi les développeurs d’applications tierces — s’inquiètent de l’absence d’alternative.
- Par exemple, des applications tierces comme Fan Control ou OpenRGB n’ont aucun autre moyen de communiquer avec le matériel sans WinRing0.
- Cela tient au fait que WinRing0 constitue un cas rare : il est open source et déjà signé.
- Des critiques portent aussi sur la lourdeur de la procédure de certification des pilotes Windows.
- La signature EV est coûteuse et doit être renouvelée régulièrement, ce qui représente une charge importante.
5 commentaires
Il fut un temps où j’ai rejoint une entreprise de logiciels de sécurité documentaire utilisant des pilotes noyau, et je me souviens que toute la société s’était mobilisée pour obtenir cette certification à l’époque.
J’avais essayé ça il y a longtemps, mais apparemment il fallait juste acheter un certificat EV, signer le module avec, puis le soumettre à MS. Lors de l’achat d’un certificat EV, ils vérifient l’entreprise, donc pour un particulier, distribuer un pilote, c’est assez contraignant, ouille.
Même s’il ne s’agit pas forcément d’un pilote, le coût d’un certificat EV reste lourd pour un particulier.
MS Defender SmartScreen nuit aux développeurs indépendants
Ce n’est pas d’hier que certains fabricants de périphériques HID développent leurs logiciels n’importe comment.
On dirait que c’est similaire dans le secteur des périphériques audio aussi. Il y a un programme d’effets sonores inclus sur les ordinateurs portables Dell (
Waves MaxxAudio), et on ne peut même pas désactiver les effets ; si on supprime le programme, le son ne sort plus. Le contournement n’est possible qu’en installant le pilote Realtek d’origine.