Lorsque Chrome et Nvidia omettent de purger la mémoire de contenus gênants

Florian Innocente |

Lancer un jeu et voir apparaître pendant son chargement la page web d'un site porno que l'on avait visité plus tôt dans la journée… C'est la mésaventure que décrit un développeur, Evan Andersen et qui affecte Chrome ainsi que des cartes Nvidia (et ATI semble-t-il mais pas avec les puces Intel). Il avait été constaté sur un Mac avec OS X 10.8.5 et Chrome 41 au moment de son signalement il y a deux ans et il n'a toujours pas trouvé de remède depuis.

[MàJ le 13/01] : Purge de la mémoire, Nvidia renvoie la faute sur Apple

Le problème réside dans la manière dont l'application et les pilotes de cartes graphique gèrent la mémoire vidéo et s'abstiennent de la purger aux moments opportuns. Andersen explique que ce bug avait été rapporté à l'époque aux intéressés mais que son action est restée sans effet.

Le problème est survenu au lancement de Diablo III. L'opération s'est figée un instant et, au lieu de montrer un écran noir, c'est une capture de Chrome avec une page YouPorn qui est apparue un bref instant. Puis Diablo a continué son chargement et a rafraîchi à nouveau l'écran. Andersen avait eu le temps néanmoins de faire une capture d'écran au moment de cette pause.

Il avait bien visité cette page quelques heures auparavant dans Chrome et avec le mode de navigation privée activé (qui empêche le navigateur de garder une trace, en local sur l'ordinateur uniquement, de vos pérégrinations sur le web).

Il a compris ensuite que le pilote de sa carte Nvidia n'avait pas effacé le contenu de la mémoire vidéo lorsque Chrome avait été quitté. L'espace mémoire de la carte graphique utilisé par le navigateur avait été simplement déclaré comme libre pour une autre application et son contenu laissé en l'état. Diablo a ensuite réclamé de la mémoire et obtenu cet espace dont il a affiché l'image du contenu. A priori, le pilote aurait dû purger la mémoire utilisée avant de la remettre au pot commun, ou bien les logiciels s'assurer de faire cette opération au lancement.

Le développeur explique avoir écrit un petit programme qui cherche et affiche des zones non vierges de la mémoire vidéo. Il a pu ainsi ressortir sur l'écran l'image d'une page du forum Reddit parfaitement lisible. Dans l'autres cas, les données graphiques sont davantage brouillées.

Deux images de pages web retrouvée dans la mémoire du GPU avec l'utilitaire du développeur — Cliquer pour agrandir

Nvidia a reconnu le problème lorsqu'il lui a été signalé il y a deux ans, mais en ce mois de janvier 2016 il n'y a toujours pas eu de correctif spécifique. Quant à Google, il l'a marqué comme un comportement qui ne serait pas corrigé, jugeant qu'il ne relevait pas d'un dysfonctionnement de son mode de navigation privée. Ce mode n'est pas conçu avec l'idée de préserver la vie privée de plusieurs personnes utilisant la même machine. Ce qui est pourtant un scénario commun.

avatar bugman | 

Ca me rappelle le Blitter de l'Amiga ça ! :)

avatar TristamRabbit | 

Moi qui croyais naïvement que le mode "navigation privée" servait juste à faire des cadeaux sans dévoiler la surprise.

avatar ValentBay | 

@TristamRabbit :
Disons que cette surprise ne se partage pas. Mais on sait quand elle vient, donc ce n'est plus une surprise. On parle alors de se faire malice tout seul. Amen.

avatar Hercule Poirot | 

Personnellement, j'avais déjà eu quelque chose de similaire avec Minecraft: pendant le lancement du jeu, en passant en plein écran, une image d'un site internet (bon c'était facebook, pas du porno) s'est affichée. Expérience qui ne s'est pas renouvelée cf mises à jour du jeu et/ou d'OS X.

avatar Cowboy Funcky | 

Gros malaise en réunion sur le vidéo projecteur

avatar oomu | 

sans en arriver au site porno au mauvais moment, c'est un comportement que je trouve très gênant

on ouvre une nouvelle fenêtre, ça affiche n'importe quoi, ça efface aussi tôt pour afficher le contenu demandé : concrètement ça clignote.

Et on voit cela avec toutes sortes de logiciel : on affiche une image, on a d'abord un truc en cache vidéo, on relance une session de travail, le logiciel va d'abord afficher un truc en cache pour faire joli avant de réactualiser.

Parfois avec mission contrôle, parfois une vignette d'une fenêtre en arrière plan qu'on ramène devant, lancement d'un jeu vidéo etc.

Je trouve cela pénible, fatigant pour l'oeil, quand la transition se fait sur des contenus très contrastés ou sombre/clair.

-
quand on pense aux gigas que peuvent avoir les cartes vidéos maintenant et leur faible sécurité (parce que c'est encore considéré, à tort, comme de vulgaires périphériques pci sans intérêt), c'est du pain béni pour la nouvelle génération de virus.

Des virus s'exécuteront DANS le GPU (plein de coeurs, des langages toujours + sophistiqués, plein de ram), ou chercheront dans la carte des choses intéressantes à analyser et renvoyer à son Maître (quelque part dans le Mordor...).

Et comme les programmes sur GPU ne cherchent pas à utiliser toutes les techniques habituelles pour rendre compliqué l'accès aux éventuelles données mises en mémoire, il y a un vivier de failles à exploiter via les GPUs.

avatar Ginger bread | 

Mdrrrr

avatar apple78310 | 

J'ai déjà eu la même chose sur iPhone, safari affiche au lancement une page que j'avais consultée en navigation privée pendant une petit seconde avant de mettre la page d'accueil.
Ou pareil avec photos, ça lui arrive d'afficher pendant une seconde une photo que j'avais supprimée complètement.

avatar MaitreYODA | 

@apple78310 :
Pareil, je sais pas comment régler ce problème...

avatar Biking Dutch Man | 

@apple78310 :
J'ai eu la même chose, iOS freeze l'application safari lorsqu'on en sélectionné une autre et garde la dernière image pour qu'elle apparaisse plus vite lorsqu'on y retourne. Un seul moyen de l'éviter quitter complètement safari (double clic sur le bouton home et ensuite glisser la fenêtre vers le haut)

avatar robrob | 

Perso Safari rouvre toutes les fenetres privees si je fais Pomme+Q et qu'ensuite je le relance.
Ca me parait etre un bug enorme. Je suis le seul?

avatar patrick86 | 

"Perso Safari rouvre toutes les fenetres privees si je fais Pomme+Q et qu'ensuite je le relance.
Ca me parait etre un bug énorme."

C'est pas un bug, c'est la reprise de session.

Désactivez Reprise (Préférences Système → Général → Fermer les fenêtre quand on quite les apps) ou fermez vos fenêtres privées avant de quitter Safari.

La fonction Reprise utilise un fichier spécifique (quelque part dans Bibliothèque) pour sauvegarder l'état de chaque apps (sites, onglets et fenêtres pour Safari) et non l'historique.

avatar noooty | 

Puni par où il a pêché... :):):)

