Moins d’un mois après la polémique, un chercheur a disséqué Windows Health and Optimized Experiences. L’analyse écarte la thèse du spyware et révèle surtout un moteur de diagnostic aux capacités étonnamment étendues.

Début août, Windows Health and Optimized Experiences (whesvc) s’est retrouvé au cœur d’une petite tempête, après avoir été accusé de surveiller le processeur, les températures et la batterie, puis d’envoyer ces informations à Microsoft toutes les quinze minutes. Redmond avait rapidement contesté cette interprétation, assurant que les traces de performances restaient stockées localement et servaient à documenter les problèmes signalés via le Hub de commentaires. Quelques jours plus tard, le spécialiste en rétro-ingénierie Xusheng Li est allé vérifier directement dans le code. Une plongée qui confirme l’essentiel des explications de Microsoft, tout en donnant à voir un service bien plus élaboré qu’il n'y paraît.
Un service capable d’ausculter Windows en profondeur
À première vue, whesvc n’a rien d’exceptionnel. Le service lui-même est assez léger, mais l’essentiel de ses capacités repose sur un moteur de diagnostic intégré à Windows, autrement plus sophistiqué. Celui-ci s’appuie sur un interpréteur Lua et sur 84 scripts compilés, dont 23 scénarios de diagnostic et 61 bibliothèques chargées de leur fournir les outils nécessaires pour interagir avec Windows.
En les disséquant, Xusheng Li a ainsi recensé 79 fonctions natives accessibles à ces scripts, et le moins que l’on puisse dire, c’est que le système ne manque pas de moyens. Le moteur peut lire et modifier le Registre, manipuler des fichiers, lancer des processus, interroger Windows sur l’état du matériel et des services, collecter des traces détaillées de l’activité du système, examiner les droits associés à un processus ou encore consulter la consommation électrique, l’état de la batterie et les données remontées par les capteurs thermiques du PC. Il peut aussi générer des archives CAB, effectuer des requêtes HTTP et appeler directement des fonctions présentes dans les bibliothèques de Windows.
Un arsenal impressionnant pour un service consacré au diagnostic, mais dont l’usage réel se révèle finalement bien moins inquiétant que ne le laissait craindre l’étendue de ses capacités. L’analyse des 84 scripts montre en effet qu’ils mettent surtout ces fonctions au service de tâches assez classiques : mémoriser des données de suivi propres à whesvc, déclencher des outils déjà intégrés à Windows ou rechercher la cause d’un dysfonctionnement précis.
Le service peut ainsi chercher pourquoi une application ne répond plus, pourquoi un programme met un temps anormalement long à démarrer, repérer un retard dans les entrées clavier ou souris, un défaut d’affichage ou encore un service bloqué dans un état intermédiaire. D’autres modules s’intéressent à la consommation électrique, aux problèmes de mise en veille ou aux fuites de mémoire.
Bref, un moteur particulièrement musclé, mais dont les scripts restent finalement cantonnés aux tâches de diagnostic et d’optimisation pour lesquelles le service a été conçu. Ni plus, ni moins.
Le rapport généré toutes les quinze minutes existe bien, mais reste sur le PC
Pour autant, l’élément qui avait largement contribué à alimenter la polémique sur X n’était pas inventé. Un module baptisé system_summary génère bien, toutes les 900 secondes, soit toutes les quinze minutes, un fichier JSON résumant différentes informations de diagnostic.
Mais l’analyse de Xusheng Li établit que ce rapport reste enregistré localement, corroborant ainsi la position défendue par Redmond au début du mois. Le module émet bien, au même moment, un petit événement de télémétrie, mais rien n’indique que le fichier JSON lui-même soit automatiquement expédié vers les serveurs de Microsoft.
Même constat du côté des fonctions réseau intégrées au moteur : aucun des scénarios examinés ne les utilise pour transmettre ces rapports. La seule adresse repérée renvoie au serveur public de symboles de Microsoft, utilisé pour faciliter l’analyse de certains plantages et problèmes de performances.
whesvc peut néanmoins faire remonter des données de diagnostic plus détaillées dans des cas précis. Cette possibilité est désactivée par défaut dans les scénarios automatiques étudiés, tandis que les collectes les plus poussées dépendent des réglages de diagnostic configurés dans Windows par les utilisateurs et utilisatrices eux-mêmes.
Pas de dispositif secret chargé d’expédier périodiquement les données collectées sur le PC à Microsoft, donc, ni de spyware. Windows a beau être truffé de fonctions de télémétrie, de cet espionnage supposé, il ne reste finalement pas grand-chose.

Participer à la discussion
Partagez votre avis avec la communauté Clubic.