CE SERVICE PEUT CONTENIR DES TRADUCTIONS GÉNÉRÉES PAR GOOGLE. GOOGLE DÉCLINE TOUTE GARANTIE, EXPLICITE OU IMPLICITE, Y COMPRIS LES GARANTIES D'EXACTITUDE, DE FIABILITÉ, AINSI QUE TOUTE GARANTIE IMPLICITE DE COMMERCIALISATION ET D'ADAPTATION À DES FINS PARTICULIÈRES ET À L'ABSENCE DE CONTREFAÇONS.

Le site internet de Kaspersky Lab a été traduit pour votre commodité en utilisant un logiciel de traduction générée par Google. Des efforts raisonnables ont été faits pour fournir une traduction exacte. Cependant, aucune traduction automatique n'est parfaite et l'objectif n'est pas de remplacer le travail des traducteurs. Le site internet de Kaspersky Lab fournit ces traductions comme un service pour ses utilisateurs, et elles ont été publiées "telles quelles". Aucune garantie, explicite ou implicite, n'est faite au sujet de l'exactitude, de fiabilité ou de conformité de ces traductions faites de l'anglais vers une autre langue. Certains contenus (images, vidéos, Flash, etc.) peuvent ne pas être traduits correctement à cause des limites du logiciel de traduction.

Virus.Multi.Navrhar

Classe Virus
Plateforme Multi
Description

Détails techniques

Ceci est un virus multipartite qui infecte à la fois les documents MS Word et les pilotes Windows 95 VxD. Le virus utilise plusieurs étapes de son infection – à partir du document infecté ou VxD il fait trois étapes pour infecter les fichiers du même format que son fichier hôte d'origine: Document Word -> PE EXE dropper -> pilote VxD -> document Word et bientôt.

Lorsqu'un fichier infecté est ouvert par Word, le virus dépose sa partie PE sur les disques et l'exécute. Ce compte-gouttes recherche les pilotes Windows 95 VxD et les infecte. La prochaine fois que Windows chargera ses pilotes, le virus "restera résident", accroche les appels système et infecte les documents ouverts.


+ ——— + + ——— + + ——— + + ——— +
Infected | -> | PE EXE | -> | + ——— + -> | + ——— + ->
| document | | compte-gouttes | || VxD | || + ——— + ->
| | | | || conducteurs | ||| Documents | ->
| | | | || | ||| |
| | | | || | ||| |
+ ——— + + ——— + + | | + || |
+ ——— + + | |
+ ——— +

"Overlay" Voie d'Infection

Dans les fichiers VxD et les documents Word, le virus utilise une méthode assez astucieuse pour stocker ses données et son code. Dans les deux types de fichiers, le virus place dans le document / le corps du pilote un chargeur de virus – un petit programme qui charge et exécute le code viral principal. Dans les documents Word infectés, ce chargeur est une macro courte écrite en Word Basic (ainsi que tous les autres virus de macro Word), dans VxD c'est un petit programme 32 bits.

Le code de virus principal est placé hors du corps réel du document Word et VxD – tout en infectant le virus ajoute juste ce code principal à la fin du fichier et ne fait aucune correction nécessaire pour "lier" avec les données / code du fichier hôte. Il ressemble à une donnée / un code de superposition – ce code n'est pas lié à la structure du fichier hôte de quelque façon que ce soit, et il n'y a aucune référence à ce recouvrement du code et des données dans le fichier principal (excepté le chargeur de virus).


Windows Vista VxD infecté: document Word infecté:
+ ———— + + ———— +
Original | Original |
Code VxD | | du document |
+ ———— + | données |
Chargeur de virus | <- 32 bits + ———— +
+ ———— + programme | Chargeur de virus | <- programme macro
| Le reste de | + ———— + <- fin des données de document légales
Code VxD | Données supplémentaires | <- code principal / données du virus
| et données | | |
| | + ———— + <- fin du fichier disque
| |
+ ———— + <- fin du code VxD légal
Données supplémentaires | <- code principal / données du virus
| |
+ ———— + <- fin du fichier disque
Lorsque Windows charge un tel VxD, il ne fait aucune attention aux données / codes supplémentaires et ne les charge pas dans la mémoire. Lorsque Word ouvre un document infecté, il ne charge pas ces données supplémentaires dans la mémoire. De plus, il coupe ces données lors de la fermeture d'un document. La seule façon pour le virus d'accéder à une telle superposition est d'ouvrir le document / VxD infecté en tant que fichier disque, de rechercher l'overlay et de le lire, et le virus le fait.

Tout en infectant différents objets, le virus augmente leurs longueurs par des nombres différents à cause de différentes structures de données de "superposition". La longueur des documents est augmentée de 17245 octets, les pilotes VxD ont plus 12288 octets à leur fin après l'infection, la longueur du compte-gouttes RUNME.EXE est de 16208 octets.

