Retour au blog

Comment detecter les processus suspects sur macOS

Apprenez a identifier les malwares et processus suspects sur votre Mac grace a la verification des signatures de code, aux controles Gatekeeper et aux techniques d'inspection des processus.

Votre Mac execute des centaines de processus a tout moment. La plupart sont des services systeme legitimes et des applications que vous avez installees vous-meme. Mais un seul processus malveillant — non signe, s’executant depuis un chemin inhabituel, ou ouvrant discretement des connexions reseau — peut compromettre l’ensemble de votre machine. Savoir faire la difference entre un daemon systeme sain et un intrus suspect est l’une des competences de securite les plus pratiques qu’un utilisateur macOS puisse developper.

Reponse rapide

Pour detecter les processus suspects sur macOS, verifiez l’absence ou l’invalidite des signatures de code avec codesign -dvvv, confirmez l’approbation Gatekeeper avec spctl --assess, et inspectez le chemin de lancement, le processus parent, l’activite reseau et les droits d’acces de chaque processus. Les processus s’executant depuis /tmp, /var/folders ou des emplacements accessibles en ecriture par l’utilisateur sans signature Apple ou developpeur meritent une investigation immediate.

Signaux d’alerte : signes d’un processus suspect

Tout processus inconnu n’est pas forcement un malware, mais certains schemas doivent elever votre niveau de vigilance :

Etape par etape : investigation d’un processus suspect

Lorsque vous reperer quelque chose d’inconnu dans votre liste de processus, effectuez ces verifications de maniere systematique.

1. Verifier la signature de code

La verification la plus importante. Executez codesign sur le binaire :

codesign -dvvv /chemin/vers/binaire-suspect

Recherchez la chaine Authority. Une application saine affiche quelque chose comme :

Authority=Developer ID Application: Company Name (TEAMID)
Authority=Developer ID Certification Authority
Authority=Apple Root CA

Si vous voyez code object is not signed at all ou que la chaine d’autorite est absente, ce binaire n’a jamais ete signe par un developpeur identifie.

2. Verifier le statut Gatekeeper et la notarisation

Gatekeeper d’Apple verifie que le logiciel est notarise — soumis a Apple pour une analyse automatisee des malwares :

spctl --assess --verbose /chemin/vers/binaire-suspect

Une application notarisee retourne accepted, source=Notarized Developer ID. Tout autre resultat signifie que le binaire a contourne ou precede l’exigence de notarisation d’Apple.

3. Inspecter le chemin de lancement et les arguments

Trouvez ou se trouve reellement le binaire du processus :

ps -eo pid,comm,args | grep <nom-du-processus>

Les processus systeme legitimes s’executent depuis /usr/libexec, /System/Library ou /Applications. Un processus nomme com.apple.something s’executant depuis /Users/vous/Library/LaunchAgents/ avec un binaire dans /tmp imite un service systeme.

4. Verifier les mecanismes de persistance

Les malwares installent generalement un LaunchAgent ou LaunchDaemon pour survivre aux redemarrages :

# Persistance au niveau utilisateur
ls ~/Library/LaunchAgents/

# Persistance au niveau systeme
ls /Library/LaunchDaemons/
ls /Library/LaunchAgents/

Ouvrez tout fichier .plist inconnu et verifiez la cle ProgramArguments pour voir quel binaire il lance.

5. Examiner les connexions reseau

Voyez avec quoi le processus communique :

lsof -i -n -P | grep <PID>

Recherchez les connexions vers des IP inconnues, en particulier sur des ports comme 4444, 8080 ou d’autres ports non standard couramment utilises par les serveurs C2 (command and control).

6. Examiner les droits d’acces

Les droits d’acces (entitlements) definissent a quelles ressources systeme un processus peut acceder :

codesign -d --entitlements - /chemin/vers/binaire

Un lecteur PDF legitime ne devrait pas avoir besoin de com.apple.security.device.camera ou com.apple.security.network.server.

Processus legitimes frequemment confondus avec des menaces

