Sécurité : même un fichier .txt ouvert dans TextEdit peut représenter une faille

Nicolas Furno |

Quand on pense à une faille de sécurité, on n’imagine pas un banal fichier texte avec une extension .txt ni à TextEdit, l’éditeur de texte fourni par Apple dans macOS. Et pourtant, c’est là qu’un chercheur en sécurité a déniché une faille qui aurait permis à un acteur malveillant de récupérer des informations vous concernant, comme l’adresse IP de votre connexion. Il détaille ses recherches sur son blog et cette attaque est intéressante par son fonctionnement original.

Avant toute chose, précisons que la faille de sécurité a été soumise à Apple fin 2019 et corrigée dès le début de l’année 2020. Il n’est pas nécessaire de paniquer, tant que votre Mac est à jour, vous êtes protégé de cette faille et de toutes celles qui pourraient être liées, le constructeur ayant bloqué les points d’accès utilisés par ce chercheur en sécurité. Cela dit, c’est un bon rappel qu’il faut toujours se méfier de fichiers téléchargés de sources inconnues.

Ce fichier texte en apparence innocent envoyait en fait des informations personnelles à un serveur distant (capture Paulos Yibelo).

L’attaque reposait sur le fait que TextEdit n’est pas qu’un éditeur de texte brut. L’app peut aussi gérer du texte enrichi, avec du gras, des couleurs et mêmes des images. Sans être un traitement de texte complet, c’est une app étonnamment complexe qui mériterait d’ailleurs d’être mieux connue. Mais en l’occurrence, sa complexité est la cause de la faille : l’app peut interpréter du HTML, même s’il est enregistré dans un fichier de texte brut.

Par sécurité, TextEdit ne va pas exécuter n’importe quel code HTML, mais Paulos Yibelo a réussi à trouver un moyen de faire un appel distant avec du code HTML invisible pour l’utilisateur. En ouvrant le fichier, seul le texte était visible, mais un appel au serveur était effectué, ce qui permettait de récupérer au minimum l’adresse IP du Mac. Une astuce supplémentaire pouvait permettre de récupérer un fichier en local, ce qui est une attaque nettement plus sérieuse.

Pour couronner le tout, le chercheur en sécurité a noté que macOS gérait les fichiers .txt en toute confiance, sans appliquer les mesures de sécurité qui sont en place pour les autres types de fichiers. Cet excès de confiance lui a permis de trouver un mécanisme pour ouvrir le fichier directement après son téléchargement, à l’insu de l’utilisateur. En combinant ces différentes failles, il avait mis au point une attaque sophistiquée et dangereuse, mais désormais inutile.

Pour preuve, la version de TextEdit fournie avec macOS Big Sur affiche le code HTML, ce qui veut dire qu’il n’est plus interprété par l’app. Le système utilise aussi son mécanisme d’isolement des fichiers téléchargés pour les .txt, si bien qu’ils ne peuvent plus être ouverts à votre insu.

La dernière version de TextEdit ne se fait plus avoir par le code HTML imaginé par le chercheur en sécurité, preuve que cette faille a été comblée par Apple.
avatar Amaczing | 

C’est la fin des haricots

avatar BitNic | 

Je dirais même plus... des flageolets....

avatar marc_os | 

> Avant toute chose, précisons que la faille de sécurité a été soumise à Apple fin 2019 et corrigée dès le début de l’année 2020. Il n’est pas nécessaire de paniquer, tant que votre Mac est à jour

Ah oui ?
Quid des Mac bloqués, disons par exemple à mac OS 10.11 El Capitan ?
macge, allez-vous financer ceux qui n'ont pas les moyens d'avoir un « Mac à jour » ?

Et c'est quoi ces « recherches » au sujet d'une faille déjà connue et corrigée ?
Pourquoi expliquer aux malandrins comment attaquer les vieux Macs ? 😠
Encore un type on dirait qui veut juste se faire mousser.
Et visiblement, ça marche.

avatar bazino | 

@marc_os

Ben oui ils vont te payer un nouveau Mac ! Le problème en France c’est que les gens sont habitués à tout avoir sans rien faire.

avatar CorbeilleNews | 

@bazino

Vivre le premier degré 🥳

avatar bibi81 | 

Vivre le premier degré 🥳

Vivre ?

avatar CorbeilleNews | 

@bibi81

Vive le correcteur orthographique aussi 😀

avatar BeePotato | 

@ marc_os : « Quid des Mac bloqués, disons par exemple à mac OS 10.11 El Capitan ?
macge, allez-vous financer ceux qui n'ont pas les moyens d'avoir un « Mac à jour » ? »

