L’exfiltration de données est l’étape au cours de laquelle des données qui auraient dû rester sur un ordinateur se retrouvent ailleurs. MITRE ATT&CK, la base de connaissances publique sur les comportements des attaquants tenue par MITRE, lui consacre une tactique à part, TA0010, définie en une phrase : « The adversary is trying to steal data », l’adversaire cherche à voler des données. Tout ce qui précède, d’un faux installateur à une instruction piégée donnée à un agent IA, compte surtout pour la victime à cause de ce moment-là. Cet article explique comment l’exfiltration fonctionne sur un Mac, quelles techniques MITRE recense, pourquoi elle passe inaperçue et quels signaux réseau la trahissent malgré tout.
Collecter, préparer, envoyer
L’exfiltration est rarement une action unique. MITRE décrit une suite d’étapes. Les données sont d’abord collectées, par exemple dans le trousseau (Keychain), qui, comme le rappelle la technique T1555.001, conserve noms de comptes, mots de passe, clés privées, certificats, données d’applications sensibles, données de paiement et notes sécurisées. Elles sont ensuite souvent regroupées dans un dossier local (T1074.001), puis compressées ou chiffrées (T1560) avant l’exfiltration, ce qui les rend plus légères à envoyer et plus difficiles à inspecter au passage. Ce n’est qu’à ce moment qu’elles partent. Chaque étape se déroule sur le Mac, mais seule la dernière doit traverser le réseau : c’est pourquoi le réseau est l’endroit où l’exfiltration se voit le plus régulièrement.
Les techniques recensées par MITRE ATT&CK
La tactique Exfiltration compte aujourd’hui neuf techniques. Elles se distinguent surtout par le canal utilisé, et plusieurs ont des sous-techniques propres à une destination précise.
| ID | Technique | Ce que cela signifie en pratique |
|---|---|---|
| T1041 | Exfiltration Over C2 Channel | Les données partent par la connexion que l’attaquant utilise déjà pour envoyer ses commandes. |
| T1048 | Exfiltration Over Alternative Protocol | Un autre protocole ou une autre destination que le canal de commande, chiffré ou non (T1048.001 à .003). |
| T1567 | Exfiltration Over Web Service | Un service légitime : dépôt de code (.001), stockage en ligne (.002), site de partage de texte (.003), webhook (.004). |
| T1029 | Scheduled Transfer | Des envois à heures fixes pour se fondre dans l’activité normale. |
| T1030 | Data Transfer Size Limits | Des envois en blocs de taille fixe pour rester sous les seuils d’alerte. |
| T1020 | Automated Exfiltration | Un envoi automatique dès la collecte ; T1020.001 couvre la duplication de trafic. |
| T1011 | Exfiltration Over Other Network Medium | Un autre support que la connexion principale, comme le Bluetooth (T1011.001). |
| T1052 | Exfiltration Over Physical Medium | Un support amovible, comme une clé USB (T1052.001). |
| T1537 | Transfer Data to Cloud Account | Le transfert des données vers un autre compte du même service cloud. |
Les voleurs d’informations : l’exfiltration comme raison d’être
Sur les Mac personnels, les programmes les plus courants construits autour de l’exfiltration sont les voleurs d’informations (infostealers) : des logiciels qui collectent mots de passe, données de navigation et fichiers, puis les envoient à un serveur. La fiche MITRE de Cuckoo Stealer (S1153), un programme pour macOS qui tient à la fois du logiciel espion et du voleur d’informations, signalé par Kandji et SentinelOne en 2024, montre ce schéma pas à pas. Il collecte les signets, cookies et l’historique de Safari (T1217), copie les fichiers du trousseau (T1555.001), demande le mot de passe de l’utilisateur au moyen de fausses fenêtres système (T1056.002), prend des captures d’écran avec la commande intégrée screencapture (T1113), regroupe le tout localement (T1074.001), puis envoie les informations système et les mots de passe obtenus à son serveur de commande (T1041). MITRE associe la même technique d’exfiltration à d’autres familles visant macOS, dont MacMa, XCSSET, ThiefQuest et LightSpy. Notre article sur Atomic Stealer suit un autre voleur visant macOS plus en détail.
La dernière étape est la seule qui ait besoin d’Internet, et elle ne dure souvent que quelques secondes. Le temps que quoi que ce soit d’autre paraisse anormal sur le Mac, les données sont déjà parties : c’est pourquoi la détection doit surveiller les connexions sortantes plutôt qu’attendre des symptômes visibles.
Pourquoi elle passe inaperçue
La description de la technique T1567 par MITRE résume bien la difficulté. Les services populaires offrent une couverture parce que les machines d’un réseau communiquent déjà avec eux avant toute compromission, que des règles de pare-feu existent souvent déjà pour autoriser ce trafic, et que ces fournisseurs utilisent couramment le chiffrement SSL/TLS, ce qui ajoute une protection pour l’attaquant. Vu de l’extérieur, un envoi vers un service de stockage connu en HTTPS ressemble à une sauvegarde. Les transferts programmés (T1029) et les blocs de taille fixe (T1030) vont plus loin et imitent délibérément le rythme du trafic ordinaire. Un pare-feu qui ne filtre que les connexions entrantes, comme le coupe-feu intégré à macOS, ne joue ici aucun rôle, puisque tous les canaux d’exfiltration ci-dessus partent du Mac.
Les agents IA : un nouveau chemin vers le même résultat
Les agents IA installés sur un Mac, comme les assistants de programmation qui lisent des fichiers, lancent des commandes et ouvrent des connexions, ajoutent une voie qui ne demande aucun programme voleur installé. Le projet OWASP Gen AI Security définit l’injection de prompt indirecte comme ce qui se produit lorsqu’un modèle accepte des entrées venant de sources externes, comme des sites web ou des fichiers. Il donne un scénario d’exfiltration : un utilisateur demande à un modèle de résumer une page web dont les instructions cachées lui font insérer une image pointant vers une adresse extérieure, si bien que le chargement de l’image transmet la conversation privée à cette adresse. Un agent qui peut aussi lancer curl ou appeler un webhook transforme la même ruse en envoi de fichier. En termes ATT&CK, le résultat reste T1567 ou T1048 ; seul le point de départ a changé, d’un installateur à une phrase que l’agent a lue. La façon dont FireAI reconnaît les agents eux-mêmes fait l’objet d’un article à part.
Les signaux qui la trahissent
Les conseils de détection de MITRE pour ces techniques reviennent aux mêmes indices réseau. Pour T1041, ils désignent les processus qui génèrent habituellement peu de trafic mais envoient soudain un gros volume, et les connexions chiffrées vers des destinations externes rares ou au rapport d’octets anormal. Pour T1567, ils ajoutent les processus qui n’ouvrent normalement pas de connexions et se mettent soudain à établir des connexions HTTPS sortantes avec beaucoup plus de données envoyées que reçues. Pour T1030 et T1029, ils suggèrent de chercher des envois de taille uniforme à intervalles réguliers, et des tâches LaunchAgent ou launchd qui envoient vers la même destination selon un calendrier. Ramené à un seul Mac, quatre questions couvrent l’essentiel : cette application parle-t-elle à une destination qu’elle n’a jamais utilisée ; envoie-t-elle beaucoup plus que d’habitude ; envoie-t-elle beaucoup plus qu’elle ne reçoit ; et le fait-elle à heures fixes ?
Vérifier à la main avec nettop
macOS fournit nettop, qui affiche l’utilisation du réseau par processus. Avec -P, il donne une ligne par processus, -L 1 imprime un seul relevé au format CSV et -J limite les colonnes. Les compteurs sont des totaux depuis le lancement de chaque processus : un seul relevé indique qui a le plus envoyé, pas qui envoie en ce moment. Lancez-le deux fois à une minute d’intervalle et comparez pour voir la différence.
# octets reçus et envoyés par chaque processus, un seul relevé
nettop -P -L 1 -J bytes_in,bytes_out
,bytes_in,bytes_out,
launchd.1,0,0,
syslogd.634,0,422,
apsd.640,5506,23880,
...Un processus qui envoie bien plus d’octets qu’il n’en reçoit, et dont on n’attend aucun envoi, mérite qu’on s’y arrête. Les limites sont claires : nettop ne dit pas où sont parties les données, ne garde aucun historique et ne vous prévient pas quand vous ne regardez pas.
Ce que FireAI signale
FireAI, le pare-feu sur l’appareil conçu par HisnLabs, mesure en continu deux de ces questions et pose la troisième. Chaque seconde, il additionne la quantité de données que le Mac envoie vers chaque pays. Un pays est signalé comme pic d’envoi lorsqu’il a reçu au moins 5 Mo au cours des 10 dernières secondes et au moins dix fois sa quantité habituelle : il passe en tête de la liste de la carte du monde, en rouge, avec sa vitesse d’envoi, l’icône de la barre des menus affiche une flèche et le code du pays, et l’écran d’accueil change d’état. Un pic reste signalé une minute après sa fin, et un envoi qui se poursuit simplement, comme une sauvegarde, devient la nouvelle normale au bout de quelques minutes. FireAI ne bloque pas un pic de lui-même : il montre quelles applications et quelles destinations en sont à l’origine pour que vous décidiez.
Pour les agents IA, le profil Agent apprend pendant trois jours où chacun des 19 agents que FireAI reconnaît se connecte d’habitude. Ensuite, une destination jamais vue est signalée pour examen, de même qu’une heure pendant laquelle l’agent a envoyé au moins quatre fois plus que sa plus grosse heure jusque-là, et jamais moins de 25 Mo. Dans le mode de sécurité Profil Agent, une nouvelle destination est bloquée jusqu’à ce que vous l’autorisiez. En dehors des agents, la demande de connexion couvre les nouvelles destinations de toutes les applications : la première fois qu’une application tente de joindre une destination sans règle, FireAI met cette connexion en pause et vous demande. Tout cela repose uniquement sur des métadonnées, noms d’hôtes et nombres d’octets ; FireAI ne lit pas le contenu des connexions.
Une courte liste de contrôle
- Sachez quelles applications de votre Mac sont censées envoyer des données, comme la sauvegarde, la synchronisation ou la visioconférence, et considérez les envois des autres comme des questions.
- Surveillez les destinations nouvelles, surtout pour les outils en ligne de commande et les agents IA.
- Comparez octets envoyés et reçus par processus : un rapport sortant élevé mérite un coup d’œil.
- Passez en revue les LaunchAgents et les éléments d’ouverture que vous ne reconnaissez pas, car un transfert programmé a besoin de quelque chose pour le programmer.
- Ne donnez aux agents IA que les dossiers et les jetons dont ils ont besoin, et limitez leurs destinations réseau à une liste connue.
Le rôle de FireAI et de HisnLabs
L’exfiltration doit traverser le réseau, et c’est là que FireAI regarde : nouvelles destinations, envois par pays et par agent, uniquement sur votre Mac. Essayez-le gratuitement pendant 17 jours.
FireAI est le produit de HisnLabs : un pare-feu IA embarqué pour Mac. Il montre en langage clair chaque connexion faite par vos applications et vous laisse décider ce qui sort de votre Mac — son IA fonctionne en local, votre trafic ne nous est jamais envoyé, ni à personne d’autre. L’équipe de recherche en sécurité de HisnLabs est celle qui garde ces décisions fiables : elle recense les domaines de simple télémétrie face à ceux d’un vrai service, suit le pays et le réseau derrière une connexion, et entraîne le modèle embarqué (la fonction FireAI Pilot) sur du trafic réel, sans que rien ne quitte votre Mac.
Vous pouvez lire les choix techniques qui s’y trouvent, ou essayer FireAI pendant 17 jours, sur FireAI, par HisnLabs.
