Nous sommes le 05-06-2025 et il est 01:47
Recherche :

GROMOZON.COM : Le cas étrange de Docteur Rootkit et Mister Adware



Ce qui suit est la traduction de l'article de Marco Giuliani GROMOZON.COM : Le cas étrange de Docteur Rootkit et Mister Adware
Sur son Blog PC al sicuro sont disponibles l'original en PDF ainsi que d'autres articles sur la sécurité et les malwares en général.
Je tenais à le remercier de m'avoir donné son accord pour le faire. Je remercie aussi Guardian, nicM, Ipl_001 et tout ceux qui m'ont aidée a affiner la traduction.

INTRODUCTION


Ces dernières années, nous avons vu un changement spectaculaire des techniques d'infection. Il y a longtemps, les programmes malveillants ont commencé comme de simples fichiers infectieux, puis ont évolué en macro virus, vers, virus scripts... maintenant nous sommes confrontés à de nombreux backdoors, troyens, adwares et rootkits.

Les compétences nécessaires à l'écriture d'un malware ont changé et les buts aussi. Les temps où les auteurs de virus écrivaient des codes pour montrer leurs capacités à créer des programmes malveillants sont révolus. Maintenant la préoccupation première des auteurs de virus est de faire de l'argent en infectant beaucoup d'ordinateurs.

En utilisant des chevaux de troie automatisés, un attaquant peut accéder à distance aux systèmes. Il y a des milliers de réseaux d'ordinateurs zombies - des machines infectées de backdoors - qui sont prêtes à être utilisées selon le bon vouloir de ceux qui les contrôlent, de l'envoi de spam, jusqu'a l'exécution d'attaques DDoS.

Beaucoup de ces créateurs de virus sont mandatés par des sociétés sans scrupules, utilisant des moyens publicitaires douteux. Une société qui voudrait faire de la publicité pour un produit à un million d'utilisateurs par mail et devrait envoyer ces emails elle même, serait très rapidement sur liste noire. Au lieu de cela, tout ce qu'ils ont a faire est de payer un concepteur de virus pour écrire un code qui peut à distance infecter un ordinateur, le transformant en serveur de courrier. Des sociétés font des millions de dollars de revenus chaque année par le spaming.

Beaucoup d'infections affichent aussi de la publicité sur l'ordinateur infecté. Les malwares sont fréquemment utilisés pour envoyer des fenêtres publicitaires ciblées sur les ordinateurs personnels, en analysant les habitudes de surf des propriétaires et en renvoyant des informations sur l'utilisateur aux serveur attaquants.

Les pirates utilisent souvent des réseaux de robots (botnets) pour attaquer les sites Web. Par exemple, quelqu'un pourrait tenir une société et son site Web en otage, les forçant à payer une rançon sous peine d'attaque DDoS. Quelques pirates informatiques ont des réseaux de centaines de milliers d'ordinateurs, pouvant provoquer une attaque suffisamment puissante pour faire tomber même les serveurs des plus grosses compagnies.

La dernière arme dans l'arsenal de ces "terroristes informatiques" est le rootkit - une technique de camouflage du code malveillant dans un ordinateur, afin qu'aucun logiciel ne puisse le voir. Il y a beaucoup de moyens pour les pirates de cacher des fichiers et d'autres composants de virus. On a découvert nombre de ces techniques et des parades ont été créées par les sociétés d'antivirus, mais, comme toujours, les auteurs de virus ont de l'avance et les moyens de contrer l'antivirus le plus puissant et même les logiciels antirootkit. Il y a quelques mois, des internautes ont commencé à rapporter une infection rootkit qui était totalement inconnue des éditeurs d'antivirus. Cette menace se développe toujours et n'est pas, la plupart du temps, détectée. Dans les pages suivantes, nous allons analyser cette infection plus en détail.


RESUME DE LA MENACE


En mai 2006, des internautes ont commencé à rapporter des comportements étranges de Windows : des plantages au démarrage, des rapports inhabituels de logiciel antivirus annonçant des détections heuristiques de fichiers qu'ils ne pouvaient pas nettoyer et des fichiers étranges apparaissant sur le disque dur. Des internautes italiens ont répertoriés les URLS de sites suspects. Quand les usagers ont visité ces sites Web, l'utilisation de leur CPU a augmenté de manière anormale pendant que leur système ralentissait.