Pas besoin. Pour éviter cette faille précise, il leur suffit de cocher l’option « Afficher les fichiers HTML sous forme de code HTML et non de texte formaté ».

Option qui devrait être cochée par défaut, ou carrément ne pas exister — je n’ai jamais compris quel pouvait bien être l’intérêt de faire interpréter du HTML par TextEdit au lieu de lui faire afficher le code.

avatar vince29 | 

> je n’ai jamais compris quel pouvait bien être l’intérêt de faire interpréter du HTML par TextEdit au lieu de lui faire afficher le code.

Et pour le RTF il devrait aussi afficher les balises au lieu du texte formaté ?

avatar BeePotato | 

@ vince29 : « Et pour le RTF il devrait aussi afficher les balises au lieu du texte formaté ? »

Il y a une option dans les préférences de TextEdit qui permet ça. 😉

Mais pour un éditeur de texte, interpréter les fichiers RTF ou Word comme le fait TextEdit me semble normal.
Interpréter un fichier HTML alors qu’il ne s’agit pas d’un format prévu pour l’édition et l’échange de texte, et alors qu’il y a juste à côté un logiciel prévu pour afficher du HTML (Safari) et qui le fait bien mieux, ça, ça me semble moins normal.
Et ouvrir un fichier étiqueté explicitement par l’utilisateur comme dédié à du texte brut (via l’extension du nom du fichier) en en interprétant le contenu autrement que comme du texte brut, là ça me semble carrément anormal et aberrant.

Pour reprendre ta question : en ouvrant un fichier « toto.txt » qui contient des balises RTF, il devrait l’afficher comme tu texte brut, ou interpréter ces balises et n’afficher que du texte formaté ?

avatar occam | 

@marc_os

« Pourquoi expliquer aux malandrins comment attaquer les vieux Macs ? »

Comme si les malandrins en avaient besoin.

Quand la République fédérale d’Allemagne fut admise à l’OTAN, on briefa le vieux chancelier Adenauer au sujet de la hiérarchie des secrets de l’organisation :
— Confidential
— Restricted
— Secret
— Cosmic Top Secret

À cela, Adenauer suggéra de superposer une cinquième catégorie, suprême :
Connu de l’Ennemi (Known to the Ennemy / Dem Feind Bekannt)

L’histoire (avec ou sans majuscule) illustre amplement la sagesse de cette position : partir du principe que les secrets les plus compromettants sont compromis, que les failles les plus nuisibles sont connues de l’adversaire, et potentiellement exploitées. Le remède ne consiste pas à les escamoter, mais à les combler.

avatar Alex Giannelli | 

@marc_os

"macge, allez-vous financer ceux qui n'ont pas les moyens d'avoir un « Mac à jour » ?"

🤨 C'est quoi cette réflexion ?

=>>> "Il détaille ses recherches sur son blog et cette attaque est intéressante par son fonctionnement original"

La faille est déjà publiée sur le site de celui qui a trouvé la faille. Quel rapport avec MacG ?

avatar pernet | 

Merci Korben pour l’article !

avatar Nicolas Furno | 

@pernet

🙄

On cite toujours nos sources. Et je ne lis jamais Korben, accessoirement.

avatar dodomu | 

@nicolasf

C’est tout à votre honneur (la citation des sources, pour korben je n’ai pas d’avis 😜), je ne l’avais jamais remarqué conciament, mais maintenant que vous le dites, c’est vrai que la présence de cet encart en bas de vos articles de macg est notable 🙂👍
(Tristement notable d’ailleurs, en tout cas par rapport à la presse que je vois d’habitude malheureusement...)

avatar vincentn | 

@pernet

Et ? Korben il a été pêcher l’info où ?

L’info circule depuis 4 jours sur le net et les réseaux sociaux… et l’auteur de la decouverte a publié son billet le 4 avril… Donc bon…
Et ce n’est que depuis aujourd’hui qu’elle commence à apparaître sur des médias ou des blogs techs plus généralistes. MacG cite l’auteur et comme source l’article de ce jour de MotherBoard/Vice, Korben, juste une référence à l’auteur de l’info, pas de la source où il l’a apprise.
Il ne l’a pas vu directement sur l’obscur blog de l’expert en sécurité (cela m’étonnerait très fortement), il a fait comme tout le monde, de la veille via RSS et autres (RS, forums, mail de lecteur…) jusqu’à ce que le signal faible concernant cette info remonte dans ses flux et prenne de l’ampleur.
Alors oui, Korben a publié cette info en français quelques heures avant MacG. Wouah, quel scoop !

