Portables HP : un keylogger enregistre en clair les frappes du clavier, un correctif arrive

Portables HP : un keylogger enregistre en clair les frappes du clavier, un correctif arrive

Des champions du monde !

Avatar de l'auteur
Sébastien Gavois

Publié dans

Internet

12/05/2017 5 minutes
66

Portables HP : un keylogger enregistre en clair les frappes du clavier, un correctif arrive

En bundle dans certaines machines HP se trouve un keylogger qui enregistre vos frappes dans un fichier texte. Cette brèche de sécurité serait la conséquence d'une « négligence » et HP annonce qu'un correctif est en cours de déploiement. Cette situation appelle à la prudence pour les personnes concernées.

Dans le domaine de la sécurité informatique, les risques sont nombreux. Parfois, la faute incombe aux utilisateurs, par exemple avec des mots de passe bien trop simples. D’autres, aux fabricants et/ou éditeurs, et le client n'y peut alors pas grand-chose. C'est justement le cas avec certains ordinateurs portables provenant de chez Hewlett-Packard.

Un keylogger qui enregistre toutes les frappes... dans un fichier texte

La société suisse Modzero, spécialisée dans la sécurité informatique, explique en effet que le fabricant livre des PC avec un keylogger installé. Pour rappel, il s'agit d'un programme qui intercepte toutes les frappes effectuées sur le clavier. Ici, il enregistre ces informations dans un fichier texte non chiffré : C:\Users\Public\MicTray.log. Cette brèche de sécurité porte la référence CVE-2017-8360.

Ainsi, n'importe quel programme ou personne y accédant peut récupérer l'ensemble des touches frappées par l'utilisateur, y compris les identifiants, les mots de passe et ses correspondances, peu importe qu'elles soient ou non chiffrées par la suite. Seule petite consolation dans ce déluge de mauvaises nouvelles, le fichier est remis à zéro à chaque lancement de la machine.

Comment peut-il se retrouver dans un pilote audio ?

Le keylogger s'installe avec le pilote audio Conexant HD proposé par HP sur son site (version 1.0.0.46 ou plus récent). Il est développé et signé par le fabricant des puces Conexant.

Notez qu'il est habituel que ce genre de programme surveille (mais en aucun cas enregistre) en continu certaines touches pressées par l'utilisateur afin de reconnaitre une combinaison particulière, par exemple pour ajuster le niveau du volume ou le couper. Ce sont les fameux raccourcis clavier présents sur quasiment tous les ordinateurs portables. Si cette pratique est courante, elle va beaucoup trop loin ici.

La liste des machines concernées est assez importante selon les chercheurs. On trouve ainsi des HP Elitebook, des ProBook et des ZBook. Les systèmes d'exploitation Windows 10 et Windows 7 sont touchés par ce problème. Tous les détails sont disponibles par ici. Pour le moment, ils n'ont pas trouvé de situation similaire chez d'autres fabricants.

Keylogger HP
Crédits : Modzero

Pas de mauvaises intentions pour les chercheurs, mais une négligence

Pour l'équipe à l'origine de cette découverte, « il n'y a aucune preuve indiquant que ce keylogger ait été implémenté intentionnellement ». « C'est une négligence des développeurs » ajoutent-ils, ce qui ne change évidemment rien à la gravité de la situation. On serait donc loin du cas SuperFish de Lenovo qui installait volontairement un adware et un certificat racine sur ses machines.

Toujours selon Modzero, il s'agirait d'un reste de fonction qui servait pour des tests, mais qui n'aurait jamais dû passer en production chez les clients. Une approche confirmée par le vice-président de HP Nash Told à plusieurs de nos confrères américains, dont Axios et ZDNet.com : « c'était quelque-chose qui était présent dans le processus de développement et qui aurait dû être retiré ». 

Un correctif poussé via Windows Update

Il ajoute qu'un correctif va être déployé aujourd'hui via Windows Update pour les PC de 2016 concernés, tandis qu'il faudra attendre demain pour les machines de 2015. Le patch sera également directement disponible sur le site du fabricant.

