Acropalypse : Windows aussi est vulnérable ! Pourquoi cette faille est vraiment problématique

22 mars 2023 à 18h35
22
© IB Photography / Adobe Stock
© IB Photography / Adobe Stock

L'outil Capture d'écran ne supprime pas toutes les données après un recadrement, ce qui les laisse accessibles à tout individu malveillant.

Il y a quelques jours, deux chercheurs en sécurité informatique ont découvert une faille similaire dans l'outil d'édition des captures d'écran disponible sur les Pixel de Google. Si ce problème n'est pas anodin, on était loin de se douter qu'un autre outil, et pas n'importe lequel, serait également concerné.

L’acropalypse touche aussi Windows

Microsoft travaille toujours à la correction de cette faille, elle est donc encore reproductible, et c'est même assez facile à faire. Il suffit de prendre une capture d'écran sous Windows 11 avec son outil intégré, de l'enregistrer immédiatement, puis de la recadrer avant de l'enregistrer à nouveau dans le même fichier. Normalement, après cette seconde sauvegarde, le fichier devrait être plus léger qu'avant. Or, ce n'est pas le cas. Pourquoi ? Parce que la plupart des données de la première version sont encore présentes.

Lors de la visualisation, l'image est tronquée comme prévu. Toutefois, grâce à un script mis au point par les chercheurs à l'origine de la découverte, il est possible de retrouver les parties supprimées. Même si le résultat obtenu ressemble beaucoup à un fichier corrompu, cela suffirait tout de même à récupérer suffisamment d'informations utiles. Dans le cas de données bancaires ou de photos révélatrices, on pourrait très rapidement se retrouver dans des situations très compromettantes.

Bien que les chercheurs n'aient pu, pour l'instant, utiliser la faille que sur des images PNG, ils affirment que les fichiers JPEG souffrent du même problème. Toutefois, celui-ci n'est pas encore exploitable ici.

Paint à la rescousse ?

Tout le monde n'est pas concerné. D'une part, si l'image tronquée est enregistrée dans un nouveau fichier, elle ne contiendra pas de données en trop. D'autre part, en cas de doute, il est possible de la réenregistrer à l'aide d'un autre éditeur d'image tel que Photoshop ou Paint. En fin de compte, si l'image tronquée n'a pas le même poids que la capture d'écran originale, tout va bien. Du moins, normalement.

Pour ce qui est des fichiers partagés sur les réseaux sociaux et les services de messagerie, cela dépend. Dans le cas de Twitter, par exemple, les images sont traitées de telle manière qu'il est impossible d'exploiter la vulnérabilité. En revanche, ce ne serait pas le même son de cloche pour tous les services. Discord, entre autres, ne retire des données « superflues » des images que depuis sa mise à jour du 17 janvier. Toutes celles qui ont été partagées précédemment sont cependant encore vulnérables.

Windows 11
  • Refonte graphique de l'interface réussie
  • Snap amélioré
  • Groupes d'ancrage efficaces

Windows 11 de Microsoft redéfinit l'expérience utilisateur avec une interface repensée, des widgets personnalisables et une intégration renforcée de Microsoft Teams. Chaque innovation vise à optimiser et enrichir l'utilisation quotidienne de votre appareil. Que vous soyez professionnel, créateur ou utilisateur lambda, Windows 11 répond à vos besoins en alliant efficacité et plaisir d'utilisation.

Windows 11 de Microsoft redéfinit l'expérience utilisateur avec une interface repensée, des widgets personnalisables et une intégration renforcée de Microsoft Teams. Chaque innovation vise à optimiser et enrichir l'utilisation quotidienne de votre appareil. Que vous soyez professionnel, créateur ou utilisateur lambda, Windows 11 répond à vos besoins en alliant efficacité et plaisir d'utilisation.

Maxence Glineur

Geek hyper connecté et féru de podcasts, je suis toujours en train de lire ou écouter des points infos en tout genre. Entre histoire, tech, politique, musique, jeux-video et vulgarisation scientifique...

Lire d'autres articles

Geek hyper connecté et féru de podcasts, je suis toujours en train de lire ou écouter des points infos en tout genre. Entre histoire, tech, politique, musique, jeux-video et vulgarisation scientifique : toute l'actualité (ou presque) attise ma curiosité. Sinon, j'aime le rock et le lofi, les game-nights toujours trop longues, les bons films et les nanards.

