Retour au blog
·10 min de lecture·productdevbook

Comment savoir si une application Mac vous espionne via le réseau

Guide pragmatique pour repérer les applications Mac qui appellent leur serveur plus que de raison, et les signaux qui distinguent le bruit de la vraie surveillance.

  • Privacy
  • Security
  • macOS
  • Network monitoring

Vous installez une application d'enregistrement d'écran, lui donnez les permissions qu'elle demande, et une semaine plus tard vous remarquez qu'elle transfère quelques centaines de kilooctets chaque nuit à 3 h. Vous espionne-t-elle ? Probablement pas. Fait-elle quelque chose pour quoi vous n'aviez pas signé ? Possiblement. La question de savoir si une application Mac espionne le réseau a une vraie réponse, et ce n'est pas « oui » ou « non » — c'est « qu'est-ce qui quitte réellement la machine, où ça va, et est-ce que ça correspond à ce que l'application vous a dit qu'elle ferait ».

C'est un billet technique, pas un billet paranoïaque. La plupart des applications vont bien. Quelques applications sont bavardes. Un très petit nombre fait des choses qu'elles ne devraient pas. Le but est de les distinguer avec des preuves plutôt que des intuitions.

Télémétrie vs surveillance — ce n'est pas pareil

Deux choses très différentes sont souvent mises dans le même sac :

  • Télémétrie. L'application rapporte des données d'usage plutôt anonymes : compteurs de fonctionnalités, logs de plantage, info d'installation, parfois démographie grossière. Généralement divulguée dans la politique de confidentialité. Souvent désactivable. Généralement pas malicieuse, même quand c'est agaçant.
  • Surveillance. L'application exfiltre du contenu — ce que vous avez tapé, quels fichiers vous avez ouverts, ce qui est sur votre écran, vos contacts, l'entrée de votre caméra — vers un serveur, sans divulgation ou avec une divulgation délibérément vague. C'est rare dans les applications grand public du Mac App Store mais ça arrive, surtout dans les applications gratuites à monétisation peu claire.

Un moniteur de bande passante peut vous montrer le volume et le timing de l'activité réseau. Il ne peut pas vous dire le contenu d'une connexion chiffrée. La discordance entre comportement divulgué et comportement observé suffit généralement à signaler une application Mac qui espionne le réseau — ou, plus souvent, à confirmer que ce qui paraissait suspect est en fait banal.

Signes qu'une application Mac espionne le réseau

Voici les motifs qui méritent un regard plus attentif.

Téléversements hors-heures

Une application qui téléverse des données à 3 h quand vous dormez, quand aucune action utilisateur n'a pu déclencher cela, mérite une question. Quelques raisons légitimes existent (batching d'analytique, téléversement de logs d'erreur, synchro de contenu), mais un enregistreur d'écran téléversant 80 Mo à 3 h alors que la fonction d'enregistrement n'est pas en usage mérite au moins qu'on demande.

Reconnexions persistantes

Une application qui maintient une connexion longue durée ou se reconnecte toutes les quelques secondes fait de la communication en direct. Les messageries et outils de collaboration (Slack, Discord, Figma) ont besoin de cela. Un lecteur PDF non.

Téléversements lents soutenus

Un filet de 5-20 Ko/s constant est l'empreinte d'une télémétrie en streaming. Que ce soient des frappes de touches, des frames d'écran, ou juste des événements d'analytique dépend de l'application. Vaut la peine de savoir ce qu'il y a derrière.

Connexions vers de nombreux hôtes distincts

La plupart des applications légitimes parlent à un petit nombre de backends — leurs propres serveurs, peut-être un fournisseur d'analytique, peut-être un CDN. Une application parlant à 30 hôtes distincts utilise soit beaucoup de SDKs tiers (typique pour les applications financées par la pub) soit fait quelque chose de plus intéressant.

Destinations chiffrées vers des plages IP inconnues

Presque toutes les applications modernes utilisent HTTPS, donc le chiffrement en soi n'est pas suspect. Ce qui est intéressant c'est quels hôtes. Une application qui parle à son propre domaine plus un CDN Cloudflare et un endpoint d'analytique Apple est normale. Une application qui parle à une adresse IP nue dans un pays sans rapport avec le développeur est au moins curieuse.

Ce que vous pouvez réellement voir, et ce que vous ne pouvez pas

Un moniteur de bande passante par application sur macOS vous donne :

  • Nom de processus (et processus auxiliaires, quand correctement attribués).
  • Octets envoyés et reçus dans le temps.
  • Débit en direct, avec historique.
  • Souvent les compteurs de connexions.

Il ne vous donne pas :

  • Le contenu des connexions chiffrées.
  • Le domaine ou IP de destination sans outils supplémentaires.
  • Si l'application lit votre micro, écran, ou frappes.

Pour le côté destination, lsof -i -n -P montre les connexions actuellement ouvertes par processus. Pour la résolution de domaine, vous pouvez associer cela avec un log DNS ou un outil comme Little Snitch. Pour le contenu, il faudrait un proxy man-in-the-middle avec des certificats racines installés, ce qui est une configuration plus invasive que la plupart des gens ne veulent.

La pile réaliste pour la plupart des utilisateurs est :

  1. Un moniteur de bande passante en barre de menu pour quand et combien.
  2. Les panneaux de permissions de confidentialité de macOS pour ce à quoi l'application peut accéder.
  3. Du lsof occasionnel pour à qui elle parle.

C'est assez pour attraper presque tout ce qui compte.

Une routine d'investigation pratique