Le pousser via le système de mise à jour de Windows est un bon point, le correctif pouvant ainsi être déployé plus rapidement sur un grand nombre de machines. S'il avait fallu en effet passer par le site du fabricant, de nombreux clients seraient certainement passés à côté.

Pensez à faire le ménage !

En attendant, il est possible de prendre des mesures afin de contourner le problème. Selon les chercheurs, il suffit de supprimer ou renommer les fichiers C:\Windows\System32\MicTray64.exe ou C:\Windows\System32\MicTray.exe (ce qui peut causer des problèmes avec la partie audio bien évidemment). Pensez également à supprimer le fichier C:\Users\Public\MicTray.log où sont enregistrées les frappes du clavier.

Si vous avez effectué des sauvegardes régulières de l'intégralité de votre machine, sachez que ce fichier de log sera également présent, avec l'ensemble des messages saisis durant la journée. Il est donc également recommandé de le supprimer.

Comme toujours en pareille situation où vos mots de passe peuvent être compromis, il est recommandé de les changer afin d'éviter toute mauvaise surprise par la suite. Pour rappel, nous avons consacré un dossier sur ce sujet et sur celui des gestionnaires :

Écrit par Sébastien Gavois

Tiens, en parlant de ça :

Sommaire de l'article

Introduction

Un keylogger qui enregistre toutes les frappes... dans un fichier texte

Comment peut-il se retrouver dans un pilote audio ?

Pas de mauvaises intentions pour les chercheurs, mais une négligence

Un correctif poussé via Windows Update

Pensez à faire le ménage !

Le brief de ce matin n'est pas encore là

Partez acheter vos croissants
Et faites chauffer votre bouilloire,
Le brief arrive dans un instant,
Tout frais du matin, gardez espoir.

Commentaires (66)


Et les tests QA c’est pas pour les chiens !&nbsp;<img data-src=" />


Faut virer le stagiaire !


Je reste sans voix !



Qu’un pilote audio puisse lire tous les appuis touches est effarant.

Qu’il demande à l’OS de lui indiquer certains appuis touches ne me poserait pas de problème mais qu’il voit tout et fasse le tri lui-même est une aberration d’architecture de l’OS.


Ben mon cochon … <img data-src=" />



Ce sera quoi leur excuse cette fois ci : un coup du monstre du loch ness ou d’un blonde intelligente ? <img data-src=" />

(Petite note : c’est juste une plaisanterie de ma part et je ne pense pas ce que j’écris !)


Comment fais-tu concrètement pour voir ça en test QA ?








fred42 a écrit :



Comment fais-tu concrètement pour voir ça en test QA ?





En auditant toutes les modifs faites par une application, que ce soit fichier, registry ou réseau. C’est une pratique assez courante.



//Delete before production. <img data-src=" />





C’est de toute beauté, vraiment.


Ca set le bout de code “for debugging only” qui est resté dans la release, surtout


HP, winner du jour.



et sinon Keyscrambler is your friend!


“il n’y a aucune preuve indiquant que ce keylogger ait été implémenté intentionnellement” mais oui …


:facepalm:








grundoc a écrit :



“il n’y a aucune preuve indiquant que ce keylogger ait été implémenté intentionnellement” mais oui …





c’est un dev qui a développé un keylogger sans le vouloir!

ça arrive <img data-src=" />



<img data-src=" />



HP : High sPy

&nbsp;


Tant que le log reste sur le PC et que l’info n’est pas connue, le risque reste modéré. Maintenant que c’est dévoilé, la chasse est ouverte.&nbsp;<img data-src=" />

&nbsp;

Du coup, j’ai check quelques PC du parc sur des modèles concernés, 820 et 840 G3 : Nada. Visiblement, déployer les pilotes avec VMware à des avantages que je connaissais pas…


oups, c’est balo ^^








dvr-x a écrit :



Tant que le log reste sur le PC et que l’info n’est pas connue, le risque reste modéré. Maintenant que c’est dévoilé, la chasse est ouverte.&nbsp;<img data-src=" />

&nbsp;





faudrait être un peu con pour développer un keylogger et que les logs restent en local!

quel intérêt? <img data-src=" />



:facepalm: HP