Lire d'autres articles
Vous êtes un utilisateur de Google Actualités ou de WhatsApp ? Suivez-nous pour ne rien rater de l'actu tech !
google-news

A découvrir en vidéo

Rejoignez la communauté Clubic S'inscrire

Rejoignez la communauté des passionnés de nouvelles technologies. Venez partager votre passion et débattre de l’actualité avec nos membres qui s’entraident et partagent leur expertise quotidiennement.

S'inscrire

Commentaires (22)

sylvebarbe78
Ça m’en bouge une sans toucher l’autre…
tux.le.vrai
je trouve cela dingue de pouvoir retrouver une partie de l’image qui n’est pas sur l’image.<br /> Merci de l’info.<br /> J’espère que mon soft de capture sous linux Mageia n’est pas concerné.<br /> (spectacle sous KDE Plasma)
MisterDams
Ça montre à quel point on se préoccupe plus d’optimiser l’espace de stockage. On imagine le poids superflu de ces fichiers depuis pas mal d’années…
Mister_Georges
Après si l’individu malveillant est dans mon secteur et que je le chope, c’est XFCE jusqu’à la fin de ses jours!<br /> Sous FreeBsd!
Pernel
Pire, MacOS !!!
Darth_1_1
Donc si j’ai rien compris du tout, le risque c’est que je fais une copie d’écran, et comme en même temps j’ai une page ouverte ou j’achète un film porno avec ma carte bleue l’image contient donc mes données de CB. Ensuite je recadre l’image pour envoyer à mon chef juste une partie de l’écran pour lui montrer un truc super important. Mon chef reçoit mon image, et comme il est vicieux il analyse l’image et retrouve tout mon écran et pas seulement la partie recadrée, et du coup il peut me prendre ma CB pour acheter des sextoys?<br /> J’ai bon?
Valmont69
sylvebarbe78:<br /> Ça m’en bouge une sans toucher l’autre<br /> L’expression correcte est « Cela m’en touche une sans faire bouger l’autre », expression popularisée par notre ancien Président Jacques Chirac (à ne pas confondre avec Patrick).<br /> https://fr.wiktionary.org/wiki/cela_m’en_touche_une_sans_faire_bouger_l’autre
Catstom
Sauvés sur Windows 10 <br /> Enfin en théorie la faille est censée y être aussi vu qu’il s’agit du même programme…
MattS32
Catstom:<br /> Enfin en théorie la faille est censée y être aussi vu qu’il s’agit du même programme…<br /> Non, justement, ce n’est pas le même. Il a juste le même nom, mais il a été très fortement modifié, et ça m’étonnerait pas qu’il ait même été intégralement réécrit, celui de Windows 10 étant une application Win32 classique alors que dans Windows 11 c’est une application UWP.
MattS32
Peggy10Huitres:<br /> Clairement une faille de flemme de programmeurs …<br /> Non, même pas.<br /> Simplement que le fichier est ouvert en mode écriture au lieu de écriture avec troncature. Dans le premier mode, on réécrit simplement par-dessus les données du fichier, sans effacer les anciennes (et donc si la nouvelle version du fichier est plus petite que la nouvelle, il peut rester des anciennes données non écrasées), dans le second monde on commence pas tronquer le fichier à 0 octet avant de le réécrire.<br /> Mais pour le développeur de l’application, c’est strictement le même effort dans les deux cas, c’est simplement la valeur du flag indiquant le mode d’ouverture du fichier qui diffère.<br /> En gros, le développeur a écrit un truc de ce genre (ça c’est un exemple avec le open de la norme POSIX, mais celui de Windows doit être assez proche) :<br /> fd = open(filepath, O_RDWR)<br /> Au lieu de<br /> fd = open(filepath, O_RDWR | O_TRUNC)<br /> C’est un oubli, pas de la flemme. Et sans doute parce que beaucoup ne savent même pas qu’il faut ajouter O_TRUNC, les API de beaucoup de langages surchargeant de toute façon open avec O_TRUNC par défaut quand on ouvre un fichier en écriture.<br /> C’est par exemple le cas de PHP :<br /> github.com<br /> php/php-src/blob/7b4c7374c3d3adfb690d951f5224ba0f27200364/main/streams/plain_wrapper.c#L79<br /> /* parse standard "fopen" modes into open() flags */<br /> PHPAPI int php_stream_parse_fopen_modes(const char *mode, int *open_flags)<br /> {<br /> int flags;<br /> switch (mode[0]) {<br /> case 'r':<br /> flags = 0;<br /> break;<br /> case 'w':<br /> flags = O_TRUNC|O_CREAT;<br /> break;<br /> case 'a':<br /> flags = O_CREAT|O_APPEND;<br /> break;<br /> case 'x':<br /> flags = O_CREAT|O_EXCL;<br /> break;<br /> case 'c':<br /> flags = O_CREAT;<br /> break;<br /> Ou encore de Python :<br /> github.com<br /> python/cpython/blob/main/Lib/_pyio.py#L1533<br /> if 'x' in mode:<br /> self._created = True<br /> self._writable = True<br /> flags = os.O_EXCL | os.O_CREAT<br /> elif 'r' in mode:<br /> self._readable = True<br /> flags = 0<br /> elif 'w' in mode:<br /> self._writable = True<br /> flags = os.O_CREAT | os.O_TRUNC<br /> elif 'a' in mode:<br /> self._writable = True<br /> self._appending = True<br /> flags = os.O_APPEND | os.O_CREAT<br /> if '+' in mode:<br /> self._readable = True<br /> self._writable = True<br /> if self._readable and self._writable:<br />
Zourbon
bonjoçur<br /> je vous cite :<br /> " En fin de compte, si l’image tronquée n’a pas le même poids que la capture d’écran originale, tout va bien. Du moins, normalement."<br /> Je ne comprends pas le raisonnement. L’image n’aura jamais le même poids une fois retouchée (quelle que soit la modification).<br /> Bon, elle pourrait peser pareil mais ce serait un coup du hasard.<br /> Soit plus soit moins. Et normalement toujours plus dans le cas d’une mise à jour du fichier d’origine.<br /> Cependant on peut très bien modifier une image, l’enregistrer dans un nouveau fichier et qu’elle soit aussi plus lourde.
MattS32
Zourbon:<br /> Je ne comprends pas le raisonnement. L’image n’aura jamais le même poids une fois retouchée (quelle que soit la modification).<br /> Justement, dans le cas du bug, si, elle a la même taille. Parce que la nouvelle image est plus petite et a été réécrite par dessus le début de l’ancienne image, mais que le fichier n’a ensuite pas été tronqué à la nouvelle taille, l’OS croit donc que le fichier n’a pas changé de taille, et à la fin du fichier il reste des données non écrasées de l’ancien fichier.<br /> Pour faire une analogie, imagine que tu as un carton rempli de cannettes de 33cl. Tu décides d’y mettre à la place le même nombre de canettes de 12cl.<br /> La bonne pratique, c’est de d’abord vider complètement le carton, puis de mettre tes nouvelles canettes dedans. Ainsi, plus de trace des anciennes canettes. C’est ce qu’il se passe normalement quand on ouvre un fichier en écriture avec le flag O_TRUNC.<br /> Ce qui se passe dans le cas du bug, c’est qu’au lieu de vider le carton d’abord, tu remplaces simplement les canettes petit à petit, en enlevant une 33cl quand tu as besoin de faire de la place. Tu en enlèves une, tu met une 12, tu enlèves une seconde 33, tu met deux 12, tu enlèves une 3ème 33, etc, jusqu’à ce que tu ais rentré tes nouvelles canettes. Il reste alors des grosses canettes dans le carton.
SPH
@Zourbon:<br /> une image BMP de X_pixels /Y_pixels aura toujours le même poids; même si tu redessines dessus.<br /> Par contre, j’ai fais le test sur W10 : quand on réduit X_pixels /Y_pixels et qu’on resauvegarde, le poids de l’image est réduit.<br /> Donc, pas de « bug » sur W10…
boboss29200
En attendant sous macos pas besoin de logiciel tiers pour enregistrer écran. Cmd + 3 copie d’écran, Cmd+4 tu choisis la partie que tu veux capturer. Cmd+5 tu peux enregistrer en vidéo ton écran (et tu choisis quelle partie tu veux enregistrer) pas besoin de perdre son temps à recadrer dans paint ou d’installer un logiciel tiers de plus pour combler une fonction que n’a pas l’os…
dFxed
@MattS32 @Peggy10Huitres<br /> Ou alors un retaillage correct du filestream est manquant a la fin de l’écriture.<br /> Dans tous les cas, il est probable que la faille ne touche pas que les images, puisqu’elle concerne en réalité le traitement du flux écrit sur un flux existant.
MattS32
Sous Windows, c’est natif aussi hein, au moins depuis Windows 10, et il me semble que c’était même déjà dans Windows 7.<br /> Et pas besoin non plus de recadrer à posteriori, tu peux faire directement une capture avec le bon cadrage (mais ça peut arriver de se tromper ou d’oublier de cadrer, d’où le fait de le faire parfois à posteriori).
Feunoir
Avec « Capture d’ecran et croquis » même sous win10 il y a effectivement un truc louche si on sauvegarde a nouveau sur le même fichier<br /> La premiere capture (que j’ai copié dans temp pour en garder l’original)<br /> La deuxieme capture , enregistré sur le fichier de depart<br /> Avec l’outil capture d’écran historique (snipping tool), plus logique<br />
Pernel
Tout comme Windows depuis longtemps…<br /> Visiblement chez Apple, même l’humour est en option.
StephaneGotcha
Oui la faille est vraiment problématique.<br /> Mais arriver à utiliser la faille de façon frauduleuse, il faut quand même se lever tôt.<br /> Enfin disons qu’il faut avoir une sacrée chance … ou une sacrée malchance.
MattS32
Tout a fait. D’autant que ça ne s’applique quasiment qu’aux images stockées en local ou envoyées par mail.<br /> Parce que sinon, les outils de partage d’images en ligne, le plus souvent de toute façon ils réencodent eux même l’image (pour raison de sécurité : il y a eu plus d’une fois des failles dans des décodeurs d’images, qui permettaient d’exécuter du code avec un fichier contenant les bonnes données pour exploiter la faille… en réencodant les images, les services de partage protègent leurs utilisateurs contre ce type d’exploitation), donc du coup sans ce qui « déborde », et parfois aussi en supprimant les méta-données pour limiter le risque de fuites de données personnelles.
boboss29200
Oui mais ça te copie le bouzin dans ton presse papier , t’es obligé de passer par paint pour générer une image etc… perte de temps, sous mac il te suffit de faire ta capture d’écran et ça te la fout direct dans un dossier, du coup tu peux en enchainer plusieurs à la suite et récupérer tes images… Idem pour la capture vidéo; si tu veux enregistrer ton écran pendant 20 min (ou plus) tu peux le faire en natif… Effectivement je viens de voir que c’est dispo sous win11, mais j’utilise le machin depuis déjà pas mal d’années, et je suis toujours sur win10 sur les pc auquels j’ai accès.<br /> Je réagissais juste au post de Pernel qui disait pire, MacOs, alors que cet OS à tout ce qu’il faut pour faire de l’image clé en main
MattS32
boboss29200:<br /> Oui mais ça te copie le bouzin dans ton presse papier<br /> Pas si tu utilises l’outil capture d’écran.<br /> Et sinon, le fait de passer par le presse papier, ça a aussi des avantages hein, parce qu’il y a des situations où c’est plus pratique comme ça… Parce que tu ne veux pas forcément enregistrer à l’endroit par défaut, pas forcément dans le format de fichier par défaut, pas forcément avec le nom par défaut…<br /> Ou alors tu peux vouloir intégrer directement ton image dans un autre logiciel sans même passer par un fichier intermédiaire explicite<br /> Par exemple, pour ça, j’ai juste fait Win+Shift+S, cadré sur l’en-tête de ton message et Ctrl+V dans le champ de saisi du message de Clubic :<br /> Pas eu à me soucier de savoir où il a enregistré, pas eu à aller chercher le fichier pour l’uploader, pas eu à le supprimer ensuite… Juste collé le contenu du presse-papier.<br /> Bref, quand il y a deux approches différentes, elles ont chacune des avantages et des inconvénients, y en a pas forcément une qui est fondamentalement supérieure à l’autre…
Voir tous les messages sur le forum
Haut de page

Sur le même sujet