Agents IA : Apple va serrer la vis sur l'accès complet au disque de macOS
Apple a annoncé ce vendredi 2 octobre un durcissement des conditions d'octroi de l'accès complet au disque sur macOS. Et dans son billet adressé aux développeurs, la firme de Cupertino ne tourne pas autour du pot : plus les agents IA deviennent capables et autonomes, plus les risques liés à ce niveau d'accès vont grimper.
Cette autorisation, nichée dans les Réglages Système, permet à une app d'accéder à peu près à tout ce qui traîne sur votre Mac, de vos fichiers à vos mails, en passant par vos messages et votre historique de navigation.
L'annonce tombe deux semaines après le début d'une polémique qui a fait grand bruit aux États-Unis : Muse, l'agent IA de Meta, est accusé d'avoir lu les messages privés d'un journaliste sans sa permission.
L'agent qui en savait (un peu) trop
Muse, c'est l'agent personnel que Meta a lancé le 8 septembre aux États-Unis (pas encore disponible en Europe), propulsé par Muse Spark, le modèle maison dont je vous parlais ici. Mi-septembre, il a débarqué sur Mac avec la promesse de travailler directement dans vos fichiers, vos mails, vos messages et votre agenda.
Jason Aten, chroniqueur pour Inc. Magazine, l'a installé sur son Mac mini en refusant de lui ouvrir ses messages. Quelques jours plus tard, Muse lui suggère un sujet d'article inspiré d'une conversation avec le co-animateur de son podcast.
L'agent assure ne voir que le texte des notifications, mais le journaliste affirme avoir découvert que Muse avait synchronisé sa base Messages jusqu'à la ligne 187 462, alors que l'accès complet au disque apparaissait désactivé.

Chez Meta, on dément : pour David Singleton, vice-président de l'ingénierie chez Meta Superintelligence Labs (et ancien CTO de Stripe), l'intégration Messages de Muse est optionnelle : l'agent ne peut lire vos messages que si l'accès complet au disque et le connecteur Messages sont tous les deux activés.
Le problème, c'est que seule la première condition est garantie par macOS. Comme l'a rappelé Patrick Wardle, figure bien connue de la sécurité macOS (qui a par ailleurs déniché une faille dans Muse), l'accès complet au disque permet de lire n'importe quel fichier qui n'appartient pas à root, cookies de navigateur et conversations compris.
Le connecteur de Muse n'est donc qu'une promesse de l'éditeur, pas une barrière effective du système.
Sauvegarde qui peut

