L’informaticien Evan Andersen a détecté un bug croustillant sur son ordinateur Mac. Plusieurs heures après avoir surfé sur un site porno en mode privé, il décide de lancer une partie de Diablo III. Surprise : au moment du chargement du jeu, il voit apparaître la page porno consultée auparavant. Pourtant, étant donné qu’il avait effectué une session de surf en mode navigation privée, cette page aurait du disparaître lorsqu’il avait fermé Chrome.
Comment est-ce possible ? Il s’agit en réalité d’un bug des drivers du processeur graphique NVidia. Celui-ci n’a pas effacé sa mémoire, ni lorsque le navigateur s’est fermé, ni lorsque Diablo III s’est lancé. Du coup, les derniers écrans graphiques du navigateur sont restés en mémoire et ont pu être chargés par le jeu vidéo. Pour le prouver, Evan Andersen a écrit un programme permettant de scanner le contenu de la mémoire du processeur NVidia. A chaque fois, il est capable de récupérer une image de sa dernière session de surf sur le web.
Il s’agit là d’un joli exemple de fuite de données qui permettrait aux utilisateurs d’un même PC de s’espionner mutuellement. Evan Andersen a contacté Google et Nvidia il y a plus de huit mois, et il n’y a toujours pas de solution en vue. Nvidia n’a donné aucune réponse. Le géant du web, de son côté, a d’abord expliqué qu’il n’allait rien faire, estimant que le mode privé de Chrome n’était pas fait pour cacher des informations entre utilisateurs d’une même machine. (Ah bon ?) Mais depuis la très récente note de blog d’Evan Andersen, les développeurs de Google ont révisé leur jugement. Ils vont voir ce qu’ils peuvent faire, s’ils ont du temps libre.
Un problème plus complexe qu’il n’y paraît
Mais il n’est pas certain que les efforts de Google soient couronnés de succès. On pourrait penser que ce bug soit assez facile à corriger. Il suffirait que le processeur efface systématiquement les zones de mémoire qui ne sont plus utilisées. Inversement, Chrome pourrait, de son côté, vider la mémoire libérée avant de quitter.
Mais selon Matias Goldberg, un développeur de jeux vidéo, l’affaire est beaucoup plus complexe (commentaire n°22). « Google ne pourra pas corriger ce bug. Même si Chrome efface la mémoire, il y a de grandes chances que le driver GPU en ait fait de multiples copies. Triple buffer, gestion de mémoire, discard-mapped memory… Vous pouvez avoir des dizaines de copies dans une mémoire GPU, et Chrome ne pourra effacer que l’une d’entre elle », explique-t-il. Par ailleurs, il estime que le fournisseur à contacter n’est pas Google ou Nvidia, mais Apple qui est celui « qui contrôle les drivers » sur la plateforme Mac OS X.
Mise à jour le 13 janvier 2016 : C’est également l’avis de Nvidia qui, dans un communiqué, estime que « ce problème est lié à la gestion de la mémoire dans le système d’exploitation d’Apple, et non aux drivers graphiques de Nvidia. Le driver Nvidia est conforme aux règles définies par le système d’exploitation et il fonctionne comme prévu. Nous n’avons pas vu ce problème sur Windows, où toutes les données spécifiques à une application sont effacées de la mémoire avant que celle-ci est rendu disponible à d’autres applications. » La balle est donc désormais dans le camp d’Apple.
🔴 Pour ne manquer aucune actualité de 01net, suivez-nous sur Google Actualités et WhatsApp.