ZeuS x64 : à Tor et à cri

Magazine
Marque
MISC
Numéro
71
Mois de parution
janvier 2014
Domaines


Résumé
Comme de plus en plus d'utilisateurs passent aux plateformes Windows 64 bits, il en va de même pour les logiciels malveillants. Ceci est également vrai pour le malware bancaire ZeuS. Cette évolution n'était probablement pas nécessaire vu que la majorité des gens utilisent encore des navigateurs 32 bits même sous systèmes 64 bits et que la fonctionnalité principale de ZeuS consiste à modifier les sites bancaires localement par injection de code HTML/JAVASCRIPT.

Body

Cependant, nous avons détecté une souche de ZeuS 32 bits qui contient aussi une version 64 bits à l'intérieur. De plus, cette version fonctionne via Tor. Cela pourrait bien être l'avenir de cette famille de logiciels malveillants. Fait intéressant, la plupart des cibles stockées dans le fichier de configuration du malware correspondent au TLD (Top Level Domain) « CH »(Suisse), apparemment dans le secteur bancaire.

Cet article décrit tout ce que nous savons à propos de cette nouvelle version. La majorité de l'analyse a été effectuée par mon collègue Dmitry Tarakanov.

1. Caractéristiques

Cette variante de ZeuS implémente toutes les fonctionnalités habituelles des malwares de cette famille. À l'intérieur du binaire, il est indiqué qu'il s'agit de la version 3.0.0, mais cette information n'est pas vraiment pertinente, car très souvent erronée. La version 32 bits du malware, qui contient la version 64 bits à l'intérieur, vérifie le processus cible dans lequel il souhaite injecter du code malveillant. S'il s'agit d'une application 64 bits, ZeuS injecte la version 64 bits dans le processus, sinon il injecte la version 32 bits habituelle. Nous avons testé cela avec une version 64 bits d'Internet Explorer et les injections ont fonctionné parfaitement. La deuxième caractéristique notable est que toutes les communications entre les victimes et le serveur de commande et de contrôle (C & C) sont envoyées à travers Tor.

Le reste des fonctionnalités de cette version est identique aux versions précédentes du malware ZeuS. Tous les fichiers déposés par le malware sont stockés dans des dossiers avec des noms générés aléatoirement à l'intérieur du répertoire %AppData% .

installation

Fig. 1 : Répertoires d'installation de ZeuS.

Comme pour les versions précédentes, la persistence passe par la base de registre :

registry

Fig. 2 : Modification dans la base de registre pour assurer la persistance.

2. Pourquoi migrer?

La migration vers une nouvelle version 64 bits de ce malware a du demander un certain effort. Était-ce vraiment nécessaire pour les criminels? Selon les statistiques de Kaspersky Lab, l'utilisation de la version 64 bits d'Internet Explorer n'est pas significative. D'après nos statistiques, voici l'utilisation des différentes versions de Windows :

OS

Fig. 3 : Statistiques d'utilisation des différentes versions de Windows.

3. Bugs

Il semblerait qu'il existe quelques bugs dans la version 64 bits de ZeuS. Par exemple, nous avons trouvé un bug lorsque ZeuS injecte son code 64 bits dans la version 64 bits de EMET Notifier : le processus ciblé plante.

Cela est dû à des erreurs de calcul d'adresses de certaines fonctions. Quand ZeuS est injecté dans l'application EMET notifier, il tente d'appeler la fonction WSAStartup. Cependant, la variable qui doit contenir une adresse de fonction pointe sur de la mémoire non allouée. Cela génère donc une exception « violation d'accès » et arrête le processus.

emet

Fig. 4 : Bug lors de l'injection dans le processus Emet Notifier.

Le code source de ZeuS 2.0.8.9 a été divulgué en mai 2011. Nous croyons que cette version de ZeuS est plus proche de la version de 2011 que d'autres branches de ce malware, y compris la Citadelle. Dans le cas de la Citadelle, il existe une protection pour rendre le téléchargement du fichier de configuration impossible depuis le C & C, même avec l'URL correcte. Dans cette version x64, le C&C n'a aucune protection en ce sens. La connaissance de l'URL exacte du fichier de configuration permet son téléchargement. Le fichier de configuration comprend également une liste des programmes contenant des informations intéressantes à voler pour le malware. En voici une liste non exhaustive :

bitcoin-qt.exe, tiny.exe, ibank2.exe, putty.exe, winscp.exe, filezilla.exe, openvpn-gui.exe, openvpn.exe, CliBank.exe, CliBankOnlineUa.exe, CliBankOnlineRu.exe, CliBankOnlineEn.exe, bnk.exe, budget.exe, cbank.exe, edealer.exe, iwallet.exe, jscashmain.exe, mmbank.exe, payments.exe, paymmaster.exe, pinpayr.exe, pkimonitor.exe, rtcert.exe, upofcards.exe, webmoney.exe, etc.

5. TOR