avatar iRobot 5S | 

"Nvidia a reconnu le problème lorsqu'il lui a été signalé il y a deux ans, mais en ce mois de janvier 2016 il n'y a toujours pas eu de correctif spécifique."

La NSA leur a sans doute tapé sur les doigts pour les empêcher de corriger.

Sinon oui sur iPhone c'est commun, je vérifie toujours avent de passer mon portable à quelqu'un

avatar captainBDO | 

Il ne serait pas arrivé la même chose récemment sur TF1 au beau milieu de l'émission téléshopping ?!
Une fenêtre d'accueil chez les républicains s'ouvre brièvement et reviens ensuite au téléshopping ...

avatar ijimax | 

@captainBDO :

Exact !!

avatar karayuschij | 

Moralité : c'est plus sûr de fréquenter des prostituées que de se masturber devant son écran…

avatar françois bayrou | 

Sauf si tu vas les chercher sur internet.

avatar Pierre aka Terdef | 

Bonjour,

Les problèmes du vidage des buffers et / ou ram relèvent de l'écriture du noyau (vider ces espaces après qu'un processus soit monté en mémoire et qu'il ait requis ces espaces, avant l'ouverture de l'IHM...).

Remarque de robrob (ci-dessus 11/01/2016 - 20:59)

" Perso Safari rouvre toutes les fenetres privees si je fais Pomme+Q et qu'ensuite je le relance.
Ca me parait etre un bug enorme. Je suis le seul?
"

Cela relève de l'utilisateur et de son identification sur l'ordinateur :

Lorsque cet ordinateur n'est pas partagé avec quiconque.
Si l'ordinateur n'est partagé avec personne (j'entends par là, strictement personne, même involontairement, y compris pas de femme de ménage, de service de nettoyage, de support technique, de conjoint, d'ascendant, de descendant, de collègue, d'employeur, etc. ...) - genre l'ordinateur domestique d'un célibataire endurci - cela n'a strictement aucune importance.

Lorsque cet ordinateur est partagé avec d'autres.
Si l'ordinateur est partagé :

1/ Cela relève du contrôle du compte utilisateur (s'identifier en ouvrant sa session, fermer sa session ou la mettre en veille (obligeant à se ré-identifier) en se levant de devant son ordinateur, ne serait-ce que le temps d'aller à la machine à café).

2/ Cela relève de l'effacement des Traces internes (notion de « Vie Privée »).
Outre l'utilisation des concepts de « Fenêtre de navigation Privée » qui, rappelons-le, ne touche qu'aux données privées de type « Traces internes » (rien à voir avec les traces laissées sur le Web, dites Traces externes - Qui-êtes-vous ? Vos traces), vous pouvez forcer l'effacement de ces traces avec, par exemple, CCleaner pour Mac.

Cordialement

CONNEXION UTILISATEUR