Si le comportement d'une application vous rend suspect :

1. Obtenez une base

Observez l'application pendant une semaine sans intervention. Quel est son motif normal de téléversement ? Quand transfère-t-elle des données ? Combien par jour ? Sans base, chaque pic semble suspect. Avec une base, seules les vraies anomalies ressortent.

2. Vérifiez les permissions de confidentialité

Réglages Système → Confidentialité et sécurité. Regardez :

  • Accès complet au disque (très puissant — la plupart des applications n'en ont pas besoin).
  • Enregistrement d'écran.
  • Accessibilité.
  • Caméra, Microphone.
  • Fichiers et dossiers.

Recoupez : l'objet déclaré de cette application exige-t-il ces permissions ? Une application de prise de notes n'a pas besoin de l'enregistrement d'écran. Un utilitaire clavier n'a pas besoin de l'accès complet au disque.

3. Vérifiez les destinations réseau

Lancez lsof -i -n -P | grep AppName pendant que l'application fait ce qui vous a rendu curieux. Regardez les hôtes distants. Faites une recherche DNS inverse ou WHOIS sur ceux qui ont l'air inhabituels.

4. Lisez la politique de confidentialité

Oui, c'est fastidieux. Mais la question pertinente est « la politique divulgue-t-elle ce que vous observez ». Si l'application téléverse de la télémétrie quotidienne et que la politique dit « nous collectons des données d'usage anonymes », c'est cohérent. Si l'application téléverse de la télémétrie quotidienne et que la politique ne dit rien sur la collecte de données, c'est une discordance.

Surveiller cela sur votre propre machine

ova est un moniteur de bande passante en barre de menu qui montre les débits par application en direct et les chronologies historiques. Pour le genre d'investigation dans ce billet, ce qui compte est :

  • Attribution par application qui gère les processus auxiliaires correctement (pour qu'un Chrome Helper ne soit pas sa propre ligne).
  • Historique parcourable, pour que « qu'a fait cette application à 3 h mardi dernier » ait une réponse.
  • Données strictement locales, pour que vous ne partagiez pas la même information que vous essayez de protéger en la confiant à un service de monitoring cloud.
Strictement local par conception
ova stocke les données d'échantillonnage par application sur disque localement. Pas de télémétrie, pas de synchro cloud, pas de compte. L'intérêt de surveiller des préoccupations de confidentialité est sapé si l'outil de surveillance lui-même téléverse ce qu'il voit.

Ce qui est normal — quelques exemples

Quelques applications qui ont l'air suspectes si vous ne les connaissez pas :

  • mdworker_shared. Indexeur Spotlight de macOS. Travail d'arrière-plan, pas lourd en réseau.
  • trustd. Valide les certificats SSL. Parle aux serveurs Apple. Normal.
  • apsd. Apple Push Service. Maintient une connexion longue durée vers Apple. Normal.
  • nsurlsessiond. Planificateur de tâches réseau d'arrière-plan. Beaucoup d'applications mettent en file leurs téléversements/téléchargements à travers cela ; il apparaît comme worker, pas comme l'application originale.
  • syncdefaultsd. Synchronise les préférences via iCloud. Faible volume, fréquent.
  • Dropbox / Google Drive / OneDrive. Clients de synchro. Gros volume, pas suspect.
  • Slack Helper (Renderer). Processus auxiliaires de Slack. Beaucoup ; ensemble ils représentent le trafic de Slack.

Si vous ne reconnaissez pas un processus, recherchez le nom exact entre guillemets — "process_name" macOS — et vous trouverez généralement une réponse claire en cinq minutes.

Voyez ce que vos applications font vraiment en ligne

ova est un moniteur de bande passante en barre de menu consultable d'un coup d'œil — local, signé, ~3 Mo. Pas de comptes, pas de cloud.

Télécharger pour macOS

Quand quelque chose semble vraiment anormal

Vous avez observé une application pendant une semaine, le motif ne correspond pas à son objet déclaré, la politique de confidentialité ne mentionne pas ce que vous voyez, et lsof montre des connexions vers des hôtes qui n'ont pas de sens. Et maintenant ?

Dans l'ordre :

  1. Quittez l'application et supprimez-la. Glisser dans la Corbeille n'est pas toujours suffisant — beaucoup d'applications installent des LaunchAgents ou LaunchDaemons qui persistent. Des outils comme AppCleaner aident ; l'inspection manuelle de ~/Library/LaunchAgents et /Library/LaunchAgents est plus complète.
  2. Révoquez toute permission de confidentialité qu'elle avait.
  3. Décidez si vous voulez la signaler. Apple prend les rapports du Mac App Store au sérieux. L'Apple Feedback Assistant et le flux de signalement de l'App Store sont les bons canaux.
  4. N'essayez pas de la « bloquer » au niveau pare-feu sur une machine où vous continuerez à utiliser l'application. C'est le cas d'usage du pare-feu (territoire Little Snitch). Un moniteur est pour la visibilité ; si vous voulez bloquer, utilisez un outil de blocage. ova est un moniteur, pas un pare-feu.

Pour conclure

La plupart des applications vont bien. Quelques-unes sont bavardes. Un petit nombre franchit des lignes qu'elles ne devraient pas. Repérer une application Mac qui espionne le réseau n'est pas de la paranoïa — c'est de l'hygiène. Observez votre machine pendant une semaine, développez une base, et l'anormal ressort sans effort.

Installez ova, laissez-le tourner discrètement, et la prochaine fois qu'une application semble bizarre vous aurez des données au lieu d'une intuition.