Après ces premiers signes, les internautes ont rapporté des infections sur leurs ordinateurs, découvertes par quelques scanners anti rootkit. L'éradication de cette infection s'avérait être beaucoup plus difficile que prévu. En août 2006, soit trois mois plus tard, cette infection s'étend toujours largement non seulement en Italie, mais aussi dans d'autres pays. Aucun éditeur de logiciel de sécurité n'a publié de mise à jour pour leur moteur, ou n'a trouvé de solution qui enlèverait totalement l'infection.

Dans les pages suivantes, nous analyserons en profondeur l'infection, pour mieux comprendre comment elle agit. Toutes les informations exposées dans ce document proviennent de l'auteur, du web et d'autres chercheurs dans le monde entier. Pour plus d'informations sur les contributeurs et les sources, j'ai inclus une liste complète à la fin du document.

PREMIERE PARTIE : ANALYSE DES MOYENS DE PROPAGATION.


L'infection commence sur des sites Web italiens étranges qui incluent dans leur code un lien vers un JavaScript hébergé sur un autre serveur. Les pages Web Infectées ressemblent à l'image ci-dessous :

pagede début d'infection

Cependant s'il y a beaucoup de sites malveillants d'apparences différentes, chacun a un aspect commun - un lien dans le code source qui mène au site contenant le JavaScript malveillant.

Lien javascript

Le site Web ci-dessus contient le JavaScript camouflé. La tentative de décodage du script n'est pas une tâche aisée. Nous pouvons voir une fonction qui se termine avec la fonction eval() et une autre qui appelle la fonction principale, passant une longue chaîne "obscure". La fonction eval () renvoie le script décodé, nous pouvons changer la fonction eval () en une fonction alert (), forçant le script à montrer le code "décodé" plutôt que de l'exécuter. L'utilisation de cette méthode fournit un code encore plus "obscur". Le cryptage utilisé a des couches multiples.

Fenêtre Windows

En regardant plus avant dans le code, nous pouvons voir l'utilisation d'arguments .callee.toString () .replace (/\s/g," ).length, qui retournent une valeur liée au corps de la fonction elle même. La même fonction est utilisée comme un paramètre "d'assombrissement" du code. En changeant eval () par alert (), nous avons incrémenté le nombre rendu par cette fonction de 1. En changeant eval () par alert () et en incrémentant la valeur de 1 soustrait à la fonction arguments.callee.toString () .replace (/\s/g, ").length nous pouvons facilement éclaircir le code.
Comme montré dans l'image ci-dessous, le JavaScript appelle simplement un autre site Web.

Lien javascript code

Nous pouvons maintenant voir dans le script que le site est http: // td8eau9td.com qui semble être fermé par "l'équipe de traitement des abus" - mais c'est un faux message.

Regardons les informations du site Web :

[whois.estdomains.com]
Registration Service Provided By: ESTDOMAINS INC
Contact: +1.3027224217C
Website: http://www.estdomains.com
Domain Name: TD8EAU9TD.COM
Registrant:
N/A
Austen Rando (joker41@list.ru)
Conde St. 16 81
BELLEVILLE
Illinois,62220
US
Tel. +001.6187775834
Creation Date: 08-Aug-2006
Expiration Date: 08-Aug-2007


Comme nous pouvons voir, ce site est enregistré à ESTDOMAINS, ce qui n'est pas surprenant car la plupart des spams et des sites porteurs de malwares viennent de là. La date de création est intéressante, il semble qu'il y ait des changements de domaine rapide pour empêcher le blocage par les utilisateurs d'un domaine spécifique.
Si nous essayons de nous connecter à la page Web montrée dans le script, nous trouverons un script PHP complexe qui est chargé dynamiquement et change selon le navigateur de l'usager. Cela signifie que selon son navigateur, chaque utilisateur recevra une variété d'infection différente.
Nous avons testé avec Internet Explorer 5, Internet Explorer 6, Mozilla Firefox 1.5.0.6 and Opera 9 :
Internet Explorer 5 U.A = Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)
Internet Explorer 6 U.A = Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)
Mozilla Firefox 1.5.0.6 U.A = Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.4) Gecko/20060508 Firefox/1.5.0.6
Opera 9 U.A = Opera/9.00 (Windows NT 5.1; U; en)

Nous avons eu quatre pages différentes. La page Web chargée pour Internet Explorer a utilisé le nombre le plus élevé d'exploits et d'attaques de même type.

COMPORTEMENT AVEC OPÉRA 9 :

