Certes, il ne peut être très gros, car il serait vite
remarqué. Mais il a besoin de peu, car il s'agit simplement
d'un éclaireur. Petit (quelques kilo-octets d'assembleur optimisé),
polymorphe (aucune partie de son code ne sera identique d'une exécution
à l'autre) et furtif (capable d'intercepter les demandes de
contrôle émanant de l'antivirus ou du système
d'exploitation), il a toutes les chance d'échapper à
un éventuel antivirus résident s'il a été
créé sur mesure pour sa mission, car il lui sera alors
inconnu. Une fois débarqué, sa première tâche
va être de recueillir des informations sur le système
pénétré : version du navigateur internet, du
système d'exploitation, des éventuels antivirus présents
ou du firewall. Il cherchera également à savoir s'il
est le seul virus sur l'ordinateur, afin d'échanger des informations
avec l'éventuel résident. Il pourra lui offrir ses modules
d'infection plus récents ou mettre à jour ses adresses
web, et profiter en retour de la connexion internet clandestine que
ce dernier aura déjà créé. S'il est seul
sur le système, en revanche, la seconde priorité de
cet éclaireur sera de communiquer avec sa base.
S'il détecte un parefeu, le virus peut alors exploiter plusieurs
techniques afin de le percer. Pour les modèles les plus simples
(et beaucoup de firewall d'entreprise mal configurés), il lui
suffit d'utiliser le port 80, habituellement réservé
au trafic HTTP (le web) afin d'atteindre librement Internet. Pour
les parefeux personnels, qui contrôlent quelle application demande
à accéder à Internet, il peut exploiter une technique
décrite par l'américain Robin Keir. Son outil de démonstration,
FireHole, montre combien il est simple, sous Windows, de faire exécuter
un programme dans l'espace mémoire réservé au
navigateur, et se faire ainsi passer pour lui (voir www.lesnouvelles.net/afficher.php?id=164).
Désormais, tout est prêt pour une véritable invasion.
L'éclaireur contacte le site web anonyme de son créateur,
et ne rapatrie que les modules dont il a besoin pour infecter le système.
Il se base pour cela sur les informations collectées à
son arrivée. A ce stade de l'infection, le virus n'est alors
plus isolé, et tout lui est autorisé.
Le spécialiste Marc Blanchard, chez Trend Micro, a réalisé
une étude des processus de communication et de survie des prochains
virus. Il s'est basé pour cela sur des travaux en cours dans
la communauté des créateurs de virus. Il cite ainsi
le protocole WormNET. Bien qu'encore à l'étude, WormNET
offrirait un canal de communication furtif et chiffré entre
tous les virus qui souhaiteraient l'utiliser.
Mais communiquer pour quoi faire ? Là encore, Marc Blanchard
a son idée : " Les virus installés sur le système
pourront communiquer avec un module central appelé Virus Communication
Interface (VCI). Cette interface utiliserait les mécanismes
d'IPC (Inter Process Communication) ou le protocole WormNET pour favoriser
les échanges d'information entre les virus et leur donner des
ordres. Car se sont des virus modulaires, totalement différents
de ceux que nous connaissons aujourd'hui. Ils arrivent vides sur le
système, prêts à recevoir n'importe quel code
malicieux de la VCI ", explique Marc Blanchard.
En allant plus loin, cette " tour de contrôle " pourrait
parfaitement coordonner une infection sur plusieurs systèmes
simultanément, tel Linux et Windows par exemple, voire même
tirer profit de l'architecture .NET de Microsoft. Elle pourrait ordonner
à tel virus de se détruire pour laisser la place à
un autre, ou de se mettre à jour via Internet. Enfin, elle
leur enseignerait aussi de nouvelles méthodes pour pénétrer
un ordinateur, ou de nouvelles " formes " à prendre
afin d'échapper aux antivirus mis à jour.
Face à une telle infection organisée, le PC de l'utilisateur
particulier n'a aucune chance : seul le recourt à un excellent
antivirus générique, capable de détecter les
activités suspectes peut, le sauver. Hélas, si certains
essais prometteurs existent, tels l'antivirus Viguard, la détection
générique simple et efficace est encore une utopie.
Mais plus les virus intelligents.