Flux RSS - La vie du site - Nouveautés et mises à jour
Assiste.com - Sécurité informatique - Décontamination - Antivirus - Protection - Protection de la Vie Privée Assiste.com - Sécurité informatique préventive - Décontamination - Antivirus - Protection - Protection de la Vie Privée

Virus : Réplication par injection

Virus : Réplication par injection dans un autre programme.

Note préalable :
Les virus, au sens traditionnel du terme, sont en voie de complète disparition. Lire Virus histoire et historique.

Les virus " classiques " n'existent plus.

L'éditeur d'une solution antivirus et antimalwares Emsisoft, l'un des acteurs majeurs de la lutte contre les malveillances informatiques, écrivait, en 2012 :

"Notre laboratoire d'analyse a calculé que les virus classiques constituent moins de 0,5 % de la totalité des menaces. .../... « Emsisoft anti-malware » inclut toutes sortes de menaces, telles que les virus (0,5 %), logiciels de sécurité falsifiés (rogue) (0,5 %), publiciels (adwares) (2,7 %), applications possiblement malicieuses (PUP) (4,1 %), vers (worms) (4,6 %), logiciels malveillants financiers et voleurs de mot de passe (password stealer, fiching, spywares...) (5,3 %), enregistreurs de frappe (keyloggers) (6,9 %), portes dérobées (backdoors) (13,3 %) et chevaux de Troie (trojans) (61,3 %)."

A propos de la Réplication par Injection (virus parasitant un hôte) :
Les méthodes utilisées par les virus et autres parasites pour pénétrer et se maintenir dans un système sont innombrables. La méthode la plus simple et ancienne consiste à se greffer dans un programme légal pré-existant afin de se répliquer (se déployer) lors de la copie de ce logiciel (les premiers « piratages »).

Les virus exploitant des fichiers exécutables (applicatifs) se lient intimement au contenu de ces fichiers en s'injectant dedans et ne font plus qu'un avec eux. Ceci est différent de la méthode de réplication par « cheval de Troie ». Chaque fois que vous ouvrez un programme infesté, le virus est exécuté puis « rend la main » à l'exécution normale du programme hôte qu'il infeste. Il va alors chercher de nouvelles cibles (par exemple, pour infester tous les programmes que vous lancez ou pour infester systématiquement tous les fichiers de type exécutable sur vos disques).

L'injection présente de nombreux intérêts :

  • En infectant tous les programmes exécutables (PE) d'un ordinateur, le virus s'assure d'être exécuté chaque fois que l'utilisateur lancera un programme.
  • En s'injectant dans un programme le virus bénéficie des droits et privilèges de ce programme - voir Injection : Techniques et intérêts.
Cette méthode est désormais facile à détecter en contrôlant simplement la taille d'un programme (en comparant la longueur du code du programme par rapport à une valeur de référence inviolable) ou son chiffre clé (condensat - hashcode - type MD5, SHA-1, SHA-2, SHA-256, etc. ...).

Les utilitaires capables d'ôter proprement un parasite injecté afin de restituer le programme infecté dans son état sain d'origine sont peu nombreux et cela ne fonctionne pas toujours. Un très bon antivirus peut défaire l'infestation et remettre l'exécutable dans son état initial avant d'avoir été infesté.

  • Ce type de propagation est en complète désuétude, les bases de signatures (hashcode) et les méthodes heuristiques étant trop efficaces pour être traversées
  • Il est préférable de maintenir son système dans un état sain plutôt que de le laisser être contaminé puis tenter de le réparer.

Lorsqu'un fichier infecté atteint un autre ordinateur, par l'intermédiaire d'une disquette, d'un cd-rom, d'un dispositif amovible comme les clés USB, d'un réseau ou de l'Internet, le cycle d'infection recommence.

Comment fait un virus pour modifier un programme ? Voici le principe de base d'un virus parasite :

Sur votre ordinateur, le programme "aaa" sain, au départ, est constitué de ses propres instructions, soit, par exemple :

  1. aaa Début
  2. aaa Instruction 1
  3. aaa Instruction 2
  4. aaa Instruction 3
  5. aaa Instruction 4
  6. aaa Instruction 5
  7. aaa Instruction 6
  8. aaa Instruction 7
  9. aaa Instruction 8
  10. aaa Instruction 9
  11. aaa Fin

Ce jour là, vous ouvrez une pièce jointe d'un e-mail. Un virus y était caché. Le virus est aussi un programme constitué de ses propres instructions (structure d'un virus), soit, par exemple :

  1. Virus Début
  2. Virus "Groupe d'instructions 1" (mécanisme de réplication sur le même ordinateur)
  3. Virus "Groupe d'instructions 2" (mécanisme de propagation sur les moyens de transport)
  4. Virus "Groupe d'instructions 3" (Charge active du virus - par exemple : Effacer tous les disques durs)
  5. Virus "Groupe d'instructions 4" (Mécanisme de condition de déclanchement de la charge active (bombe logique) : par exemple "si date égale ou supérieure à 15 août 2004 à 8h00 du matin")
  6. Virus "Groupe d'instructions 5" (Mécanisme de furtivité du virus : polymorphisme, cryptage, tuer les antivirus, les anti-spywares et les pare-feux...)
  7. Virus Fin