Le surf sur la page web avec Opéra 9 a chargé une nouvelle page .htm qui a automatiquement exécuté un JavaScript camouflé. Une fois décodé, nous pouvons voir que le JavaScript vérifie la plate-forme de l'utilisateur et, si c'est Win32, il télécharge alors un exécutable nommé www.google.com.

fenêtre Windows

COMPORTEMENT AVEC FIREFOX 1.5.0.6 :

Le surf avec Firefox 1.5.0.6 a chargé le même script qu'avec Opéra, il a ensuite demandé de télécharger le même exécutable. Avec Firefox, il essaye de lancer un autre JavaScript camouflé en deux couches.
L'image ci-dessous montre la première couche de code "nettoyé"

Fenêtre windows

COMPORTEMENT AVEC INTERNET EXPLORER 5 :

En surfant avec Internet Explorer 5, la page a envoyé plus d'attaques qu'avec les autres navigateurs. La page a chargé 5 iframes et chaque iframe a utilisé une attaque différente.
La première charge d'iframe essaye automatiquement de télécharger le même exécutable que pour les deux navigateurs précédents. Le JavaScript était ici aussi camouflé.

Fenêtre windows

La seconde iframe essaye d'installer un exploit Java bien connu appelé Byte.Verify. Suite au décodage du JavaScript, nous pouvons voir que l'exploit est chargé seulement après un contrôle des logiciels installés sur le PC. Il vérifie la présence de logiciel antivirus comme :
Norton Antivirus (NAVCfgWizDll.NAVCfgWizMgr)
Kaspersky (DD230880-495A-11D1-B064-008048EC2FC5)
Nod32 (B089FE88-FB52-11D3-BDF1-0050DA34150D)
Ewido (8934FCEF-F5B8-468F-951F-78A921CD3920)

Et caetera, annulant l'installation de l'exploit si l'un d'entre eux est trouvé.

Fenêtre windows

La troisième iframe charge un autre JavaScript qui exploite une vulnérabilité bien connue (et patchée) dans la fonction createControlRange () . Cette vulnérabilité peut être exploitée par un site malveillant pour corrompre la mémoire en permetant au flux du programme d'être redirigé vers le bloc de mémoire. L'exploitation, si elle est couronnée de succès, permet l'exécution de code arbitraire. Ce bug date du 27/02/2005 et est répertorié par Microsoft comme MS05-014.

Fenêtre windows

La quatrième iframe charge encore un JavaScript qui vérifie si la plate-forme du surfer est Win32 et essaye ensuite d'installer un contrôle d'ActiveX appelé FreeAccess.ocx.
Cet OCX est une bibliothèque qui sera copiée dans le dossier System32 comme < nom alléatoire >.dll avec une taille de 15648 octets. Ce fichier est détecté par l'Antivirus Kaspersky comme troyen. Win32. Agent.rl.

Fenêtre windows

La cinquième iframe essaye de télécharger manuellement le même exécutable que la premiére iframe.

COMPORTEMENT AVEC INTERNET EXPLORER 6 :


Internet Explorer 6 va sur une page Web différente de celle des précédents navigateurs. La premiére iframe est la même que la page pour Internet Explorer 5, et essaye automatiquement de charger l'exécutable www.google.com .

La seconde iframe essaye d'exploiter le bug WMF bien connu, découvert en janvier de cette année. Le JavaScript vérifie si un logiciel antivirus est installé - semblable au contrôle dans le paragraphe IE5 ci-dessus - et ensuite, si rien n'est trouvé, essaye de charger un fichier appelé img.tif. C'est une image "mal formée" qui exploite le bug WMF et essaye de télécharger une DLL depuis http://gromozon.com/d.php?10000_2 et de la sauvegarder dans le dossier System32 sous le nom de jvaa.dll, avec une taille de 12288 octets. Ce fichier est enregistré comme BHO

Fenêtre windows

La troisième iframe charge l'ActiveX - FreeAccess.ocx, comme nous avons vu pour Internet Explorer 5.

La quatrième iframe charge le même exécutable que la premiére iframe, mais demande cette fois à l'utilisateur de le lancer manuellement .

PREMIERE PARTIE: DERNIERES IDEES


Comme nous l'avons vu, tout commence a partir du JavaScript décodé au début. C'est la liaison ( le pont) entre les sites Web "normaux" et ce serveur malveillant.

