Antivirus à scanner : des résultats contrastés
Roland Garcia, ce mystérieux inconnu
Viguard, un programme comme les autres ?
Viguard+Net 9 serait-il l'antivirus [quasi
infaillible] comme l'indique son concepteur, ou un produit induisant
ses utilisateurs en erreur et les exposant à toutes sortes de
virus non détectés, comme le proclament certains sur
l'internet ? Pirates Mag' a mené l'enquête…
Une signature de virus est une suite d'octets
caractéristiques d'un virus permettant son identification. Il
faut connaître autant de signatures qu'il y a de variantes d'un
virus. La plupart des antivirus se basent sur cette technologie pour
arrêter les virus. Avec l'augmentation du nombre de virus
(plusieurs dizaines de milliers), les signatures montrent leur
faiblesse : poids en mémoire, ralentissement de l'ordinateur,
temps perdu en téléchargement et installation des mises
à jour, etc.
Nous avons soumis à Viguard 9 un virus maison écrit en
VBS inconnu des éditeurs d'antivirus et de leurs produits, y
compris en mode heuristique. Une alerte s'est immédiatement
déclenchée. Sans conteste, on peut considérer que
le produit de Tegam est un antivirus à part. En effet, il s'agit
du seul du marché à ne pas reposer, pour tout ou partie,
sur une base de signatures. Le logiciel se base sur une analyse
"comportementale" des fichiers en temps réel, au moment de leur
exécution, qui ne nécessite pas de mise à jour de
bases de données de signatures. Ce point peut d'ailleurs
être considéré comme une pub mensongère de
l'éditeur, qui a longtemps communiqué sur l'absence
totale de mise à jour, ce qui est faux puisque le moteur du
logiciel est mis à jour une poignée de fois chaque
année (soit tout de même plusieurs dizaines de fois moins
que les logiciels traditionnels, et entièrement gratuites la
première année), notamment pour contrer des nouvelles
"familles" de virus. En fait, Viguard semble présenter
lui-même toutes les caractéristiques des antivirus se
basant sur la méthode heuristique (recherche de code
correspondant à des fonctions virales), mais son concepteur s'en
défend, expliquant que Viguard est plutôt basé sur
le principe de la white list : tout ce qui n'est pas
expressément autorisé par l'utilisateur est interdit. Par
opposition aux autres antivirus basés sur la black list,
où n'est interdit que ce qui figure expressément dans les
tablettes du logiciel.
La white list
L'idée est séduisante et, souvent, bien
implémentée. Prenons, par exemple, les virus macro. Tous
sont, en fait, constitués de macro auto-exécutables (pour
des raisons évidentes de lancement et de duplication à
l'insu de l'utilisateur). Si Viguard détecte une telle macro
dans un fichier, il la signale immédiatement à
l'utilisateur. Comme l'écrasante majorité des
utilisateurs de produits bureautiques ne connaît même pas
le concept de macro, ils choisiront la proposition du logiciel,
à savoir la désactivation des macros dangereuses (et
uniquement elles). En environnement réseau, l'administrateur
pourra lui-même définir une liste de macros
autorisées, afin d'éviter de déclencher des
alertes inutiles chez les utilisateurs.
Le principe de la white list est implémenté dans d'autres
portions du logiciel. Ainsi, les pièces jointes des courriers
électroniques sont systématiquement analysées
avant exécution (cas des vers). Si le fichier qui doit
être sauvegardé s'avère potentiellement dangereux,
là encore, Viguard met en garde l'utilisateur. Signalons sur ce
point que tous les virus soumis par ce biais à Viguard 9 ont
été signalés comme au minimum moyennement
dangereux. Viguard 8+ n'intégrait pas de fonction de ce style et
était donc incapable de donner de telles alertes (lire
encadré La vérité est ailleurs). Soulignons
également que cette fonction est source de nombreuses fausses
alertes. Ainsi, qu'un programme d'installation intègre une phase
d'enregistrement en ligne (ouverture de ports sur l'internet) et il
sera considéré comme potentiellement dangereux par
Viguard, tout en étant en réalité parfaitement
inoffensif.
L'auxiliaire de l'administrateur
En outre, dans l'hypothèse où un programme dangereux
aurait pu être sauvegardé sur le disque dur, Viguard 9 ne
signale une tentative d'infection qu'au moment précis où
elle a lieu, et non au lancement du fichier à l'origine de
l'infection. Un Magistr peut n'être détecté comme
dangereux que quand il tente de modifier un fichier, plusieurs minutes
ou heures plus tard. Viguard implémente également des
technologies intéressantes, comme la surveillance en temps
réel des programmes lancés automatiquement, là
aussi soumise à autorisation de l'utilisateur (c'est ainsi que
certains vers resteront inactifs après leur installation).
Enfin, cerise sur le gâteau, Viguard offre un module
d'administration particulièrement puissant : dans l'optique de
la white list, seul l'administrateur réseau aura la
possibilité d'autoriser le lancement d'un programme
réputé dangereux. Face à un problème,
l'utilisateur ne pourra quant à lui que placer le fichier en
quarantaine en attendant une analyse ultérieure, le cas
échéant avec un antivirus à scanner pour mettre un
nom sur la présence d'un éventuel virus (ce que Viguard
ne permet pas, un péché mortel aux yeux de certains).
Bien paramétré en entreprise (par le biais de profils
d'utilisateurs), Viguard peut s'avérer être l'auxiliaire
idéal de l'administrateur réseau qui mettrait, par la
même occasion, fin aux téléchargements et aux
installations sauvages sur ses postes clients, même si une telle
mesure est impopulaire.
Des résultats contestés
Mais pour être parfaitement efficace, le principe de la white
list devrait être implémenté dans sa plus stricte
théorie : chaque action de l'ordinateur après
l'installation du logiciel devrait être soumise à l'accord
préalable et définitif de l'utilisateur. Une
méthode lourde, mais qui ferait, à terme, ses preuves
face à des virus. Or, l'implémentation de la white list
dans Viguard est incomplète. En particulier au niveau de
l'analyse des fichiers exécutables, cas pour lequel nous avons
trouvé des virus qui passent sans problème les
barrières du logiciel. Soulignons que Tegam conteste ces
résultats. Pour la société, ces infections sont
obtenues avec des virus ou vers de laboratoire, qui ne se sont pas ou
peu propagés dans la nature, ou par le biais de tentatives
d'exécution "contre nature", c'est-à-dire qui ne
correspondent pas à une méthode naturelle de propagation
du code malicieux, ou dues à un bogue connu de Outlook.
Ainsi, Eyal Dotan rappelle que Mini-45, alias T-1000, ne s'ajoute pas
aux hôtes qu'il infecte : il les remplace en les
détruisant. Selon lui, un virus, qui détruit tout sur son
chemin, ne se propage pas d'une machine à une autre et n'est
donc pas une menace : il a décidé de faire l'impasse sur
de tels virus pour gagner en facilité d'utilisation. Pourtant la
publicité de Tegam promet la protection contre "tous les virus
connus et inconnus". Et que fait-on pour les fichiers détruits ?
De même, Blah.3379 a immédiatement rendu le disque dur
inutilisable. Ce virus semble souffrir d'un bogue qui a
désactivé sa fonction de reproduction. Eyal fait
remarquer qu'il ne s'agit donc pas d'un virus. C'est vrai : il se
comporte plutôt comme un trojan. Mais la publicité de
Tegam n'annonce-t-elle pas aussi une lutte contre "tous les trojans" ?
Eyal rappelle alors le principe de la white list : bien
configuré, Viguard empêche l'exécution de logiciels
inconnus et non autorisés.
Concernant le lancement d'un ver directement à partir du disque
dur, sans sauvegarde à partir du client mail, il estime que ce
n'est pas une méthode correcte de tests puisque, la plupart du
temps, les vers ne sont reçus que par mail et, alors,
systématiquement détectés par Viguard. On
rétorquera que, malheureusement, des fichiers
exécutables, trouvés sur un CD-Rom, pourraient renfermer
en leur sain l'œuf d'un ver de messagerie (par exemple). Mais,
là encore, Eyal rappelle le concept de la white list… En outre,
il estime que certains tests impliquent que la personne malveillante
ait accès direct au poste visé, auquel cas, il lui est
toujours possible d'effectuer des tâches autrement plus
dangereuses, comme un formatage pur et simple du disque.
Des réactions parfois curieuses
En pratique, le ver Sircam, correctement signalé au niveau du
client mail, infecte le micro-ordinateur s'il est lancé en
local. Viguard, par un comportement étrange non expliqué
par Tegam, n'empêche pas le lancement de Sircam si le choix "mise
en quarantaine" tarde trop à être coché. Le ver
Hybris, découvert le 28 août 2000, est également
correctement signalé au niveau du client mail mais infectait les
PC lorsque lancé en local jusqu'à la version du 5 octobre
incluse. Le cas de Win32.HIV est intéressant.
Développé par Benny/29A, il semble que les avis des
éditeurs divergent sensiblement quant à sa date
d'apparition, signe d'un destin de laboratoire. Viguard ne signale rien
à l'exécution du virus, qui infecte les fichiers
exécutables présents dans le même
répertoire. Un redémarrage plus tard, la première
tentative d'accès aux fichiers vérolés se solde
par un avertissement de Viguard comme quoi le fichier a
été modifié par un virus et une réparation
dudit fichier : succès de Viguard. Cependant, d'autres actions
de Win32.HIV ne sont pas détectées par l'antivirus :
modification de fichiers exécutables au sein d'archives .MSI
(Viguard n'a pas accès à leur contenu) ou encore
infection de fichiers HTML par du contenu XML (Viguard ne surveille pas
ce type de fichiers). Enfin, le lancement d'un fichier infecté
par Magistr ne déclenche aucune alarme. C'est aux seules
tentatives d'infections de fichiers (qui ont lieu en un temps
aléatoire) que Viguard (version du 25 janvier 2001,
dernière disponible) signale la présence d'un virus et
bloque ses effets (modifications de fichiers et insertion d'une
clé de registre permettant son chargement automatique au
prochain lancement de Windows). Une protection malheureusement
incomplète.
En conclusion
Viguard ne peut donc se concevoir seul, mais en complément d'un
antivirus traditionnel avec lequel il travaillera en amont (cas des
virus inconnus téléchargés par l'internet) ou en
aval (réparations d'éventuelles infections non
détectées, identification des virus
détectés). Une conception de protection d'autant plus
valide que la plupart des éditeurs, Kaspersky Labs le premier,
ajoutent à leurs antivirus à signature des protections
génériques contre les vers ou les virus macro (sans
possibilité de certification pour le moment).
Note : Au moment où nous mettons sous
presse, une nouvelle version de Viguard commence à être
distribuée aux clients. Remarques o Dans le tableau "Fichiers du
virus installés mais non actifs. PC sain." signifie que nous
avons vérifié l'état du PC après
redémarrage. Cette ligne n'est valable que pour les virus qui
tentent de placer un élément en démarrage
automatique, vu et empêché par Viguard
o Les paramètres par défaut sont systématiquement
utilisés.
o Pour Hybris, sorti en septembre, il n'y a plus d'infection avec un
Viguard postérieur au 27 décembre.
o Mini 45 n'est pas détecté à l'exécution
quelle que soit la version de Viguard.
Antivirus à scanner :
des résultats contrastés
Seul AVP 3.0 de Kaspersky Labs a été capable de
détecter et de bloquer tous les virus soumis. PC-Cillin 7.5 de
Trend Micro et Norton Antivirus 2001 ont laissé passer la
version compressée de Funlove, pourtant triviale à
créer : une faille importante pour ces deux antivirus !
Signalons qu'au moment de la mise à jour avec la base de
signatures du 24/05/2001 (censée contenir 49431 virus), une
erreur a été signalée par LiveUpdate pour Norton
Antivirus. Cette erreur (sans doute un bogue) explique probablement les
nombreux virus non détectés au scan mais, heureusement,
bloqués à l'exécution. Enfin, VirusScan s'est
montré incapable de détecter la version compressée
de Funlove et les variantes ME-Nude et Sorry about Yesterday de MTX
(qui se caractérisent toutes deux par des extensions en .PIF).
Roland Garcia, ce
mystérieux inconnu
S'il se présente sous son vrai nom, il est difficile de savoir
qui est précisément Roland Garcia, qui refuse de donner
la moindre information sur son identité pro- fessionnelle. En
guise de réponse à nos questions, l'individu nous
menacera de dénonciation devant les autorités car nous
serions, selon lui, à la solde de l'éditeur de Viguard !
Après un tel mensonge, il nous devenait difficile de croire ses
autres déclarations, nous avons donc décidé de
creuser l'enquête. Roland a dévoilé sur
fr.comp.securite .virus qu'il travaillait à Toulouse sur deux
projets de recherche spatiale, domaine qui n'a rien à voir avec
les virus informatiques, mais qui n'est semble-t-il pas incompatible
avec une activité soutenue sur ce sujet. En effet, Roland
travaille en tant que consultant pour Alphasys, distributeur des
antivirus de Kaspersky Labs et de Sophos, et pour www.secusys.com, un
portail spécialisé dans la sécurité. Outre
des missions ponctuelles, Roland fait également office de
monsieur "nouveaux virus" et de support technique. C'est, en effet, lui
qui répond aux questions d'utilisateurs concernant
d'éventuels nouveaux virus et en informe le grossiste en
sécurité. En outre, Roland se targue en public de
relations approfondies en matière de sécurité
informatique avec le CNRS, SupInfo Paris, etc. Enfin, il participe
très activement au forum fr.comp.securi te.virus : il n'a
été sur les mois de mai et juin ni plus ni moins que le
principal participant de ce forum, y compris pendant les heures de
bureau, avec plusieurs centaines de messages postés sous son
nom, souvent pour donner de l'aide sur AVP, un produit qu'il semble
connaître fort bien. Mais nous regrettons qu'il peine à
illustrer certains de ses propos par des faits concrets et
vérifiables. En particulier, alors que nous ne parvenions pas
à reproduire ses expériences avec Viguard, nous lui avons
demandé de communiquer publiquement son protocole de test
détaillé, requête à laquelle il a toujours
refusé de répondre, ce que tout bon consultant aurait
fait pour être crédible.
Un trojan sur mesure
Développé par nos propres soins, le fichier
readme.txt.bat est un trojan fonctionnant sous Dos, Windows 3.x et
Windows 9x et dont l'action est proche de celle de Deliosys, autre
trojan fourni par Roland Garcia. Son action est des plus simples : la
première ligne rend accessible, en lecture et en
écriture, le fichier io.sys, contenu dans la racine et
chargé au démarrage de Windows. La seconde ligne
écrase le contenu de ce fichier avec la chaîne "abc". Le
redémarrage du PC est rendu impossible en deux lignes de
programmation. Aucun antivirus à ce jour n'est capable
d'arrêter un tel programme pourtant trivial à concevoir.
Le langage batch serait-il moins prestigieux que l'assembleur aux yeux
des éditeurs ? En fait, il n'y a aucun moyen d'être
sûr a priori et à 100 % qu'un programme contient un
trojan, il n'existe pas de règle précise quand on analyse
son code. Des milliers de variantes peuvent être facilement
développées, au contenu plus ou moins dangereux.
attrib -r -s -h c:\io.sys
copy abc >c:\io.sys
La vérité
est ailleurs
Le 24 octobre 2000, le portail spécialisé dans la
sécurité Secusys fait paraître un article
signé de Roland Garcia. Celui-ci y explique que, contrairement
à ce que signale son éditeur Tegam, l'antivirus Viguard
n'arrête pas le ver MTX, dans la nature depuis août 2000
aux États-Unis. Rapidement, Secusys, également revendeur
de produits de sécurité informatique, est poursuivi par
Tegam pour concurrence déloyale et condamné en
référé. En effet, devant huissier et en l'absence
de Roland Garcia (qui nie toute implication dans cette affaire et qui
n'a pas cherché à prouver à la justice ses
affirmations), l'éditeur montre que son logiciel fétiche
arrête bel et bien MTX. Comment, à partir d'un même
test, deux résultats diamétralement opposés
ont-ils pu être trouvés ? Nous avons tenté de
démêler l'écheveau. D'après notre
enquête, Roland Garcia (qui n'a pas souhaité
répondre à nos questions à ce sujet) a
effectué ses propres tests quelques jours seulement après
avoir écrit son article, sur simple foi de témoignages
extérieurs selon lui. En effet, il a déclaré avoir
acheté le 28 octobre un exemplaire de Viguard à la Fnac,
avec lequel il affirme avoir reproduit sans problème
l'infection. Or, il semble que son exemplaire de Viguard n'est qu'une
version 8+, censée avoir été retirée de la
vente depuis plusieurs semaines avec l'annonce et la
disponibilité effective de la version 9 au début du mois
d'octobre 2000. Non contente de pratiquer la
remballe,
la Fnac n'hésite pas à conserver en rayon des produits
périmés sans les signaler comme tels ! Mais le magasin
n'est pas seul en cause : Roland assure ne pas avoir été
au courant de la disponibilité d'une nouvelle version de
Viguard, alors que plusieurs magazines s'étaient fait
l'écho de la nouvelle dans les semaines
précédentes : un comble pour quelqu'un qui se dit expert
en matière d'antivirus. En outre, il ne s'est pas
enregistré auprès de l'éditeur, seul moyen pour
avoir accès, gratuitement, aux nouvelles versions pendant un an.
Donc, quand Roland Garcia déclare que Viguard (8+)
n'arrête pas MTX, il a raison. Et quand la société
Tegam déclare que Viguard (9) arrête MTX, elle a
également raison. Merci qui ?
La
méthodologie employée
Les tests ont été réalisés le week-end du
26 au 27 mai 2001 (excepté pour Sircam et Blah.3379
testés pendant l'été uniquement avec Viguard). Ils
ont été effectués sur un portable Fujitsu Lifebook
635T, doté de Windows 98 première édition,
d'Outlook Express 4.72.3110.5, d'un disque dur de 1,3 Go et de 80 Mo de
Ram. Le disque dur est partagé en deux partitions,
respectivement de 500 Mo et 700 Mo. La première, bootable,
contient le système d'exploitation. La seconde contient une
image créée avec Partition Magic de la première
partition.
Les codes malicieux testés ont été fournis pour
partie par Roland Garcia (Win32.Funlove.4070, I-Worm.MTX - version
Sorry about Yesterday -, Win32.HIV.6680 - un virus de laboratoire -,
Trojan.Deliosys et I-Worm.Hybris.d), pour partie
récupérés sur l'internet ou auprès
d'anonymes et involontaires correspondants professionnels
(I-Worm.LoveLetter, I-Worm.MTX - versions AVPUpdates et ME-Nude -,
I-Worm.Homepage, I-Worm.Magistr, Mini-45, Blah.3379 et
Win32.Sircam.worm) et pour partie créés
spécialement pour ce test (Win32.Funlove.4070 modifié
avec un utilitaire de compression d'exécutables du style PKLite
et lisezmoi.txt.bat, réplique en langage batch de
Trojan.Deliosys).
Les antivirus à scanner (Kaspersky Labs AVP 3.0, Trend Micro PC
Cillin 7.5, Symantec Norton Antivirus 2001 et McAfee VirusScan 4.0) ont
été mis à jour avec la dernière version des
signatures disponibles sur le site de leurs éditeurs, à
la date du test. Pour eux, deux tests ont été
effectués pour chaque virus : tentative d'exécution du
virus et scan du disque dur. Pour Viguard (Viguard 8+ et cinq versions
différentes de Viguard+Net 9.0), différents tests ont
été effectués, en rapport avec la philosophie du
produit :
Test des virus et chevaux de Troie exécutables : tentative de
sauvegarde à partir du client mail et tentative
d'exécution sous l'explorateur de Windows. Ces deux tests
permettent de rendre compte des deux possibilités d'infection
d'un PC : par mail et par introduction du virus par disquette, CD-Rom
ou réseau local. Test des virus de script (vers) : tentative de
sauvegarde et d'exécution à partir du client mail. Ce
test a été choisi puisqu'il s'agit de la voie naturelle
par laquelle la plupart des scripts s'introduisent sur les
micro-ordinateurs. Pour certains, nous avons également
tenté une exécution locale sans passage par le client
mail, possible pour certains vers mais moins naturelle.
Nous n'avons validé les tests de lisezmoi.txt.bat que sur les
antivirus détectant Trojan.Deliosys.
Viguard, un programme comme
les autres ?
Selon Guillermito, un développeur de virus, Viguard souffrirait
de nombreuses failles graves d'un point de vue sécurité.
En particulier, il a découvert que de nombreuses informations
capitales (fichiers sensibles, données à surveiller,
etc.) sont peu ou pas cryptées et non protégées
contre l'effacement. Il serait donc facile, selon lui, de
développer un virus destiné spécifiquement
à attaquer des PC protégés avec cet antivirus. En
outre, Viguard ne surveillerait pas certains fichiers qui seraient
pourtant les cibles ou les vecteurs tous désignés de
certains virus.
Toutes les explications sont disponibles sur fr.comp.se curite.virus,
en particulier en suivant le lien suivant.
Contacté pour s'expliquer sur ces failles, le concepteur de
Viguard, Eyal Dotan, estime qu'elles ne dévoilent aucun aspect
important du programme. Selon lui, la méthode de cryptage des
données n'a pas l'importance que Guillermito voudrait bien lui
donner. Il ajoute que la plupart des explications de Guillermito
pourraient être reprises sur d'autres antivirus, d'autant plus
qu'il existe déjà des virus spécifiquement
conçus pour s'attaquer à certains de ces logiciels, sans
exclure que Viguard puisse devenir, un jour, une cible à son
tour. Parole contre parole, d'autant plus que nous avons demandé
à Guillermito s'il connaissait des virus qui pourraient prendre
par défaut Viguard, ainsi que les explications adéquates.
Nous n'obtiendrons pas de réponse.