Ouverture d'un document infecté

La façon la plus répandue de contracter l'infection n'est pas de recevoir des programmes infectés, mais des documents infectés. Ainsi, avec 100: 1, un utilisateur obtiendra et ouvrira un document infecté, pas un VxD infecté (quelqu'un échange-t-il des VxD, sauf des programmeurs?).

Dans les documents infectés, le chargeur de macro de virus s'appelle AutoOpen – il s'agit d'une macro automatique qui est automatiquement exécutée par Word lors de l'ouverture du document. Cette macro alloue un bloc de mémoire (fonction HeapAlloc Word), ouvre le fichier hôte (document), recherche les données de superposition (code virus principal), le lit et les place dans le fichier C: RUNME.EXE nouvellement créé (par CreateFileA, SetFilePointer, ReadFile, WriteFile, fonctions CloseHandle).

Ensuite, la macro de virus exécute le fichier C: RUNME.EXE (par l'instruction Word "Shell"), et le compte-gouttes C: RUNME.EXE prend le contrôle, localise et infecte les pilotes Windows.

Infecter les pilotes VxD

Tout d'abord, lorsque le RUNME.EXE est exécuté, le code du virus vérifie la version de Windows et se ferme immédiatement, si la version de Windows est 3.xx ou moins (je dérape, est ce contrôle vraiment nécessaire – RUNME.EXE est PE 32 bits -programme, il n'est donc pas capable de l'exécuter sous les anciens Windows).

Le virus localise ensuite le répertoire Windows, saute dans le sous-répertoire SYSTEM, recherche et infecte l'ensemble des fichiers VxD, s'ils sont présents:


EISA.VXD, FILESEC.VXD, ISAPNP.VXD, LOGGER.VXD, LPT.VXD, LPTENUM.VXD,
MSMOUSE.VXD, MSSP.VXD, NWSERVER.VXD, NWSP.VXD, PARALINK.VXD, PCI.VXD,
SERENUM.VXD, SERIAL.VXD, SPAP.VXD, SPLITTER.VXD, UNIMODEM.VXD, VFD.VXD,
VGATEWAY.VXD, WSIPX.VXD, WSOCK.VXD
Lors de l'infection des fichiers VxD, le virus analyse et modifie leurs structures internes, écrit son code de chargement au milieu du fichier et ajoute son code principal en tant que données supplémentaires à la fin du fichier.

Les pilotes Windows VxD ont le format de fichier interne LE EXE (Linear Executable). Ce format est assez complexe à comprendre – il est beaucoup plus complexe que le format de fichier DOS EXE, plus complexe que le format de fichier Windows NewEXE. Il ressemble au format Portable Executable (PE), mais absolument différent.

Il faudrait beaucoup de pages pour décrire tous les détails que le virus fait en infectant les VxD. En bref: il lit LE Table d'Entrée et les Tables d'Objets, recherche la section de code VxD et la corrige. Les fichiers LE ont une structure de section (pages). Si le code / date ne couvre pas la section, la section est simplement remplie avec zéro octet jusqu'à sa limite. Le virus utilise cette fonctionnalité, et augmente simplement la longueur du code réel dans la section et y ajoute son code du chargeur (214 octets), s'il y a assez d'espace libre dans la section.

Pour éviter les infections en double, le virus n'utilise que la date et l'heure du fichier. Il définit la nouvelle date et l'heure des fichiers en les infectant et les vérifie avant l'infection. Cette date / heure est le 4 janvier 1997, 4h28 du matin. Si quelqu'un modifie ce tampon pour les fichiers VxD infectés, le virus les infectera deux fois et plus.

Le virus ne recherche pas d'autres fichiers VxD que ceux listés ci-dessus, ni lorsque le compte-gouttes RUNME.EXE est actif, ni à aucun moment après. Le virus n'efface pas RUNME.EXE après avoir infecté les VxDs, donc un utilisateur peut exécuter ce fichier manuellement, s'il aime ce nom.

Infecter des documents

Lorsque Windows 95 charge VxD infecté, le chargeur de virus (de la même manière que le chargeur dans les documents infectés) alloue un bloc de mémoire, cherche à la fin du fichier hôte pour lire son "overlay", le lit comme données et l'exécute comme un programme (protection du noyau de Windows95 vivat!). L'installateur de virus prend le contrôle, accroche l'API IFS et intercepte les appels OpenFile.

Quand un fichier est ouvert, le virus compare l'extension du fichier avec ".DOC", lit l'en-tête du fichier et le vérifie pour le tampon OLE2, puis analyse les formats internes OLE2, crée à la fin du document une nouvelle macro nommée AutoOpen, écrit son chargeur de macro là-bas et ajoute comme "superposition" son code principal. Le virus convertit également les documents Microsoft au format Template – le même que les virus de macro Word ordinaires.

Le virus n'infecte pas les documents dont la longueur du fichier n'est pas alignée sur le secteur (après que les documents infectés ne restent pas alignés) – c'est le fait que le virus utilise pour séparer les documents infectés et non infectés. Le virus n'infecte pas non plus les documents d'une longueur supérieure à 800 Ko – la routine d'infection virale ne peut simplement pas analyser les formats de documents volumineux (dans ces documents, des champs supplémentaires apparaissent). Le virus vérifie l'identificateur interne dans les documents et ne les infecte que s'ils ont le format de PanEuro Word 6/7.

Le MS Word devrait couper le code de superposition de virus à la fin du document (mais laisser la macro AutoOpen) tout en sauvegardant le fichier infecté, et dans mes expériences avec Word 7.0 il l'a fait. Malgré cela, les documents avec les extensions de noms de fichiers DOC ont été immédiatement ré-infectés par le virus. Dans le cas d'une extension non-DOC, les documents restent semi-infectés – ils ont une macro de virus AutoOpen, mais ils n'ont pas de données de "superposition" de virus. En conséquence, le virus n'est pas en mesure de se propager lorsque de tels documents sont ouverts.

L'algorithme d'infection virale n'est pas exempt de bugs. Dans le cas où un template a déjà une ou des macro (s), le virus corrompt la structure interne des documents, et ces macro (s) restent invisibles. Deuxièmement, il est impossible de supprimer la macro de virus AutoOpen à partir de documents infectés en utilisant l'environnement Word (Outils / Macro / Supprimer ou Organiser) – le Word ne parvient pas à faire cela et se bloque avec le message d'erreur Windows standard:


Ce programme a effectué une opération illégale
et sera fermé.

Dernières notes

En raison de son mode d'infection par les pilotes VxD, le virus n'est pas capable d'infecter le système WindowsNT, mais lors de l'expérimentation de virus sous Windows95, aucun problème n'a été découvert (excepté les problèmes avec les modèles Word décrits plus haut). Le virus ne se manifeste en aucune manière et ne provoque aucun message d'erreur système lorsqu'il est exécuté sous Windows95.

Il me semble que la routine d'infection VxD a un bug (le virus n'analyse pas correctement LE Object Table), et le virus corrompra les pilotes VxD "non standard", mais tous les VxDs de la liste des virus sont "compatibles avec les virus" l'exécution de Windows 95 avec des VxD infectés (jamais deux fois infectés) ne cause aucun problème. Peut-être à cause de ce bug possible, l'auteur du virus n'a pas inclus l'appel à l'infection VxD lors de son ouverture, mais seulement les documents Word.

Le virus a plusieurs chaînes de texte, certaines d'entre elles semblent être les traces de la version en mode debug du virus:


ne trouve pas DDB
ne peut pas infecter ce fichier
fichier vxd non valide
infecté avec succès
fichier infectant
Les autres chaînes contiennent les noms des fonctions Windows utilisées lors de l'infection des pilotes VxD:

KERNEL32.dll CreateFileA ExitProcess GetFileSize GetFileTime
GetProcessHeap GetVersion GetWindowsDirectoryA HeapAlloc FichierFichier
SetFilePointer SetFileTime WriteFile lstrcatA lstrcpyA FermerHandle
Le reste des chaînes de caractères visibles sont les commentaires de l'auteur du virus en anglais et dans un style de hacker corrompu:

Virus HZDS (le premier infecteur VxD direct mondial et le 2ème infecteur Word 6/7)
(c) Navrhar (DESIGNeR en anglais), Slovaquie, 21-oct-97
Diz virus haz a été écrit dans la ville de Banska Bystrica, en Slovaquie.
W l ¢ 0m 0 h HZD $ v¡ sg ¡gZ!
GZ: Vyv0j,, sy & pount; m & Ugly & pount; s, MG & pount ;, gh m 0k.
$ p ¢ ¡l GZ: Æ h0 0� Æ ¢ hy.6 93 (0 w 0 1s, h h 0
l0 gs 0 y0 – �0 ly)
M y � ¢ ks g0 s 0 0: HZD $, Vl 0 M. (D¡ ¢ 0)
$ p0 s0 y * -Z1 (hs VX-æ¡ v)
La traduction du dernier bloc de texte ressemble à ceci:

Bienvenue dans la zone de bienvenue du virus HZDS!
Greetz: Vyvojar, Ender, Nasty Lamer et Ugly Luser, MGL,
Joker de cauchemar,
Salutations spéciales: Auteur de Anarchy.6093 (je voulais être 1er, mais l'honneur
appartient à vous – malheureusement)
Beaucoup de baise va à: HZDS, V1ado M. (Dictateur)
Sponsorisé par * -Zine (le meilleur VX-zine de tous les temps)


Lien vers l'original