Ce qui est vraiment impressionnant c'est le travail effectué par le serveur. Le lien montré dans le JavaScript change constamment et ceux que nous avons analysés, recueillis dans la page où nous a envoyé le "pont" JavaScript, sont toujours crées de manière aléatoire. Chaque lien produit est détruit après un temps prédéterminé - environ une heure. Lorsque l'utilisateur atteint le pont JavaScript du site Web "inoffensif", il faut environ deux secondes pour créer les liens et la redirection du visiteur, le tout automatiquement, ensuite le serveur change tous les liens pour empêcher l'analyse et d'autres répertoires aléatoires sont créés pour d'autres victimes.

Dans cette analyse, nous avons eu accès à http: // td8eau9td.com comme le serveur qui contient tous les scripts et malwares. Cependant, ce n'est que le dernier serveur crée, comme nous pouvons voir dans la date d'enregistrement du domaine il a été créé le 8 août 2006.

Avant ce serveur, d'autres serveurs étaient assignés à la propagation de ces malwares - le plus célèbre est gromozon.com, dont on peut voir l'enregistrement ci dessous :

[whois.estdomains.com]
Registration Service Provided By: ESTDOMAINS INC
Contact: +1.3027224217
Website: http://www.estdomains.com
Domain Name: GROMOZON.COM
Registrant:
gromozon.com
Ladarius Mcgeary (admin@gromozon.com)
Pembroke Rd 80 79
SAN ANTONIO
TX,78208
US
Tel. +1.2103377863
Creation Date: 16-Feb-2006
Expiration Date: 16-Feb-2007


C'est le premier site repéré durant mai 2006, le site de départ de cette infection. Comme nous pouvons le voir, il est enregistré depuis le 16 février 2006 à ESTDOMAINS aussi.
L'autre domaine connu est mioctad.com, enregistré sous :

[whois.estdomains.com]
Registration Service Provided By: WNZ
Contact: +420.776183233
Website: http://web-namez.com
Domain Name: MIOCTAD.COM
Registrant:
mioctad.com
Vernon Dayton (admin@mioctad.com)
Avenue A 78 26
SAN ANTONIO
TX,78220
US
Tel. +1.2108732122
Creation Date: 03-Jun-2006
Expiration Date: 03-Jun-2007


C'est le deuxième serveur inscrit basé sur la date de création.