avatar michel pretre | 

"L’attaque reposait sur le fait que TextEdit n’est pas qu’un éditeur de texte brut. L’app peut aussi gérer du texte enrichi, avec du gras, des couleurs et mêmes des images."
Mince ! Je ne suis tout de même pas le seul vieux macuser qui utilise TextEdit tous les jours ?
Pour éviter le piège sur un vieux Mac, on peut choisir d'"Afficher les fichiers HTML sous forme de code HTML et non de texte formaté" dans les préférences d'ouverture de TextEdit. Et voilà…

avatar fte | 

@michel pretre

"Mince ! Je ne suis tout de même pas le seul vieux macuser qui utilise TextEdit tous les jours ?"

Peut-être. Ou pas. Et j’ai envie de dire : et alors ? Ce serait un problème ?

"Pour éviter le piège sur un vieux Mac, on peut choisir d'"Afficher les fichiers HTML sous forme de code HTML et non de texte formaté" dans les préférences d'ouverture de TextEdit. Et voilà…"

La sécurité ne doit pas être "opt-in". Pour un ingénieur sécurité peut-être, mais pour personne d’autre.

avatar BeePotato | 

« Mais en l’occurrence, sa complexité est la cause de la faille : l’app peut interpréter du HTML, même s’il est enregistré dans un fichier de texte brut. »

Déjà, faire interpréter par TextEdit le code HTML des fichiers HTML au lieu de l’afficher tout simplement, j’ai toujours trouvé ça bien étrange comme idée.
Mais aller jusqu’à le faire analyser le contenu d’un fichier marqué comme ne contenant que tu texte brut, pour essayer d’y trouver un document HTML et l’interpréter si c’est le cas, là ça touche carrément au tordu ! Je ne sais pas quel développeur a pu considérer un jour que c’était une bonne idée.

En tout cas, je ne m’étais jamais rendu compte jusque là que TextEdit faisait ça, ayant désactivé son interprétation du HTML depuis que l’option correspondante existe (ce qui fait tellement longtemps que je ne me rappelle plus quand c’était).

avatar ech1965 | 

C'est pour aider l'utilisateur; la prochaine mise à jour fera interpréter les chiffres romains dans les n° tel... comme ça il sera plus facile d'appeler Louis !

avatar mat16963 | 

@BeePotato

L’idée de base était peut-être de pouvoir formater un fichier txt grâce au html. Mais j’avoue que c’est bizarre.

avatar fte | 

@BeePotato

"Déjà, faire interpréter par TextEdit le code HTML des fichiers HTML au lieu de l’afficher tout simplement, j’ai toujours trouvé ça bien étrange comme idée."

HTML, avant CSS, était un moyen quasi-universel de formater du texte, là où rtf n’était que fort peu portable d’une plateforme à une autre, voire d’un logiciel à un autre.

Voilà pourquoi.

avatar brunnno | 

Comprends pas tout :
Au début on nous dit qu’on craint rien en maintenant son mac à jour ( ce qui sous-entend les mises à jour de sécurité), et la fin nous parle de macOS Big Sur ...

Faut-il la mise à jour en passant à le dernière version de l’OS ou seulement les mises à jour de sécurité ??

avatar Nicolas Furno | 

@brunnno

C’est un exemple avec la dernière version de macOS, mais toutes les dernières versions sont OK.

avatar brunnno | 

@nicolasf

👍🏽

avatar OuaisVoilaQuoi | 

C'est marrant chaque fois qu'il y a un article utile de ce genre certains en profitent pour attaquer les journalistes, comme c'est facile !

Certains autres disent "ça fait x jours que l'info est sur...", ils s'en foutent donc qu'un journaliste sérieux passe 4 jours à croiser des sources afin de vérifier la fiabilité, le sérieux et la pertinence de l'info ?

Et enfin certains autres disent "Oooouh ! Chhhhuttt ! Taboooo !!! Toi pas parler des failles, parce que certains pourraient les exploiter !"

...Certains pourraient aussi penser à s'en protéger, grâce aux moteurs de recherche, ou à une ou deux astuces simples présentes ici dans les commentaires, ou tout simplement en pensant à faire les mises à jour nécessaires ?

Perso il m'a fallu deux secondes de recherche pour savoir que (comme indiqué dans l'article) cette faille est ancienne et bien connue, et que les parades sont d'une simplicité enfantine, pour qui veut bien arrêter de râler et se sortir les doigts.

CONNEXION UTILISATEUR