Edit : le smiley a disparu ?


C’est une sortie du logiciel, il y a donc une exigence d’interface.

Toutes les exigences sont revues en analyse de risque.

Tous les risques majeurs sont réduits par des actions correctives.

Toutes les actions correctives sont vérifiées.



CQFD


+1



RegisterHotKey function: Defines a system-wide hot key. <img data-src=" />








jeje07bis a écrit :



HP : High sPy

&nbsp;





&nbsp;Non !



&nbsp;Hunt Passwords…&nbsp;<img data-src=" />



“Et Roger, rassure moi on a viré les keyloggers des pilotes audio avant de vendre nos portables?”

“On a des keyloggers dans les pilotes audio? Pourquoi?”

“Pourquoi pas?”


+2



On sait si la MAJ par windows update ca virer ce fichier log ?


+1

mais ça c’est la théorie et comme tout le monde le sait il y a un monde entre théorie et pratique.

Il suffit que cette sortie soit simplement un test de debug pour voir que le dev choppait bien tous les appuis clavier donc non spécifié et puis vite oublié et laissé tel quel.

Et puis les applications grand public ne passe que rarement par ce processus d’analyse de risque et de vérification car coute cher en temps.



Enfin bref je reste quand même assez stupéfait et cela montre bien l’hygiène de code du dev. Il lui suffisait de mettre un #if debug avant et basta plus de sortie en release, trop dur sans doute cela doit prendre au moins 2s.


pire: il n’a jamais existé <img data-src=" />








ashlol a écrit :



+1

mais ça c’est la théorie et comme tout le monde le sait il y a un monde entre théorie et pratique.

Il suffit que cette sortie soit simplement un test de debug pour voir que le dev choppait bien tous les appuis clavier donc non spécifié et puis vite oublié et laissé tel quel.

Et puis les applications grand public ne passe que rarement par ce processus d’analyse de risque et de vérification car coute cher en temps.



Enfin bref je reste quand même assez stupéfait et cela montre bien l’hygiène de code du dev. Il lui suffisait de mettre un #if debug avant et basta plus de sortie en release, trop dur sans doute cela doit prendre au moins 2s.





If debug ça implique que tu considérés par défaut que tu peux laisser du code mort dans ton appli..

Le code mort, c’est le mal.



Dans mon domaine, si je vois un “if debug” dans le code, je vire le dev en lui jetant des cailloux



non pas de code mort regarde bien j’ai mis #if donc option de compilation donc code non présent si l’option de compilation n’est pas active.








grundoc a écrit :



“il n’y a aucune preuve indiquant que ce keylogger ait été implémenté intentionnellement” mais oui …



C’est tout à fait possible, dans le sens où il était prévu pour être en dév mais pas en prod <img data-src=" />









Oliewan a écrit :



:facepalm: HP



Edit : le smiley a disparu ?



Non, il n’a jamais existé <img data-src=" />









Drepanocytose a écrit :



If debug ça implique que tu considérés par défaut que tu peux laisser du code mort dans ton appli..

Le code mort, c’est le mal.



Dans mon domaine, si je vois un “if debug” dans le code, je vire le dev en lui jetant des cailloux





C’est pas du tout un code mort. C’est un code que tu veut retrouver dans la compil en “debug” mais pas dans la complil “release”.



edit: grillé pas ashol <img data-src=" />

&nbsp;









ndjpoye a écrit :



C’est pas du tout un code mort. C’est un code que tu veut retrouver dans la compil en “debug” mais pas dans la complil “release”.



edit: grillé pas ashol <img data-src=" />

&nbsp;





Dans mon domaine, où on exige les sources, on l’interdit quand même.

Mais je vois ce que vous voulez dire.









Burn2 a écrit :



//Delete before production. <img data-src=" />





Ah le con, il a oublié de mettre “TODO:” avant c’est pour ça <img data-src=" />









Drepanocytose a écrit :



Dans mon domaine, où on exige les sources, on l’interdit quand même.





Pourquoi (si c’est pas indiscret) ? Je vois plusieurs raisons possibles mais, c’est que de la spéculation de ma part :)