Pourquoi trois serveurs ? Le changement de serveur permet de déjouer les tentatives de blocage des serveurs ce qui stopperait l'infection. Pour empêcher de nouvelles infections, nous pourrions bloquer ces trois serveurs, mais nous savons que le serveur sera changé a nouveau, comme pour les serveurs précédents. Un élément est resté constant c'est le premier JavaScript qui agit comme passerelle par l'adresse :
http: // js.gbeb.cc/advertising/
Bloquer l'accès à ce domaine empêchera toutes les infections même si l'administrateur du site web change les serveurs qui propagent le malware (tant qu'il ne change pas cette adresse aussi ;) )

Shéma des serveurs

DEUXIEME PARTIE : ANALYSE DES TECHNIQUES D'INFECTION



Nous avons vu dans la première partie les noms des fichiers qui sont installés sur le PC de la victime en surfant sur ce site. Maintenant nous devons en savoir plus sur les fichiers réels qui ont été installés sur les PC, pour pouvoir connaître chaque aspect de cette infection.. Nous avons vu que l'infection est différente selon le navigateur utilisé pour surfer. Le fichier commun à tous les navigateurs est www.google.com qui sera le dernier fichier que nous allons analyser.

Objet Google.com

Avec Internet Explorer 5/6 une victime non avertie reçoit :

Nous allons analyser FreeAccess.ocx et img.tif.

FreeAccess.ocx

Quand le navigateur demande à installer cet ActiveX et que l'utilisateur accepte, il inscrira une dll de 15648 octets de long avec un nom aléatoire (dans notre cas vcaa.dll) dans le répertoire système de Windows (couramment C:\Windows\System32 \).

Ensuite, la dll est enregistrée comme un CLSID sous :
HKEY_CLASSES_ROOT\CLSID \ {GUID} \InprocServer32
Cette dll est reconnue par l'Antivirus Kaspersky comme le troyen. Win32. Agent.rl. Très peu d'éditeurs d'antivirus reconnaissent actuellement cet échantillon.

Img.tif

Ce fichier est un exploit WMF et ne sera pas chargé si la victime utilise un logiciel antivirus qui est vérifié par le script, comme vu en première partie.

Si le PC est non patché et que le script lance l'exploit, img.tif téléchargera un fichier de 12288 octets de http: // gromozon.com/d.php ? 50310_2 et il sera sauvegardé dans le répertoire système avec un nom aléatoire et une extension dll. Les tailles citées, sont les tailles trouvées au moment de la rédaction de cet article et ils peuvent changer de manière arbitraire selon les souhaits du concepteur.

Ce fichier déposé est aussi détecté par l'Antivirus Kaspersky comme troyen. Win32. Agent.rl et peu d'autres programmes antivirus le reconnaissent.

WWW.GOOGLE.COM

C'est le fichier néfaste - la source de tous les ennuis venant du site Web gromozon.com. Nous devons nous demander : Pourquoi ce nom étrange ?

L'auteur utilise une forme intéressante d'ingénierie sociale. Avec ce nom de fichier il encourage l'internaute à répondre "oui" à la question : "voulez-vous télécharger ce fichier ?" car le message émane d'un fichier que l'utilisateur pense provenir de Google, Inc.

Ce fichier n'est pas un site Web - c'est en réalité un fichier exécutable avec l'extension .COM . Les fichiers COM sont exécutés exactement comme les .exe .pif .scr .bat .cmd et beaucoup d'autres formats semblables. Le fichier www.google.com est un "dropper" (déposeur) qui installe encore plus de fichiers dans l'ordinateur de l'utilisateur.

Depuis mai 2006, cet exécutable a changé son code source plusieurs fois en utilisant un type de polymorphisme du côté serveur. En ne contenant pas un corps de malware statique, le virus est plus difficile à détecter par les éditeurs d'antivirus. Pour déjouer la détection et les tests par les sociétés d'antivirus, le "dropper" ne fonctionne pas sur une Machine Virtuelle.

Après que le fichier est lancé sur un ordinateur réel, le virus essaye de faire tellement de changements que, dans quelques cas, il corrompt le système d'exploitation et occasionne des crashs au démarrage - montrant des erreurs causées par C:\WINDOWS\system32\SERVICES.exe.

Au commencement, nous pouvons entendre le disque dur travaillant pendant quelques secondes, mais techniquement, nous ne voyons rien. Après le démarrage du dropper, nous entendrons le disque dur travaillant intensément quelques secondes, mais là encore rien n'est visible. Le dropper se connecte à un serveur éloigné, 195.225.177.22 et récupère quelques fichiers qui installent un adware, un rootkit, et un faux service Windows. Les droppers sont téléchargés dans C:\Windows\Temp\< nom-aléatoire >1.exe et C:\Documents and Settings\< utilisateur >\local settings\temp (le dossier %TEMP% ).

Nous allons analyser ces trois parties.

Le service Windows

Immédiatement après le lancement du dropper, un nouveau - Faux - compte utilisateur est créé dans Windows avec un nom aléatoire et un mot de passe aléatoire lui aussi. Après que le nouveau compte utilisateur soit créé, un dossier est crée sous C:\Documents et Settings\ avec le même nom que le nouveau compte.

Fichiers

Après cela, un nouveau fichier est créé sous C:\Program Files\Fichiers communs\system (ou parfois sous Microsoft Shared au lieu de system). Ce fichier a un nom et une taille aléatoires. Il est chiffré utilisant le système de Windows Encrypting File System (EFS) de manière à ce que seul le faux compte utilisateur ait des droits dessus, empêchant un autre utilisateur de le déplacer, le lire ou le supprimer. Le fichier peut être reconnu parce qu'il est écrit en vert.


Un nouveau service Windows relatif à ce fichier est alors créé avec un nom aléatoire. Nous pouvons reconnaître ce faux service grâce à son nom aléatoire et la valeur "Logon As" qui est le nom du compte précédemment créé.

Le service

Ce service est détecté par Nod32 comme : Win32/Agent.VP

Adware LinkOptimizer

Après que le service est créé, un adware avec un nom aléatoire est installé dans le dossier C:\Windows\. Lors de nos essais, ce fichier fut nommé luijp1.dll et était long de 64671 octets.

Le fichier est chargé comme un BHO (Aide de navigateur) sous : HKLM\Software\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects

Cet adware, caché par le rootkit, Adware LinkOptimizer, affiche de la publicité sur le PC de la victime lorsque elle surfe sur le Web. L'Antivirus Kasperskydétecte ce fichier comme : not-a-virus:AdWare.LinkOptimizer.a

Rootkit

La partie la plus ennuyeuse de cette infection est le composant rootkit. Après que le dropper est lancé, le rootkit est installé sur le PC de la victime. C'est un "usermode" rootkit qui est dur à enlever parce qu'utilisant aléatoirement :
Microsoft Windows a une liste de noms d'unités réservés qui ne peuvent pas être utilisés comme noms de fichiers normaux. Ces noms sont :

CON PRN AUX NUL

COM1 COM2 COM3 COM4 COM5 COM6 COM7 COM8 COM9

LPT1 LPT2 LPT3 LPT4 LPT5 LPT6 LPT7 LPT8 LPT9

Il est impossible avec des opérations sur fichier classiques de supprimer ou créer des fichiers avec ces noms, mais, si vous utilisez le préfixe \\.\, vous pouvez supprimer et créer ces fichiers facilement à partir de l'invite de commande..

Si vous avez un fichier nommé:
Com4.gip
et essayez de
del C:\com4.gip
Vous obtiendrez une erreur parce que vous ne pouvez pas avoir accès à ce fichier car il utilise un nom réservé, mais si vous essayez de faire :
del \\.\C:\com4.gip
Vous "outrepassez" la vérification et pouvez alors effacer le fichier.


La manip

Le rootkit peut aussi infecter votre système en copiant le code caché dans les Alternate Data Streams (Flux de Données Additionnels) d'un fichier ou d'un répertoire. Cette méthode n'est possible que si le système de fichiers de la victime est NTFS. Les Alternate Data Streams (ADS) sont une fonctionnalité du système de fichiers NTFS qui permet d'insérer des données dans des fichiers existants sans affecter leurs fonctionnalités ni leur taille et empêcher les explorateurs de fichiers classiques de détecter les flux.

C'est un flux alternatif, caché sur lequel un logiciel peut écrire et qui sera caché de la plupart des explorateurs de fichiers et de quelques programmes antivirus.

Si vous voulez voir les fonctions des ADS du système de fichiers NTFS, vous pouvez cliquer sur Démarrer - Exécuter et taper cette commande : "notepad C:\autoexec.bat:mytest.txt"


Le bloc-notes créera un fichier texte caché dans les ADS du fichier autoexec.bat. Le ":" est utilisé quand vous voulez écrire dans les ADS.

Ce rootkit se sert de ce dispositif, copiant son code généralement dans les ADS à la racine du disque.
C:\ (par exemple: "C:\:xchse.xmz") ou dans le dossier système de Windows (exemple "c:\windows\system32:vbhfd.vna")


Après que le rootkit est chargé, il modifie la clef APPINIT_DLLS de
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Windows
Il se charge lui même (avec le préfixe \\?\ si il utilise les noms réservés Windows et non les ADS.).


Clef APPINIT_DLLS

Après qu'il est entièrement chargé, le rootkit cache la clef APPINIT_DLLS et l'adware LinkOptimizer en "crochetant" (hookant) les API suivantes :

KERNEL32.DLL NTDLL.DLL  
GetBinaryTypeW LdrShutdownProcess NtQuerySystemInformation
MoveFileWithProgressW NtAccessCheck NtQueryInformationFile
OpenFile NtQueryInformationJobObject NtReadVirtualMemory
  NtQueryIntervalProfie NtVdmControl
ADVAPI32.DLL NtQueueApcThread NtWriteVirtualMemory
CreateProcessWithLogonW NtWriteFile RtlGetNativeSystemInformation
CreateRestrictedToken RtlAbortRXact ZwQueryDirectoryFile
  RtlGetNtVersionNumbers ZwQuerySystemInformation
PSAPI.DLL LdrLoadDll ZwReadVirtualMemory
EnumProcessModules LdrUnloadDll ZwVdmControl
  NtQueryDirectoryFile ZwWriteVirtualMemory


Clef APPINIT_DLLS

Après cela, le rootkit enlève le SeDebugPrivilege à tous les comptes utilisateur Windows. Cela empêchera quelques programmes anti-rootkit de s'exécuter - par exemple, F-Secure BlackLight Beta.

Le composant rootkit est lancé avec des droits du faux compte utilisateur afin que l'enlèvement des flux ADS soit encore plus complexe que pour l'enlèvement de la version exploitant les noms réservés de Windows

Le rootkit est détecté par Kaspersky comme : troyen. Win32. RKDice.a, mais toutes les variantes ne sont pas repérées car il y en a de nombreuses. Les versions les plus récentes semblent mettre en oeuvre un scanner de checksum pour empêcher l'exécution de logiciels anti-rootkit comme GMER, Avenger et IceSword

Modifier avec un éditeur Hexadécimal quelques octets (par exemple les valeurs de chaînes) du logiciel Avenger nous a permis d'utiliser ce dernier en contournant le scanner de checksum du rootkit.

TROISIEME PARTIE : IDEES FINALES



Cet article décrit les connaissances concrètes que nous avons de cette menace, elle a commencé à se déployer en Italie pour ensuite s'étendre à travers le monde entier.

Il n'y a aucune solution automatique pour nettoyer cette infection et les utilisateurs peuvent seulement utiliser quelques programmes, qui peuvent être difficiles d'accès pour beaucoup d'utilisateurs.

Pour enlever l'infection causée par W32/Agent.VP - le service Windows - il est possible d'utiliser un outil développé par Paolo Monti disponible au téléchargement Tool=Agent.VP

Autrement, les utilisateurs doivent passer par une procédure manuelle. La procédure standard est récapitulée ici mais pourrait ne pas convenir à toutes les variantes de l'infection.

1) Pour désactiver le rootkit, vous devez comprendre que le nettoyage de la clef APPINIT_DLLS est la clef de la désactivation du rootkit (la désactivation diffère de l'enlèvement - désactivé, le fichier est toujours dans le système mais n'est plus directement nuisible il est inactif.). Vous devez désactiver le rootkit avant de pouvoir vérifier les fichiers qu'il a cachés. Pour cela, téléchargez le programme anti-rootkit www.gmer.net et scannez le système. S'il trouve une DLL cachée dans le dossier C:\Windows et un fichier caché étrange, vous devrez noter le nom et le chemin d'accès précis et complet de ces fichiers.