Le virus, entre autres actions, se précipite, par exemple, sur tous les programmes dans votre ordinateur (tous les fichiers de type .exe, .dll et .com au minimum). Votre programme aaa infesté devient :

  1. aaa Début
  2. Virus Ordre d'aller à la ligne 12 (go to 12)
  3. aaa Instruction 2
  4. aaa Instruction 3
  5. aaa Instruction 4
  6. aaa Instruction 5
  7. aaa Instruction 6
  8. aaa Instruction 7
  9. aaa Instruction 8
  10. aaa Instruction 9
  11. aaa Fin
  12. Virus Début
  13. Virus "Groupe d'instructions 1" (mécanisme de réplication sur le même ordinateur)
  14. Virus "Groupe d'instructions 2" (mécanisme de propagation sur les moyens de transport)
  15. Virus "Groupe d'instructions 3" (Charge active du virus - par exemple : Effacer tous les disques durs)
  16. Virus "Groupe d'instructions 4" (Mécanisme de condition de déclanchement de la charge active (bombe logique) : par exemple "si date égale ou supérieure à 15 août 2004 à 8h00 du matin")
  17. Virus "Groupe d'instructions 5" (Mécanisme de furtivité du virus : polymorphisme, cryptage, tuer les antivirus, les anti-spywares et les pare-feux...)
  18. Virus Fin - Ordre de retourner à la ligne 3 (go to 3) pour poursuivre normalement l'exécution du programme infecté.

Et voilà le travail. Ni vu ni connu, chaque fois que vous lancez le programme "aaa" vous commencez par lancer le virus (on dit de ces virus qu'ils sont "internes" ou " intégrés ") qui cherche à infester les documents et les programmes. Vous communiquez un document ou un programme à un collègue, un fournisseur, un client, un ami etc. ..., vous vous connectez sur un réseau et le virus se propage et, le 15 août 2004 à 8h00 du matin tous les disques durs de tous les ordinateurs infestés seront effacés. Entre temps il aura eu le temps de se propager et des milliers, des millions d'ordinateurs s'écroulerons en même temps. Dans les heures qui suivent les laboratoires des sociétés Norton, Kaspersky, Panda, Sophos etc. ... publierons une mise à jour de leurs antivirus mais il est trop tard. De nouveaux virus ou des variantes des précédents apparaissent chaque jour.

Le principe d'injection est là dans ses grandes lignes. Dans la réalité actuelle, c'est un peu plus compliqué pour les virus : l'antivirus aura détecté le changement de longueur du programme et le changement de valeur d'un chiffre clé calculé sur la base du contenu du programme (méthode souvent appelée "vaccination"). Alors le virus cherchera à se rendre furtif en s'installant à l'extérieur du programme (on dit de ces virus qu'ils sont " externes " ou " externalisés ") et en ne changeant pas la longueur du programme infesté ni sa valeur clé (ça, c'est quasiment impossible). Il s'explosera en une multitude de petits bouts anodins, quelquefois diffusés sur plusieurs ordinateurs d'un réseau (technique de la pieuvre) afin d'échapper aux algorithmes de détections de comportement des antivirus mais qui, au moment propice, coopèreront. Il deviendra polymorphe, c'est-à-dire qu'il s'auto-changera à chaque réplication de manière à n'être que très peu visible si l'une de ses réplications est découverte avant son attaque, il s'auto-génèrera (générateur de virus) afin d'échapper aux antivirus et à leurs méthodes d'auto-apprentissage (méthodes heuristiques), il se compressera 2, 3, 4 fois sur lui-même afin de camoufler sa signature et déjouer les antivirus un peu faible et bon marché etc. ...

Une méthode simple ? Le virus s'installe quelque part, prend le nom d'un programme existant, par exemple Excel, modifie la base de registre pour que ce soit lui qui soit lancé lorsque l'utilisateur lance Excel, s'exécute, puis c'est lui-même qui lance le vrai Excel. L'utilisateur ne voit rien ! Si un utilitaire surveillant les modifications apportées à la base de registre avait été installé, vous en auriez été averti. Qui a installé un tel utilitaire ? Et même, parmi les rares qui l'ont installé, qui s'en sert ? Je vous recommande StartupMonitor, c'est microscopique, génial et gratuit ou le "TeaTimer" de Spybot Search and Destroy.

Virus : Réplication par injection - Virus : Réplication par injection