Cette version de ZeuS embarque la version 0.2.3.25 du binaire tor.exe. Tor n'est pas lancé directement, mais injecté dans le process « svchost.exe » une fois celui-ci suspendu. Une fois l'injection et l'initialisation terminées, l'exécution de svchost.exe reprend. L'utilitaire Tor s'exécute alors dans ce processus et crée un serveur proxy HTTP en écoute sur le port TCP 9050.

tor

Fig. 5 : Port ouvert par le proxy Tor une fois injecté dans le process « svchost.exe ».

Le serveur C&C pour cette version de ZeuS est dans le domaine oignon suivant : egzh3ktnywjwabxb.onion. Toutes les communications du malware se font à travers ce proxy et le réseau Tor. En outre, cette version de ZeuS crée un service caché Tor sur la machine infectée. La configuration suivante est utilisée :

- HiddenServiceDir "% APPDATA% \ Tor \ hidden_service"

- HiddenServicePort "1080 127.0.0.1: port

- HiddenServicePort "5900 127.0.0.1: port

« HiddenServiceDir » définit l'emplacement de la configuration du service caché, et « HiddenServicePort » comment rediriger les utilisateurs se connectant au domaine oignon du serveur serveur Web s'exécutant localement.

Le port mapping vers des ports locaux aléatoires est fait parce que ZeuS crée un répertoire de configuration Tor pour chaque machine infectée et génère une clé privée unique pour le service caché et le nom de domaine. Ceci permet notamment un mapping vers des ports locaux aléatoires. Tor est configuré de telle sorte qu'il utilise pour chaque domaine oignon une clé privée et un service caché unique différent.

6. Conclusion

Quel que soit le but de l'auteur de cette nouvelle version (Marketing ou les bases pour l'avenir) une version 64 bits de ZeuS existe enfin. C'est certainement une nouvelle étape dans l'évolution de la famille ZeuS, après les modules pour différents OS mobiles. De plus, cet échantillon comprend une autre caractéristique intéressante que nous avions déjà vu auparavant, mais dans des malwares sans grandes ambitions : la capacité de communiquer à travers le réseau Tor avec des domaines oignon pour le C&C est certainement un problème sérieux pour la lutte contre cette famille de malware. Il devient plus difficile de fermer les C&C.

Jusqu'à présent, la version 64 bits est toujours distribuée à l'aide de la version 32 bits. Nous supposons que la faible utilisation de navigateurs 64 bits est en partie responsable de ce choix. Toutefois, avoir un malware capable d'infecter les machines 32 et 64 bits est un avantage certain pour les criminels, leur offrant la possibilité de cibler une partie des utilisateurs jusque-là épargnés.




Articles qui pourraient vous intéresser...

Garder ses secrets avec Tomb

Magazine
Marque
Linux Pratique
HS n°
Numéro
48
Mois de parution
septembre 2020
Domaines
Résumé

Pour conserver des documents privés sur un disque dur ou un support amovible, il est nécessaire d'avoir recours au chiffrement. L'outil Tomb permet de manipuler simplement des répertoires chiffrés par le standard LUKS, pensé dans un d'esprit de confort et de mobilité.

Détection d'anomalies par ACP

Magazine
Marque
MISC
Numéro
111
Mois de parution
septembre 2020
Domaines
Résumé

Retour de vacances. L’analyse du SIEM après un mois d’absence montre que dix incidents ont été déclenchés sur la base des alertes automatiques et ont pu être gérés convenablement par la chaîne de traitement d’incidents. Tout est-il sous contrôle ? Un analyste aimerait rapidement s’en assurer en complétant cette supervision par sa propre analyse du mois écoulé. Mais par où commencer ? Il est inenvisageable de regarder un mois de logs « rapidement » et d’autant plus quand on ne sait pas précisément ce que l’on cherche… Une solution possible est de recourir à des outils statistiques qui permettent d’identifier des périodes d’activité atypiques sur lesquelles concentrer son analyse. L’analyse en composantes principales (ACP ou PCA en anglais) est une méthode statistique qui peut répondre relativement efficacement à cette problématique. L’article présente cette méthode et son apport dans la détection d’anomalies, en prenant comme exemple l’analyse de flux réseaux.

Installation du serveur à l’aide d’Ansible

Magazine
Marque
Linux Pratique
HS n°
Numéro
48
Mois de parution
septembre 2020
Domaines
Résumé

Comme annoncé dans l’introduction de ce dossier, nous allons documenter l’installation et la configuration de notre serveur RHEL à l’aide du fichier de configuration Ansible (que l’on nomme « playbook »). Afin de nous assurer que le lecteur dispose de tous les éléments nécessaires à la bonne compréhension du contenu de ce numéro spécial, nous allons donc commencer par un rapide tour d’horizon de cet outil.

Avec Asterisk, déployez votre serveur vocal interactif

Magazine
Marque
Linux Pratique
Numéro
121
Mois de parution
septembre 2020
Domaines
Résumé

Un serveur vocal interactif permet de fournir des fonctionnalités permettant de guider un appelant ou de libérer des employés de tâches fastidieuses et répétitives. Il est ainsi possible d’orienter un appelant vers le bon service, enregistrer les coordonnées de carte bancaire ou proposer un rendez-vous.