2) Prendre note du chemin d'accès complet de l'exécutable chargé du faux service Windows (s'il est présent sur le disque). Habituellement C:\Program Files\Fichiers communs\System ou C:\Program Files\Fichiers communs\Microsoft Shared\

3) Prendre note du dossier utilisateur crée sous C:\Documents and Settings\

4) Télécharger The Avenger et le dézipper à la racine du disque C:\ , dans un dossier appelé "outil" (Le nom n'est pas important, l'utilisateur peut l'appeler comme il veut) puis lancer Avenger.exe.

Avenger

5) Cocher "input script manually" puis cliquer sur l'icône loupe. Une fenêtre s'ouvrira où vous pourrez écrire votre script. L'utilisateur doit simplement copier et coller le code ci-dessous :

Registry values to replace with dummy: HKLM\Software\Microsoft\Windows NT\CurrentVersion\Windows | AppInit_DLLs

Folders to Delete:
c:\windows\temp
< Insérer ici le chemin complet vers le dossier au nom aléatoire >

Files to delete:
< Insérer ici le chemin complet vers la Dll cachée >
< Insérer ici le chemin complet vers le fichier caché trouvé s'il n'est pas caché dans les ADS !>



L'utilisateur doit changer les lignes par celles trouvées aux points 1, 2, et 3.