Sur macOS, l'accès complet au disque est apparu en 2018 avec Mojave, quand Apple a étendu son système de permissions, TCC (Transparency, Consent and Control), aux données les plus sensibles comme Mail, Messages ou l'historique de Safari.
Ce passe-partout, Apple l'a prévu pour les logiciels de sauvegarde, qui doivent pouvoir lire chaque fichier pour en garder une copie.
Mais selon la firme, certains développeurs s'en servent d'une manière qui expose tout le contenu du Mac sans que l'utilisateur comprenne vraiment ce qu'il accepte. Et dans une messagerie, ce sont aussi vos correspondants qui se retrouvent exposés (sans avoir accepté quoi que ce soit).
Cette autorisation ne devrait pas disparaître complètement, mais Apple promet de nouveaux contrôles pour que ce niveau d'accès, qualifié d'extraordinaire par la firme, ne puisse être accordé qu'au prix d'une action très explicite. L'annonce ne donne ni calendrier ni détail technique.
Très explicite, c'est pourtant déjà un peu le cas. Une app ne peut pas réclamer cette autorisation via une simple pop-up : l'utilisateur doit aller l'activer lui-même dans les Réglages Système. Le vrai souci est ailleurs.
Pour lire une seule donnée protégée (vos favoris Safari, par exemple), une app doit réclamer l'accès à tout le reste. Autrement dit, il faut les clés de tout l'immeuble pour relever son courrier, et rendre cette "remise des clés" plus solennelle n'y changera rien.
Apple n'en est pas à son coup d'essai : depuis macOS 27 Golden Gate, sorti mi-septembre, une app qui va fouiller dans les dossiers de données d'autres éditeurs se heurte par défaut à un refus, et XProtect (l'antimalware intégré) peut verrouiller les données les plus prisées des malwares, comme les profils de Chrome, de Firefox ou de Discord.
Agent tous risques
Côté développeurs, deux populations risquent de sentir passer ce tour de vis.
Il y a d'abord les éditeurs d'apps Mac qui dépendent de cette autorisation (sauvegarde, sécurité, utilitaires), dont l'onboarding risque de s'alourdir.
Si votre app réclame ce passe-partout par confort plutôt que par nécessité, c'est le moment de revoir la copie : dans une app sandboxée, le sélecteur de fichiers natif donne accès au seul dossier choisi par l'utilisateur, et les security-scoped bookmarks (des signets qui mémorisent cette autorisation) la conservent d'un lancement à l'autre.
Il y a ensuite ceux qui font tourner des agents IA en local, pour qui le piège est plus sournois.
J'en fais partie, puisque j'ai justement mis ce genre d'agents en place sur mon Mac. macOS attribue les autorisations à l'application dite responsable, celle qui a lancé le processus : si votre terminal a l'accès complet au disque (une manip classique pour en finir avec les Operation not permitted 👀), tout ce qui s'y exécute en hérite, y compris votre agent de code et chaque commande qu'il lance.
On a déjà vu ce qu'un agent pouvait faire d'un simple token API déniché dans un fichier sans rapport avec sa tâche. Avec l'accès complet au disque, ce n'est plus un fichier qui traîne à portée de l'agent, c'est tout le Mac. Et retirer cet accès ne verrouille pas tout pour autant, puisque vos clés SSH et les fichiers .env de vos projets restent lisibles par n'importe quel processus lancé sous votre compte.
Les parades n'ont rien d'exotique : vous pouvez réserver aux agents un terminal dédié sans autorisation spéciale, leur créer un compte macOS à part ou, si vous voulez une vraie cloison, les enfermer dans une machine virtuelle Linux qui ne voit que le dépôt sur lequel ils travaillent. Lima fait ça très bien, à condition de le lui demander : par défaut, il partage tout votre dossier personnel avec la VM (en lecture seule, certes, mais ~/.ssh compris).
Dans son annonce de Muse, Meta promettait un agent capable de faire des suggestions sans qu'on le lui demande. Sur ce point au moins, difficile de les accuser de publicité mensongère.
À propos de l'auteur
Nicolas Lecointre
Chief Happiness Officer des développeurs, ceinture noire de sudo. Pour rire, j'ai créé Les Joies du Code. J'utilise Vim depuis 10 ans parce que je sais pas comment le quitter.
À lire également
Ma phobie administrative a enfin trouvé son fix, et il s’appelle Abby
Je DÉTESTE, je HAIS l'administratif. Voilà, c'est dit, et ça me semble être une belle entrée en matière pour cet article. C’est assez simple, à mon niveau, tout ce qui...
Articles similaires
OpenSSL 4.0 : la bibliothèque qui sécurise Internet fait peau neuve
Attention : des hackers publient de fausses alertes de sécurité sur GitHub pour vous piéger
Claude Mythos : le modèle IA d'Anthropic trop dangereux pour être rendu public
Axios compromis : un cheval de Troie découvert dans une dépendance du célèbre package npm
OpenSSL 4.0 : la bibliothèque qui sécurise Internet fait peau neuve
Attention : des hackers publient de fausses alertes de sécurité sur GitHub pour vous piéger
Claude Mythos : le modèle IA d'Anthropic trop dangereux pour être rendu public
Axios compromis : un cheval de Troie découvert dans une dépendance du célèbre package npm
Plus de contenu
Quand quelqu'un ouvre son IDE en thème light devant moi
On sait tous que le bug disparaît sous 5 minutes
Quand le chef me demande si je suis chaud pour taffer sur un gros projet VB
Quand le nouveau me demande où il peut trouver la doc
Quand le client valide le devis puis négocie après la livraison
Quand je tape sudo
Quand c'était ma dernière tentative pour corriger un bug et qu'il est toujours présent
Quand je copie le code généré par GPT-3 pour l'intégrer dans mon projet
Quand quelqu'un ouvre son IDE en thème light devant moi
On sait tous que le bug disparaît sous 5 minutes
Quand le chef me demande si je suis chaud pour taffer sur un gros projet VB



