HackingTeam regard sur un Outil d'administration à distance(RAT): Catégorie de Malware utilisé par les gouvernements
/image%2F0527637%2F20150713%2Fob_35d15d_malware-computer-virus.jpg)
Les chercheurs en sécurité du monde entier ont fouillé dans la décharge massive de HackingTeam. Une chose est sur, c'est comme Noël pour les pirates.
Labs.Bromium qui détient entre ses mains les référentiels de code de HackingTeam, a trouvé un code source d'une multi-plateforme, hautement recommandés, de niveau RAT ( Remote Access Trojan) gouvernemental.
Lorsque Bromium.labs c'est plongé dans les dépôts, il est tombé sur un tas de projets "d'agents RCS", et chacun de ces agents semble être un noyau de Malware RAT pour la HackingTeam appelé système de contrôle à distance, ou RCS « Remote Control System » (Système de Contrôle à Distance).
Chacun des noyaux est fait pour un OS différent et ensemble, ils forment un malware multi-plate-forme qui fonctionne sur Windows, Windows Phone, Windows Mobile, Mac OSX, iOS, Linux, Android, BlackBerry OS, et Symbian. Le blog Bromium.labs a couvert le référentiel de base-win32, mais vous pouvez supposer que la fonctionnalité de l'agent Windows est présente sur toutes les autres plate-formes.
Contexte
Le code de ce référentiel constitue une DLL 32 bits qui est l'échelle du système injecté sur Windows, permettant au malware d'exister dans l'espace de processus de nombreuses applications cibles potentiels. Il y a aussi un référentiel de base-win64 qui contient les outils pour compiler cette DLL pour les systèmes 64 bits.
Lorsque la DLL est injecté dans un processus, elle va se dissocier de la liste des modules PEB (Process Environnement Block) et commencer un canal IPC pour communiquer avec d'autres instances du malware et finalement, à une instance de racine qui est responsable de la communication avec le serveur C & C.
Fonctionnalités principales
RCS contient des dizaines d'outils run-of-the-mill d'espionnage, semblables à ceux trouvés dans les outils comme Blackshades et DarkComet. Voici un regard sur le code source:
D'un rapide coup d'œil, nous pouvons voir un certain nombre d'outils «intéressants»:
HM_Pstorage.h et HM_PWDAgent (dossier): saisit les mots de passe de Firefox, Internet Explorer, Opera, Chrome, Thunderbird, Outlook, MSN Messenger, Paltalk, Gtalk, et Trillian stockés. HM_IMAgent.h et HM_IMAgent (dossier): enregistre des conversations de Skype, Yahoo IM (versions 7 à 10), MSN Messenger (versions 2009 à 2011, maintenant abandonnées) et ICQ (version 7 uniquement). HM_SocialAgent.h et social (dossier): saisit les cookies de session pour Gmail, Facebook, Yahoo Mail, Outlook (client Web), et Twitter depuis Firefox, Chrome et IE. HM_MailCap.h, HM_Contacts.h, HM_MailAgent (dossier) et HM_ContactAgent (dossier): capture des courriels et des contacts à partir d'Outlook et Windows Live Mail. HM_AmbMic.h et HM_MicAgent (dossier): enregistre le bruit ambiant capté par des microphones attachés. wcam_grab.h et wcam_grab.cpp: snap périodiquement et enregistre des photos de webcam. HM_Clipboard.h: saisit toutes les données qui sont stockées sur le presse-papiers. HM_KeyLog.h: enregistre toutes les frappes. HM_MouseLoh.h: enregistre tous les mouvements de la souris et les clics. HM_UrlLog.h: dossiers URLs visité dans Firefox, Chrome, IE et Opera.
Il y a rien de vraiment nouveau dans le code, et les méthodes utilisent la plupart du temps des appels d'API standard. Cette fonctionnalité est assez commune dans la plupart des RATS, mais nous devrions considérer que la plupart de ces dossiers ont été vérifiés dans le référentiel dès 2011, signifiant que RCS peut avoir ouvert la voie dans certaines de ces caractéristiques.
Certaine analyse plus approfondie du code révèle que RCS a quelques fonctionnalités plus rares, cependant, dans HM_SkypeRecord.h et HM_SkypeACL (dossier), par exemple, nous pouvons voir qu'ils utilisent l'API DirectSound pour capturer les appels Skype actifs et enregistrer l'audio en utilisant le codec Speex.
En outre, nous voyons que RCS peut surveiller les documents imprimés (HM_PrintPool.h) et même saisir les clés privées, les soldes et les transactions de Bitcoin, litecoin, Feathercoin et portefeuilles Namecoin (HM_Money.h).
Géolocalisation
RCS utilise les fonctions WLAN API (réseau local sans fil) de Wlanapi.dll afin d'énumérer les hotspots WiFi à proximité. Beaucoup de hotspots exposent des informations de géolocalisation et RCS semble les utiliser a but informatif afin de déterminer où la machine infectée se trouve, même quand celle-ci est caché derrière un VPN ou un proxy.
Mouvement latéral
Par le fait que HackingTeam semble avoir un stock de 0 day pour les mouvements latéraux , penseriez vous que RCS n'utiliserait pas toutes les fonctionnalités pour ce but précis. Vous auriez tort, cependant. Ils semblent avoir un infector() qui peut infecter les clés USB, les téléphones fonctionnant sous Windows Mobile, et les disques VMWare. Cette infection est situé dans HM_PDAAgent.h.
L'infector USB est assez standard. RCS sonde les nouveaux lecteurs USB, leurs envoient un installateur, et infecte le fichier autorun.inf pour exécuter cette installation.
L'infector Windows Mobile fonctionne de la même manière, en copiant le malware à partir du noyau-WinMobile référentiel pour le téléphone, ceci comme un fichier appelé autorun.exe. Ensuite, il envoi un fichier infecté "autorun.zoo" sur le téléphone. Tout cela est fait en utilisant des fonctions de l'API standard de Windows Phone, rapi.dll.
Le RCS détecte les AVs en recherchant leurs pilotes ou en examinant l'environnement pour assurer de certaines variables. Il est assez futé pour savoir lesquelles de ses caractéristiques déclencheront les alertes AVs, et désactivera sélectivement des configurations pour rester caché.
Le malware utilise également les appels d'API brouillées afin d'empêcher toute forme d'analyse statique pour comprendre ce qu'il fait. Dans le fichier DynamiCall \ obfuscated_calls.h, le malware a une chaînes codées qui représentent les noms de DLL et les noms de fonctions de l'API qu'elle appelle.
De là, DynamiCall\dynamic_import.h et DynamiCall\dynamic_import.cpp s'occupent du décodage des cordes(séries), le chargement du DLLS et la décision des adresses des fonctions. De plus, RCS a un ensemble de fonctions d'API qu'il appellera seulement s'il peut confirmer qu'ils ne sont pas contrôlés : ReadProcessMemory, WriteProcessMemory, CreateRemoteThread, CreateThread, GetProcAddress, VirtualAllocEx, GetWindowText, SendMessageTimeout et VirtualProtectEx. Chaque fois que l'une de ces fonctions est appelée, RCS va récupérer la DLL qui contient la fonction, manuel-carte dans la mémoire, recherchez la fonction cible dans la bibliothèque manuellement mappé, et copier les cinq premiers octets de la bibliothèque manuellement mappée au dessus les cinq premiers octets de la fonction dans la bibliothèque réelle. Si une étape de ce processus échoue, le malware n’appellera pas la fonction. Le code qui fait cela est assez volumineux, mais vous pouvez le trouver dans HM_SafeProcedures.h, HM_SafeProcedures.cpp, HM_PreamblePatch.h et HM_PreamblePatch.cpp.
Cependant, une des pièces les plus révélatrice de code dans le logiciel malveillant, est un extrait inachevée à partir de la ligne 48 du format_resistant.cpp, ce qui suggère l'équipe a essayé de développer un moyen pour que RCS puisse persister via l'infection de UEFI. Bien que le code est inachevé, il est révélateur de leurs ambitions futures.
Remarque: D'autres dépôts contiennent également quelques rootkits en mode noyau pour cacher le malware.
Réflexions de clôture
Le RCS de HackingTeam est un RAT pleinement fonctionnel avec la capacité d'intercepter de grandes quantités de renseignements personnels, d'enregistrer les conversations, les caméras, de se propager à des périphériques, et faire tout cela sans déclencher les alarmes. Le code source montre que le fichier a été développé par une équipe très ambitieuse, et les journaux du référentiel fait comprendre qu'il était en cours de développement. Les implications que ceci porte sont énormes, surtout compte tenu de la liste des clients de HackingTeam.
Source: Labs.Bromium
Le site internet Cyberwarzone a publié une liste (ci-dessous) de rapports effectués par des chercheurs suite au 400Go de données de HackingTeam qui ont été divulguées au public et on peut dire qu'il en ressort des révélations choquantes.
- Hacking Team hack casts spotlight on murky world of state surveillance
- Adobe To Fix Another Hacking Team Zero-Day
- Hacking Team’s Flash 0-day: Potent enough to infect actual Chrome user
- Sednit APT Group Meets Hacking Team
- Hacking Team Shows the World How Not to Stockpile Exploits
- WikiLeaks Posts Over 1 Million Hacking Team Emails And It’s A Can Of Worms For Governments
- Met Police Statement: Did Not Acquire Hacking Team’s Solution
- Spyware Maker Hacking Team Courts Florida Law Enforcement
- Did government bodies like Secretariat, Intelligence Bureau, NTRO and NIA deal with Italy’s Hacking Team?
- Leaked emails show Florida police agency sought spyware
- Wikileaks on “Hacking Team” threat to Indian National Security
- Wikileaks expose purchase secrets of Indian spy agencies
- For this group of Ethiopian journalists, the Hacking Team revelations are personal
- HACKING TEAM EMPLOYEE JOKES ABOUT ASSASSINATING ACLU TECHNOLOGISToici