6) Après que le code est compilé, l'utilisateur doit cliquer sur le bouton Done et ensuite sur le bouton feu vert. Si tout va bien, le logiciel demandera de redémarrer l'ordinateur.

7) Si Avenger retourne une erreur, fermez le logiciel, supprimez (s'il est présent) le dossier C:\Avenger et supprimez les fichiers error.log et avenger.txt de C:\ puis renommez le dossier où avenger.exe est placé par un autre nom et ensuite reprenez au point 1.

8) Après redémarrage de l'ordinateur, si notepad.exe s'ouvre avec le fichier Avenger.txt, tout devrait aller bien (si l'utilisateur a copié les chemins corrects dans le script) et l'infection rootkit avec l'adware et le faux service windows devraient être partis.

9) Si le rootkit est caché dans des ADS, il n'y a aucune procédure fonctionnant et vous devrez consulter un expert qui pourra vous aiguiller. la chose la plus importante étant la désactivation du rootkit - enlever tous les fichiers est juste "un bonus".

Ceci est un guide qui ne couvre pas toutes les variantes de l'infection, comme nous l'avons annoncé au début cette partie. Si vous voulez suivre un guide plus détaillé, vous pouvez consulter celui écrit par l'équipe SuspectFile à cette adresse : Suspectfile.com

MISE A JOUR



Prevx a édité un outil d'éradication automatique disponible a l'adresse ci dessous.
Gromozon removal tool
Un lien vers le communiqué de Prevx

MISE A JOUR DANS LE FICHIER WWW.GOOGLE.COM