Avant de paniquer, consultez cette liste. Ces processus systeme Apple perturbent regulierement les utilisateurs :

ProcessusCe qu’il fait reellement
kernel_taskNoyau macOS ; une utilisation CPU elevee signifie souvent une limitation thermique, pas un malware
mds / mds_storesMoteur d’indexation Spotlight ; pics d’activite apres l’installation d’apps ou la copie de fichiers
WindowServerCompositeur pour l’ensemble de l’interface graphique ; une utilisation CPU elevee est generalement liee a la mise a l’echelle de l’affichage
nsurlsessiondTelechargements en arriere-plan pour les mises a jour de l’App Store et la synchronisation iCloud
trustdDaemon d’evaluation des certificats et de la confiance
syspolicydApplication des politiques Gatekeeper
clouddDaemon de synchronisation iCloud Drive
birdAssistant de synchronisation de documents iCloud
mediaanalysisdTraitement ML de l’app Photos pour la reconnaissance faciale et d’objets
suggestdSuggestions Siri et indexation des connaissances Spotlight

Si l’un de ces processus apparait avec des signatures Apple valides et s’execute depuis /usr/libexec ou /System/Library, il est presque certainement legitime.

Outils pour l’audit de securite des processus

Activity Monitor

Activity Monitor affiche le CPU, la memoire et les informations basiques des processus, mais il ne peut pas afficher les signatures de code, les droits d’acces, les arborescences parent-enfant des processus ni les chemins de lancement de maniere exploitable. Pour le travail de securite, c’est un point de depart au mieux.

Terminal : codesign et spctl

Les outils en ligne de commande codesign et spctl sont la reference pour la verification des signatures et de la notarisation. Ils sont essentiels mais fastidieux lorsque vous devez auditer des dizaines de processus — chacun necessite de trouver manuellement le chemin du binaire.

ProcXray

ProcXray integre la verification des signatures de code et l’inspection des droits d’acces directement dans une interface de surveillance des processus. Pour chaque processus en cours d’execution, vous pouvez voir :

Au lieu d’executer manuellement codesign -dvvv sur chaque binaire, ProcXray expose le contexte de securite de chaque processus en temps reel. Lorsque vous reperer quelque chose de non signe ou s’executant depuis un emplacement inattendu, vous pouvez examiner sa lignee et son contexte reseau sans basculer vers le Terminal.

FAQ

Comment distinguer un malware d’un service systeme legitime ?

Verifiez trois choses : (1) la signature de code — executez codesign -dvvv et recherchez une chaine d’autorite Apple ou d’un developpeur identifie, (2) le chemin de lancement — les services legitimes s’executent depuis /System ou /usr/libexec, pas /tmp ou des repertoires caches, et (3) la persistance — verifiez ~/Library/LaunchAgents et /Library/LaunchDaemons pour des fichiers plist inconnus pointant vers le binaire.

Un malware peut-il se cacher d’Activity Monitor ?

Oui. Les rootkits peuvent intercepter les appels systeme pour masquer des processus aux outils en espace utilisateur. La Protection de l’integrite du systeme (SIP) de macOS rend cela considerablement plus difficile — si SIP est active (csrutil status), la dissimulation au niveau du noyau est bloquee sur les versions recentes de macOS. Cependant, les malwares peuvent toujours se deguiser en utilisant des noms d’apparence legitime ou en s’injectant dans des processus signes.

Gatekeeper protege-t-il contre tous les malwares ?

Non. Gatekeeper et la notarisation fournissent une premiere couche de defense solide — ils bloquent par defaut l’execution des logiciels non signes et non notarises. Mais si un utilisateur contourne explicitement Gatekeeper (clic droit > Ouvrir), ou si le malware est delivre via un processus deja en cours d’execution (par exemple, un exploit de navigateur), Gatekeeper est contourne. La defense en profondeur — verification des signatures, surveillance du comportement des processus et audit des mecanismes de persistance — reste essentielle.

Sources et references

Telecharger ProcXray → — verification integree des signatures de code, macOS Sonoma+.