Antivirus : détection, angles morts et test EICAR
Un antivirus compare les fichiers à une base de signatures et surveille leur comportement à l'exécution, pour bloquer un programme malveillant avant qu'il ne s'installe. Il détecte bien ce qui est déjà connu, mal ce qui est neuf ou chiffré, et ne remplace ni un pare-feu, ni les mises à jour système, ni des sauvegardes hors ligne.
Ce qu’un antivirus regarde, et à quel moment
Deux moteurs cohabitent dans un produit moderne. Le premier travaille en temps réel : sous Windows, le pilote de filtre de système de fichiers WdFilter.sys intercepte chaque ouverture, écriture ou exécution et passe la main au service MsMpEng.exe, qui rend un verdict avant que l'appel système ne se termine. Le second est le scan à la demande, celui que vous lancez le dimanche sur tout le disque. Il ne sert qu'à rattraper ce qui était déjà présent avant l'installation, ou ce qui est passé pendant une coupure de définitions.
La détection ne se limite pas à comparer des empreintes. Un moteur enchaîne en général le hash exact, la signature de motif sur des octets précis, l'émulation dans un bac à sable pour dérouler un packer, l'analyse comportementale à l'exécution, puis l'interrogation d'un service de réputation en ligne quand le fichier est inconnu. Cette dernière étape a une conséquence réseau souvent ignorée : un poste coupé d'Internet perd une partie de sa capacité de détection, même avec des définitions parfaitement à jour.
Les charges utiles ne sont plus toujours des fichiers. Windows expose pour cela l'interface AMSI, qui remet au moteur le contenu déobfusqué d'un script PowerShell, d'une macro VBA ou d'un bloc .NET juste avant son exécution. C'est ce qui permet de bloquer une commande PowerShell encodée en base64 qui n'a jamais touché le disque.
| Méthode | Ce qu'elle attrape | Ce qui lui échappe |
|---|---|---|
| Signature ou hash | Un échantillon déjà analysé et publié | Une variante recompilée le matin même |
| Heuristique statique | Motifs de code, sections et imports suspects | Un binaire packé avec un outil maison |
| Émulation en bac à sable | La charge réelle déballée à l'exécution simulée | Un code qui détecte la sandbox et attend |
| Analyse comportementale | Chiffrement massif de fichiers, injection dans un processus | Des actions lentes, noyées dans l'usage normal |
| Réputation en ligne | Un binaire rare, jamais vu ailleurs | Un fichier signé avec un certificat volé |
Tester son antivirus sans virus : le fichier EICAR
Le fichier de test EICAR est une chaîne ASCII de 68 caractères publiée par l'European Institute for Computer Antivirus Research. Tous les moteurs sérieux s'accordent à la signaler comme malveillante alors qu'elle ne l'est pas : c'est un exécutable DOS valide qui affiche EICAR-STANDARD-ANTIVIRUS-TEST-FILE! puis se termine.
Sous Linux ou macOS, une ligne suffit à vérifier qu'un scanner réagit : printf '%s' 'X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*' > /tmp/eicar.com puis clamscan /tmp/eicar.com, qui doit répondre Win.Test.EICAR_HDB-1 FOUND. Sous Windows avec la protection temps réel active, le fichier disparaît souvent avant même que l'éditeur ne l'ait enregistré. C'est le comportement attendu.
Le même fichier teste une chaîne réseau, pas seulement un poste. eicar.org le propose en clair et en HTTPS : si la version en clair est bloquée par votre passerelle et pas la version chiffrée, l'inspection s'arrête au TLS. C'est la configuration par défaut de la plupart des installations, et cela vaut la peine de le savoir avant un incident plutôt qu'après.
Un antivirus qui ne bronche pas sur EICAR est soit désactivé, soit exclu du dossier où vous testez.
Antivirus, anti-malware, EDR, pare-feu : la confusion classique
Au sens strict, un virus est un code qui s'attache à un fichier hôte et se réplique quand celui-ci est exécuté. Un ver se propage seul par le réseau, un cheval de Troie ne se réplique pas du tout. Les vrais virus par infection de fichier sont aujourd'hui minoritaires : l'essentiel du volume, ce sont des chevaux de Troie, des rançongiciels, des voleurs d'identifiants et des logiciels publicitaires. Le mot est resté, le périmètre a changé.
Anti-malware et antivirus désignent le plus souvent le même produit sous deux noms commerciaux. La vraie rupture est ailleurs : un EDR ne se contente pas de bloquer, il enregistre l'arbre des processus, les connexions sortantes et les écritures en base de registre, puis les corrèle. Il produit des alertes qu'il faut lire, ce qui suppose quelqu'un en face. Installer un EDR sans analyste revient à payer un journal que personne n'ouvre.
| Outil | Ce qu'il inspecte | Ce qu'il fait | Qui l'exploite |
|---|---|---|---|
| Antivirus | Fichiers, mémoire et scripts du poste | Bloque et met en quarantaine | Personne, une fois installé |
| Anti-malware | La même chose, souvent le même moteur | Idem, parfois en second avis à la demande | L'utilisateur ou le support |
| EDR | Processus, réseau, registre, en continu | Alerte, isole la machine, permet la chasse | Un analyste ou un SOC |
| Pare-feu | En-têtes IP, ports, parfois le SNI | Autorise ou refuse un flux | L'administrateur réseau |
Ce qu’il ne verra pas, et ce qu’il peut casser
Le 21 avril 2010, la mise à jour DAT 5958 de McAfee a classé svchost.exe, composant standard de Windows XP SP3, comme le ver W32/Wecorl. Fichier mis en quarantaine, machines en boucle de redémarrage ou sans réseau, dans des hôpitaux et des administrations entières. Le 19 juillet 2024, un fichier de configuration défectueux poussé par CrowdStrike Falcon a provoqué un écran bleu au démarrage sur environ 8,5 millions de machines Windows selon Microsoft. Falcon est un EDR et non un antivirus classique, mais le mécanisme en cause est identique : du code privilégié, mis à jour plusieurs fois par jour, sans validation côté client.
Côté détection, les angles morts sont documentés depuis longtemps. Un binaire recompilé ou repacké change d'empreinte à chaque livraison. Une attaque qui n'utilise que des outils déjà présents sur la machine, PowerShell, certutil, rundll32, wmic, ne dépose parfois aucun fichier suspect à analyser. Et un rançongiciel qui chiffre lentement, dossier par dossier, ressemble statistiquement beaucoup à un logiciel de sauvegarde.
Deux réglages font plus de dégâts que les attaquants. Les exclusions trop larges, typiquement exclure la totalité d'un volume de données sur un serveur de fichiers pour régler un problème de performance, créent une zone où rien n'est analysé et où les charges finissent par être déposées. L'inspection TLS locale, elle, oblige le produit à installer sa propre autorité de certification sur le poste et à déchiffrer tout votre trafic. Si ce composant est mal écrit, il devient le maillon faible de chaque connexion HTTPS de la machine.
Un antivirus ne protège pas non plus contre un mot de passe réutilisé, un port d'administration ouvert sur Internet ou une sauvegarde restée montée en écriture pendant le chiffrement.
Le piloter : commandes et points de contrôle
Sous Windows 10 et 11, Microsoft Defender Antivirus est installé par défaut et bascule tout seul en retrait dès qu'un autre moteur s'enregistre auprès du Centre de sécurité. Pour savoir ce qui protège réellement une machine, sans se fier à l'icône de la barre des tâches : Get-CimInstance -Namespace root/SecurityCenter2 -ClassName AntiVirusProduct.
Sur un serveur Linux, l'antivirus protège rarement le serveur lui-même : il analyse ce qui transite vers des postes Windows. Deux points de branchement reviennent tout le temps. clamd écoute sur un socket local ou sur le port TCP 3310, et clamav-milter le fait appeler par Postfix pour le courrier entrant sur le port 25. ICAP, défini par la RFC 3507 et servi sur le port 1344, permet à un proxy comme Squid de sous-traiter l'analyse du contenu HTTP à un scanner externe via c-icap.
Un dernier réflexe : jamais deux moteurs temps réel sur la même machine. Ils s'analysent l'un l'autre, se mettent mutuellement en quarantaine et divisent les performances disque. Un second produit n'a de sens qu'en scan à la demande, ou en ligne via un agrégateur comme VirusTotal, qui confronte un fichier à plus de 70 moteurs et affiche les désaccords entre eux.
- Get-MpComputerStatus donne l'état de la protection temps réel et l'âge des définitions ; AntivirusSignatureAge doit rester à 0 ou 1 jour.
- MpCmdRun.exe -SignatureUpdate force la mise à jour, puis MpCmdRun.exe -Scan -ScanType 3 -File D:\partage lance une analyse ciblée d'un répertoire.
- MpCmdRun.exe -Restore -Name
ressort un faux positif de C:\ProgramData\Microsoft\Windows Defender\Quarantine. - Dans le journal Microsoft-Windows-Windows Defender/Operational, l'événement 1116 signale une détection et le 1117 l'action appliquée. Ce sont les deux identifiants à remonter dans votre supervision, avec l'âge des signatures.
- Côté Linux, clamscan -r --infected /srv/partage pour un passage manuel, avec freshclam en démon pour les définitions (12 vérifications par jour par défaut dans freshclam.conf).
- Add-MpPreference -ExclusionPath ajoute une exclusion : notez-la quelque part, avec sa date et sa raison, sinon personne ne saura dans six mois pourquoi ce dossier n'est plus analysé.
Questions fréquentes
Faut-il un antivirus payant sous Windows 11 ?
Pour un poste personnel, Microsoft Defender fait le travail : même type de moteur, mêmes remontées cloud, aucune installation à maintenir. Ce que vous achetez avec un produit payant, c'est une console centrale, des rapports, du support et parfois une brique EDR. Sur un parc de trente postes, cette console change vraiment la donne. Sur une machine unique, beaucoup moins.
Un antivirus protège-t-il du phishing ?
Partiellement. Il bloquera la pièce jointe piégée ou l'exécutable téléchargé depuis le lien, s'il le reconnaît. Il ne fera rien contre une page de connexion imitée où vous saisissez vous-même vos identifiants : aucun code malveillant n'est impliqué. Le contre-feu utile là, c'est l'authentification à deux facteurs et un filtrage DNS ou navigateur.
Un Mac ou un serveur Linux ont-ils besoin d’un antivirus ?
macOS embarque déjà XProtect pour la détection par signature, Gatekeeper pour le contrôle des binaires signés et XProtectRemediator depuis macOS 13 pour la remédiation, le tout mis à jour silencieusement. Les voleurs d'identifiants visant macOS existent bel et bien, mais un produit tiers apporte surtout de la journalisation. Sur un serveur Linux, l'antivirus sert avant tout à analyser ce que le serveur distribue à des clients Windows : partages Samba, relais de courrier, dépôts de fichiers.
Mon antivirus a supprimé un fichier sain, comment le récupérer ?
Passez d'abord le hash du fichier sur VirusTotal : si un seul moteur sur soixante le signale, c'est très probablement un faux positif. Restaurez ensuite depuis la quarantaine (MpCmdRun.exe -Restore sous Windows), ajoutez une exclusion la plus étroite possible, sur le chemin exact et non sur le dossier parent, et signalez l'échantillon à l'éditeur. La correction arrive en général en une mise à jour de définitions.
L’antivirus ralentit-il vraiment la machine ?
Sur les charges qui font beaucoup d'entrées-sorties, oui, et de façon mesurable : compilation, installation de dépendances npm, disques virtuels d'hyperviseur, fichiers de base de données. Chaque écriture déclenche une analyse. Les éditeurs publient pour cette raison des listes d'exclusions recommandées pour SQL Server, Hyper-V ou les contrôleurs de domaine. Appliquez ces listes précises plutôt que d'exclure un volume entier.
À lire aussi
anti malware · cheval de troie · adware · botnet
Testez vos connaissances
Combien de caractères compte la chaîne de test EICAR ?
Score : 0 sur 3