L'exécutable téléchargé depuis le site gromozon.com agit en dropper. Il contient dans son code, une Dll embarquée, c'est le composant qui télécharge et installe rootkit, adware et le fichier crypté EFS.

La Dll est d'abord extraite dans le dossier %TEMP%, puis ensuite, copiée sous le dossier C:\WINDOWS\System32 en tant que < nom-aléatoire >.dll
Ensuite la Dll tente de se connecter à un serveur distant, pour télécharger les derniers composants de l'infection.

J'ai parlé dans la deuxiéme partie du "repérage" des machines virtuelles par www.google.com.
Plus précisément, l'élément de contrôle est localisé dans la Dll embarquée de l'exécutable responsable de l'installation du rootkit et des autres infections.
Le procédé de vérification utilisé est apellé "Red Pill" par Joanna Rutkowska c'est un vieux "truc" bien connu.
Une routine vérifie à quelle adresse est localisé l' IDT (Interrupt descriptor table) dans la mémoire.

Sur un PC Windows normal, l'IDT est localisé à l'adresse 0x80xxxxxx mais sur une machine émulée, la localisation se fait dans une plage d'adresse différente.
VMWare, par exemple, localise l'IDT à l'adresse 0xffxxxxxx tandis que VirtualPC la localise à l'adresse 0xe8xxxxxx. La routine vérifie donc si l'adresse mémoire de l'ITD est supérieure a 0xDxxxxxxx , si c'est le cas c'est que la Dll tourne sur une machine virtuelle donc elle stoppe le processus d'infection.

SIDT

L'instruction SIDT stocke le contenu de l'IDTR dans une zone mémoire de 6 bytes. Cette instruction peut aussi être exécutée en mode Ring 3, car elle ne nécessite pas de privilèges supérieurs dans l'architecture Intel
Dans les dernières versions, la Dll ne contient plus cette routine de manière explicite, à la place elle transcrite en "opcode" dans l'intention de se camoufler.

MISE A JOUR/ NOUVEAUX SERVEURS ET TRUCS AJOUTES


Depuis la première version de cet article, je n'ai observé aucun changement significatif dans la routine d'infection.
L'équipe Gromozon a un peu afiné l'infection par le site, ajoutant de nouveaux serveurs de malwares et un nouveau serveur "pont" à l'ancien js.gbeb.cc
Le nouveau serveur pont est js.pceb.cc qui utilise un nouveau moyen d'infection en lisant les paramètres referrer du site d'origine.
Une autre différence est le changement des sites de départ. Il n'y a plus aucun lien direct vers le serveur pont, mais un nouveau javaScript camouflé, qui révèle le même lien vers le serveur pont.
L'équipe Gromozon a ajouté de nouveaux serveurs d'infection. Cette liste est tirée d'un post de TNT, sur les forums Wilders security.
Le coté positif est que Google tente de filtrer ces serveurs pièges, dans les résultats des recherches.

CONCLUSIONS


Cet article est le fruit du cumul de beaucoup de nuits blanches, remplies du travail de moi même et de beaucoup d'autres chercheurs pendant les mois passés. Les utilisateurs doivent comprendre comment se débarrasser de cette menace et, si les éditeurs d'antivirus n'ont toujours pas écrit de rapport, cela pourrait les aider (et d'autres utilisateurs) à comprendre ce qui arrive aux milliers des gens infectés qui rapportent d'étranges infections sur les forums et les news groups.
Cet article sera mis à jour dès que plus d'informations seront disponibles. Si vous pensez avoir des informations qui doivent être ajoutées ici ou si vous pensez qu'il y a quelques erreurs, n'hésitez pas à m'écrire.
J'espère que vous tous apprécierez mon travail.


Best regards,
Marco Giuliani
virus researcher
Hardware Upgrade Editor
marco.g [ a t ] email [ d o t ]it


SOURCES



Traduit et reproduit par AgnesD avec l'aimable autorisation de Marco Giuliani.
Cet article est disponible en VO et en PDF sur le site de Marco Giuliani.
Warning: main(./inclus/bas.php) [function.main]: failed to open stream: No such file or directory in /mnt/110/sda/e/2/xp.net/articles/gromozon.php on line 538

Warning: main() [function.include]: Failed opening './inclus/bas.php' for inclusion (include_path='/mnt/110/sda/e/2/xp.net/include:.:/usr/php4/lib/php') in /mnt/110/sda/e/2/xp.net/articles/gromozon.php on line 538