J’ai bien le fichier “MicTray.log” sur mes HP Elitebook sous W7 mais ils sont vides malgré les frappes au clavier. Les pilotes connexant du master sont surement trop ancien.








ndjpoye a écrit :



Pourquoi (si c’est pas indiscret) ? Je vois plusieurs raisons possibles mais, c’est que de la spéculation de ma part :)





Parce que c’est un risque d’erreur en recompil.

Imagine que tu mets un code bien merdique en dessous, et que tu obfusques la directive de compil avant de recompiler : bah tu compiles avec le code merdique.



Dans mon domaine, si on foire on risque de tuer des gens (industrie pharma) donc on essaie d’éradiquer toutes les sources prévisibles d’erreurs.



Enfin, en tous cas c’est bien laid ce keylogger. Quand je rentre au bureau, je regarde ça, histoire de ma marrer.


J’ajouterai que c’est le cas dans tout code critique (aérospatial, nucléaire et du coup pharma). Par exemple pour l’aéro, tu as la norme DO178 qui t’impose des règles très strictes, et au plus haut niveau de criticité (ex : lois de commandes d’un avion), tu dois être capable de justifier aux autorités de certifications chaque ligne de ton code et de tracer les exigences.

&nbsp;


Merci pour vos explications :)


Laptop du boulot dans la liste des modèles impactés.



Fichier présent mais aucun des deux POC ne remontent quelque chose.


La DO178 est une norme aviation.

Le spatial, le nucléaire et le médical ont d’autres normes.


C’est poutant le cas pour celui-ci. D’un coté, sa montre un peu que c’est surement une erreur.








Drepanocytose a écrit :



If debug ça implique que tu considérés par défaut que tu peux laisser du code mort dans ton appli..

Le code mort, c’est le mal.



Dans mon domaine, si je vois un “if debug” dans le code, je vire le dev en lui jetant des cailloux





Sauf que c’est du code conditionnel, pas du code mort. Du “if false” serait du code mort (et encore, je suis sûr qu’un tordu irait redéfinir false quelque part pour le rendre conditionnel, mais celui là je le vire aussi <img data-src=" />).

Certaines boîtes déploient des appli avec du “if debug” parce que ça facilite le traçage d’erreur n’arrivant qu’en prod (les pires) : le service est alors flagué debug et crache d’un coup plus de traces, sans avoir à relivrer de version.

C’est assez laid en terme de code, mais ça assure un meilleur uptime. Question de balance risque/coût, à estimer par le client. Le dev derrière, il fait juste ce qu’on lui a demandé.









fred42 a écrit :



La DO178 est une norme aviation.

Le spatial, le nucléaire et le médical ont d’autres normes.





Il l’a dit que ça s’applique à l’Aero.

Nous en pharma, c’est le GAMP, et accessoirement le 21CFR part 11 pour ce qui est gestion des accès / gestion des data









jeje07bis a écrit :



faudrait être un peu con pour développer un keylogger et que les logs restent en local!

quel intérêt? <img data-src=" />





Couplé avec le Malware de la NSA (Windows) qui est rempli de backdoor, c’est tout bon.<img data-src=" />









lutherkingmartin a écrit :



J’ai bien le fichier “MicTray.log” sur mes HP Elitebook sous W7 mais ils sont vides malgré les frappes au clavier. Les pilotes connexant du master sont surement trop ancien.





Apparement, ça ne concerne pas tous les ordis HP.<img data-src=" />









fred42 a écrit :



La DO178 est une norme aviation.

Le spatial, le nucléaire et le médical ont d’autres normes.





C’est pour ça qu’il a dit: “par exemple”.<img data-src=" />



Sur mon EliteBook 850 G3 (qui est dans la liste) du taf, pareil: j ai le fichier, mais il est vide.

Le pilote connexant est en 9.0.98.0 (11/08/2016)

Après, je venais de faire un windows update avant de lire la news, j’ai peut etre eu le fix ? quelqu’un connait le KB ?








Ricard a écrit :



C’est pour ça qu’il a dit: “par exemple pour l’aéro(nautique)”.<img data-src=" />







<img data-src=" />









fred42 a écrit :



Je reste sans voix !



Qu’un pilote audio puisse lire tous les appuis touches est effarant.

Qu’il demande à l’OS de lui indiquer certains appuis touches ne me poserait pas de problème mais qu’il voit tout et fasse le tri lui-même est une aberration d’architecture de l’OS.







Attention, le keylogger est fourni dans le package qui contient le pilote, avec les utilitaires qui vont autour… dont le fameux MicTray64.exe : c’est un logiciel, pas un driver.



Oups, je ne l’ai pas lu et comme il n’a pas édité son message, c’est là depuis le début.

<img data-src=" />


Merci de la précision, mais je n’ai fait que reprendre les termes de l’article de NXI qui est donc approximatif :



Le keylogger se trouve dans un pilote audio Conexant HD proposé par HP son site





Cela ne change rien au reste de mon message. Qu’un logiciel puisse lire tous les appuis touches si ce n’est pas un logiciel de l’OS est un problème. Seule l’appli qui a le focus devrait pouvoir le faire.








fred42 a écrit :



Merci de la précision, mais je n’ai fait que reprendre les termes de l’article de NXI qui est donc approximatif :





Oui il aurait fallu parler de package.









fred42 a écrit :



Cela ne change rien au reste de mon message. Qu’un logiciel puisse lire tous les appuis touches si ce n’est pas un logiciel de l’OS est un problème. Seule l’appli qui a le focus devrait pouvoir le faire.







Je ne suis pas d’accord. Il faut bien que les appli puissent pouvoir écouter le clavier, pour différentes raisons possibles. Cela dit, un paramétrage de sécurité pourrait faire l’affaire (comme les permissions android par exemple) : “permettre de lire les frappes clavier sans être focus” et hop tout le monde est d’accord <img data-src=" />









CryoGen a écrit :



Je ne suis pas d’accord. Il faut bien que les appli puissent pouvoir écouter le clavier, pour différentes raisons possibles. Cela dit, un paramétrage de sécurité pourrait faire l’affaire (comme les permissions android par exemple) : “permettre de lire les frappes clavier sans être focus” et hop tout le monde est d’accord <img data-src=" />





Je ne vois pas tellement de raisons pour des applis, à par faire un keylogger. Être à l’écoute de certaines combinaisons de touche, oui, mais pas de tous les appuis.

Mais tu as peut-être des exemples.



Sinon, oui, j’ai aussi pensé au messages d’alerte d’Android. Au moins tu sais que tu installe un truc qui pourrait avoir un risque.



J’ai vu ça en installant une appli permettant de transformer certains appuis touches en un autre code pour corriger un bug sur une tablette qui faisait que la touche espace d’un clavier physique ne fonctionnait pas ce qui devenait vite pénible.

Mais une telle appli est plus du driver/middleware qu’une vraie appli.









loser a écrit :



pire: il n’a jamais existé <img data-src=" />





Si si mais sur le forum seulement, apparement…









fred42 a écrit :



Oups, je ne l’ai pas lu et comme il n’a pas édité son message, c’est là depuis le début.

<img data-src=" />





On va mettre ça sur le compte de la digestion <img data-src=" />









fred42 a écrit :



Je ne vois pas tellement de raisons pour des applis, à par faire un keylogger. Être à l’écoute de certaines combinaisons de touche, oui, mais pas de tous les appuis.

Mais tu as peut-être des exemples.







Je n’ai pas vraiment d’exemples utiles ou bien concret : statistique, hotkey (et donc soit on limite le concept des hotkey à une combinaison soit… on peut demander à l’OS à s’accrocher à toutes les touches <img data-src=" />), surveillance (fuite d’information, détection de patern/match), accessibilité (transcription vocale de la saisie clavier ?)…







fred42 a écrit :



Mais une telle appli est plus du driver/middleware qu’une vraie appli.





Et on en revient au driver capable de tout écouter ? <img data-src=" />



Celà dit, j’aimerai tout de même plus de sécurité dans les OS… les permissions granulaires c’est pas mal du tout, ca serait bien de voir çà débarquer dans Windows/Linux/Mac … Il n’y a pas que les smartphones qui possèdent de l’information privée.



Ca sent le bout de code de debugging fait à l’arrache que le mec à oublié de virer…..

Comment ca craint &gt;___&lt;


C’est marrant parce que bossant moi aussi dans l’industrie pharma, mais côté production/chimie, l’approximation et l’à peu près ont presque force de loi.








fred42 a écrit :



Je ne vois pas tellement de raisons pour des applis, à par faire un keylogger. Être à l’écoute de certaines combinaisons de touche, oui, mais pas de tous les appuis.

Mais tu as peut-être des exemples.





De mémoire, les présentations des fonction de “hook” sous windows étaient pour permettre de superviser/former.



C’est aussi il me semble utilisé par les applis d’aide à la saisie pour les handicapés (les applis qui “disent” sur quelle touche tu appuies).



Des utilitaires comme auto-it l’utilisent aussi pour automatiser des frappes de touches.



Je suis d’accord que dans le cadre d’un pilote (et encore, là on parle visiblement de l’utilitaire qui affiche l’icône en bas à droite), il devrait simplement surveiller quelques “hotkeys” permettant de réagir même si l’appli n’est pas le contrôle. Et il faurait limiter le nombre de hotkeys par appli.









lutherkingmartin a écrit :



J’ai bien le fichier “MicTray.log” sur mes HP Elitebook sous W7 mais ils sont vides malgré les frappes au clavier. Les pilotes connexant du master sont surement trop ancien.





Tu n’as peut-être pas totalement désactivé l’UAC. Il semble qu’il faille désactiver l’UAC sinon le logiciel ne peut installer le hook.



Il faudrait plutôt que Windows (ou l’OS en général) surveille le clavier et transfère aux applications (et dans le cas présent, l’appli gérant le son serait sollicitée uniquement pour telle ou telle combinaison de touche)



Et une gestion des autorisations comme sur smartphone, pour reprendre l’idée plut haut <img data-src=" />








abitbool a écrit :



Il faudrait plutôt que Windows (ou l’OS en général) surveille le clavier et transfère aux applications (et dans le cas présent, l’appli gérant le son serait sollicitée uniquement pour telle ou telle combinaison de touche)



Et une gestion des autorisations comme sur smartphone, pour reprendre l’idée plut haut <img data-src=" />





T’as tout ce qu’il faut en fait.

Si tu veut définir un raccourci (genre CTRL-ALT-T) c’est &nbsp;RegisterHotKey. Et si tu veut réagir aux boutons spéciaux comme le volume, la navigation internet, etc…. c’est le message VM_APPCOMMAND. Le système ressemblerait à ce que tu demandes, faudrait juste qu’on puisse pas en faire autrement.



D’accord, merci pour l’info :)



L’idéal serait des autorisations façon Android comme ceci :



“L’application xx demande à accéder à certaines touches du clavier” (avec la possibilité de voir le détail)

&nbsp;Et&nbsp;

“L’application xx demande à accéder à la totalité du clavier” (pour les traitements de texte par exemple)








Rowin a écrit :



C’est marrant parce que bossant moi aussi dans l’industrie pharma, mais côté production/chimie, l’approximation et l’à peu près ont presque force de loi.





Tu dois faire du pharma “mangeable”. La barrière de l’estomac vous permet de faire n’importe quoi, l’estomac arrêtera les merdes.

Moi je fais de l’injectable et de la biotech stérile. La on ne peut pas se permettre de laisser la moindre merde residuelle, sinon le patient se la prend direct dans le sang.



L’un fait dans les champis, l’autre est passé du coté obscur de la force?

<img data-src=" />

patapé, WE toussa…


Je regrette d’avoir acheté une imprimante HP il y a queques temps 2-3 ans, plutôt qu’une canon au même prix de meilleure qualité, car elle installe une floppée de logiciels et demande de nombreuses infos personnelles. J’en suis devenu parano envers tout ce qui concerne HP me disant qu’il y avait des spywares. J’aimerai bien savoir si il y a des infos sur la politique d’HP à ce niveau.


on peu désactiver dans les paramètres la collecte des données (web,cloud,ip…) et ne pas installer les outils intrusifs.