Ousaban: Une collection de photos privées cachée dans un CABinet

Le nouvel épisode de notre série occasionnelle démystifiant les chevaux de Troie bancaires ciblant l'Amérique latine.

Le nouvel épisode de notre série occasionnelle démystifiant les chevaux de Troie bancaires ciblant l’Amérique latine.

Ousaban est un cheval de Troie bancaire latino-américain actif exclusivement au Brésil. ESET suit cette famille de logiciels malveillants depuis 2018. Comme la plupart des autres chevaux de Troie bancaires ciblant l’Amérique latine, Ousaban utilise des fenêtres superposées pour voler des informations d’identification et plus encore auprès des institutions financières. Cependant, contrairement à la plupart des autres chevaux de Troie bancaires d’Amérique latine, les développeurs d’Ousaban ont étendu l’utilisation des fenêtres superposées pour voler les informations d’identification des services de messagerie régionaux populaires. Dans ce volet de notre série, nous examinons ses principales caractéristiques et ses nombreux liens avec d’autres familles de chevaux de Troie bancaires d’Amérique latine.

Caractéristiques

Ousaban est rédigé en Delphi, comme la grande majorité des autres chevaux de Troie bancaires latino-américains analysés par ESET. Et, comme beaucoup d’entre eux, Ousaban montre des signes de développement actif et continu.

Le nom attribué par ESET à cette famille est un mot-valise composé de deux mots : « ousadia », qui signifie « audace » en portugais, et « cheval de Troie bancaire ». La raison d’être du choix de ce nom découle du fait que pendant longtemps, Ousaban a été distribué avec les images (dont certaines sont obscènes) présentées dans la Figure 1. Dans les campagnes les plus récentes distribuant Ousaban, ce n’est plus le cas.

Figure 1. Différentes images distribuées avec le cheval de Troie bancaire Ousaban

Ousaban est également connu sous le nom de Javali, un nom attribué par Kaspersky. Un article récent sur Ousaban est disponible ici. ESET a également été en mesure d’attribuer Ousaban aux campagnes décrites dans cet article de 2018. Même si certaines sources affirment qu’Ousaban est actif en Europe, ESET n’a jamais observé de campagne diffusant ce cheval de Troie bancaire en dehors du Brésil.

Ousaban protège ses exécutables avec les obfuscateurs binaires Themida ou Enigma. En outre, la plupart des EXE sont agrandis, à l’aide d’un remplissage binaire, jusqu’à environ 400 Mo, probablement afin d’échapper à la détection et au traitement automatisé.

La plupart des variantes récentes d’Ousaban contiennent une table de chaînes de caractères, stockée dans leurs sections .rsrc. L’une des ressources contient une liste de chaînes compressée en zlib et délimitée par des caractères de nouvelle ligne.

Ses capacités de porte dérobée sont très similaires à celles d’un cheval de Troie bancaire latino-américain typique : simulation des actions de la souris et du clavier et enregistrement des frappes. Les dernières variantes communiquent avec les serveurs C&C en utilisant RealThinClient, un protocole également utilisé par Grandoreiro.

Le cheval de Troie bancaire latino-américain typique attaque les utilisateurs d’institutions financières à l’aide de fenêtres superposées conçues spécifiquement pour ses cibles et Ousaban ne fait pas exception. Ousaban ne fait pas exception à la règle. Fait à noter : ses cibles incluent plusieurs services de messagerie pour lesquels il dispose également de fenêtres superposées, comme le montre la Figure 2.

Figure 2. Conception d’une fenêtre superposée pour le service de messagerie UOL

Pour assurer la persistance, Ousaban crée un fichier LNK ou un simple chargeur VBS dans le dossier de démarrage, ou bien il modifie la clé de registre Windows Run.

Distribution et exécution

Ousaban est distribué principalement par le biais d’e-mails de phishing (comme celui de la Figure 3). L’acteur de la menace qui se cache derrière Ousaban passe par plusieurs chaînes de distribution. Ces chaînes partagent certaines caractéristiques communes, notamment :

  • Le chargement latéral de DLL est utilisé pour exécuter une charge utile binaire
  • Les archives CAB sont parfois utilisées à la place des archives ZIP
  • Un fichier de configuration distribué dans une archive à une étape est requis par l’étape suivante.
  • Un injecteur, propre à Ousaban, peut être utilisé.

Figure 3. Spam récent distribuant Ousaban (une traduction anglaise approximative est affichée à droite)

MSI avec JavaScript

Cette chaîne de distribution, illustrée à la Figure 4, est assez simple. La victime est incitée à exécuter un MSI joint à l’e-mail de phishing. Une fois exécuté, le MSI lance un téléchargeur JavaScript intégré qui télécharge une archive ZIP et en extrait le contenu. Il exécute ensuite l’application légitime, qui charge latéralement le cheval de Troie bancaire Ousaban.

Figure 4. Chaîne de distribution simple d’Ousaban

MSI multi-étapes

ESET a récemment observé une nouvelle chaîne de distribution propageant massivement Ousaban. Elle est beaucoup plus compliquée que celle décrite ci-dessus. L’ensemble du processus est illustré dans la figure 5.

Les deux premières étapes sont presque identiques. Dans les deux cas, le cœur de l’étape est contenu dans une archive (ZIP ou CAB) et contient :

  • Une application légitime
  • Un injecteur chiffré
  • Un téléchargeur chiffré
  • Un fichier de configuration chiffré
  • Des fichiers légitimes

L’application légitime, une fois exécutée, charge latéralement l’injecteur. L’injecteur localise, déchiffre et exécute le téléchargeur. Le téléchargeur déchiffre le fichier de configuration pour obtenir une URL menant à une configuration distante. La configuration distante contient une URL menant à l’archive de l’étape suivante. Le téléchargeur télécharge l’archive de l’étape suivante, extrait son contenu et exécute l’application légitime.

La dernière étape est légèrement différente, car elle déchiffre et exécute le véritable cheval de Troie bancaire Ousaban au lieu d’un téléchargeur. Le troisième fichier de configuration mène à une configuration à distance avec l’adresse IP et le port du serveur C&C. L’archive de la dernière étape contient un autre fichier lié au logiciel malveillant : un module de support qui modifie divers paramètres de la machine de la victime. Enfin, les archives des trois étapes comprennent des fichiers supplémentaires – un seul exécutable légitime dans l’archive de la première étape, 14 fichiers légitimes dans l’archive de la deuxième étape et 13 fichiers légitimes dans l’archive de la troisième étape, plus une archive intégrée contenant 102 autres fichiers légitimes.

Figure 5. La chaîne de distribution complexe d’Ousaban

Module de support

  • Le module contient les binaires de RDPWrap dans sa section .rsrc. Il modifie ensuite les paramètres RDP directement dans le registre Windows à l’emplacement suivant :HKLM\SYSTEM\CurrentControlSet\Services\TermService\
  • Modifie les paramètres RDP pour utiliser RDPWrap, un utilitaire permettant d’autoriser des connexions RDP multiples aux éditions Familiales du système d’exploitation Windows;
  • Modifie les paramètres du pare-feu pour autoriser toutes les connexions RDP;
  • Création d’un nouveau compte avec des privilèges administratifs.

Ousaban charge ce module pour faciliter la connexion de l’acteur de la menace à la machine de la victime. Il s’agit principalement de :

  • HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\

Le module utilise ensuite netsh.exe pour modifier le pare-feu Windows afin d’autoriser tout le trafic TCP et UDP dirigé vers le port 3389, le port standard pour RDP. Enfin, il crée un nouveau compte Administrat0r avec des privilèges administratifs. Nous supposons que l’acteur de la menace souhaite disposer d’un deuxième moyen d’accéder à la machine de la victime. Il n’est alors pas limité par les capacités du cheval de Troie bancaire Ousaban et peut réaliser n’importe quelle activité malveillante.

Cryptographie

Ousaban utilise globalement trois schémas cryptographiques. Ses chaînes sont chiffrées à l’aide d’un algorithme utilisé par la grande majorité des chevaux de Troie bancaires latino-américains que nous avons analysés (nous l’avons déjà décrit en détail ici). Toutes les communications entre Ousaban et son serveur C&C sont chiffrées à l’aide du chiffrement standard AES avec une clé codée en dur.

L’algorithme final est utilisé dans l’injecteur spécifique à cette famille, mentionné précédemment. Nous fournissons une implémentation Python dans la Figure 6.

Figure 6. Algorithme utilisé par l’injecteur d’Ousaban pour déchiffrer ses charges utiles

Configuration à distance

Ousaban s’appuie sur la configuration à distance pour obtenir les URL de ses prochaines étapes ainsi que l’adresse et le port C&C à utiliser. Ousaban avait l’habitude de stocker sa configuration à distance sur YouTube, comme Casbaneiro, mais depuis peu, il utilise plutôt Google Docs.

La configuration distante est au format JSON, les valeurs étant chiffrées par le même algorithme que celui utilisé pour les chaînes de caractères, mais avec une clé différente. Les champs ont la signification suivante :

  • host = domaine C&C
  • link = URL de l’étape suivante
  • porta = port C&C ou 0 (le port HTTP 80 par défaut est alors utilisé)
  • vers = version d’Ousaban

Des exemples de la configuration à distance sont fournis dans la Figure 7 et la Figure 8.

Figure 7. Configuration à distance d’Ousaban sur YouTube

Figure 8. Configuration à distance d’Ousaban sur Google Docs

Similitudes avec d’autres chevaux de Troie bancaires d’Amérique latine

Nous avons déjà mentionné certaines similitudes entre Ousaban et d’autres chevaux de Troie bancaires latino-américains précédemment analysés dans cette série (comme le même algorithme de déchiffrement de la chaîne). Au cours de notre analyse, nous avons découvert des liens supplémentaires avec les autres familles, principalement :

  • Certains téléchargeurs d’Ousaban contiennent le même code d’obfuscation de chaîne qu’Amavaldo;
  • Ousaban a été distribué par les mêmes publicités malveillantes que Mispadu dans le passé;
  • Les fichiers JavaScript qu’il utilise sont similaires à ceux de Vadokrist, Mekotio, Casbaneiro et Guildma;
  • Les fichiers PowerShell qu’il utilise occasionnellement pour la distribution (en dehors des méthodes récentes décrites dans ce billet) sont similaires à Amavaldo, Casbaneiro et Mekotio.

Nous avons analysé en profondeur la coopération étroite et intéressante entre ces familles de logiciels malveillants dans notre white paper présenté à la conférence Virus Bulletin 2020.

Conclusion

Dans ce volet de notre série, nous avons étudié Ousaban, un cheval de Troie bancaire latino-américain ciblant uniquement le Brésil. Cette famille de logiciels malveillants est active depuis au moins 2018 et partage des caractéristiques typiques de ce type de menace – elle est écrite en Delphi, contient des fonctionnalités de porte dérobée et attaque en utilisant des fenêtres superposées.

Nous avons couvert ses caractéristiques les plus typiques, ses méthodes de distribution et d’exécution et la structure de sa configuration à distance. Nous avons également découvert plusieurs pistes qui suggèrent que Ousaban est lié à d’autres chevaux de Troie bancaires latino-américains.

Pour toute question, contactez-nous à l’adresse threatintel@eset.com. Les indicateurs de compromission peuvent également être consultés dans notre dépôt GitHub.

Indicateurs de compromission (IoCs)

Hashes

SHA-1DescriptionESET detection name
C52BC5B0BDFC7D4C60DF60E88835E3145F7FB34FOusaban banking trojanWin32/Spy.Ousaban.G
D04ACFAF74861DDC3B12E75658863DA65C03013FOusaban JS downloaderJS/TrojanDownloader.Banload.AAP
9A6A4BF3B6E974E367982E5395702AFF8684D500Ousaban JS downloaderJS/TrojanDownloader.Banload.AAP
3E8A0B6400F2D02B6B8CD917C279EA1388494182Ousaban MSI downloaderWin32/Spy.Ousaban.W
6946BFB8A519FED8EC8C30D9A56619F4E2525BEAOusaban injectorWin32/Spy.Ousaban.W
E5DD2355E85B90D2D648B96C90676604A5C3AE48Ousaban support moduleWin32/Spy.Ousaban.AB

Applications légitimes abusées

Example SHA-1EXE nameDLL name
BA5493B08354AEE85151B7BBD15150A1C3F03D1DAvira.SystrayStartTrigger.exeAvira.OE.NativeCore.dll
7F6C820B00FC8C628E2420C388BBB9096A547DAAAudioGrabber.exeStarBurn.dll
C5D5CF1B591C40344B20370C5EE5275356D312ECPlGen.exebass_fx.dll
53045B8047CED049BBC7EBCB3D3299D2C465E8B9BlazeDVD.exeSkinScrollBar.dll
A6118D354D512DC29965E368F6C78AA3A42A27ADImageGrabber.exeStarBurn.dll
F9C71277CF05738275261D60A9E938CBA7232E0Dnvsmartmaxapp.exenvsmartmax.dll

URLs des fichiers de configuration récents

https://docs.google[.]com/document/d/1o9MlOhxIJq9tMOuUHJiw2eprQ-BGCA_ERnbF54dZ25w/edit
https://docs.google[.]com/document/d/1nQqifeYFsCcI7m-L1Y1oErkp50c-y670nfk7NTKOztg/edit
https://docs.google[.]com/document/d/13A6EBLMOOdvSL3u6IfyrPWbYREXNRVdDTiKzC6ZQx7U/edit
https://docs.google[.]com/document/d/1UiuqrzI_rrtsJQHqeSkp0sexhwU_VSje8AwS-U6KBPk/edit
https://docs.google[.]com/document/d/1VKxF3yKbwQZive-ZPCA4dAU1zOnZutJxY2XZA0YHa3M/edit
https://docs.google[.]com/document/d/19bXTaiFdY5iUqUWXl92Js7i9RoZSLJqcECgpp_4Kda4/edit
https://docs.google[.]com/document/d/1DDDmJzBVcNWhuj8JMRUVb7JlrVZ5kYBugR_INSS96No/edit
https://docs.google[.]com/document/d/1UbfOcHm-T9GCPiitqDRh5TNwZRNJ8_miEpLW-2ypU-I/edit
https://docs.google[.]com/document/d/1d1903AvDBYgOo0Pt9xBBnpCHwSerOpIi4l1b6M4mbT4/edit
https://docs.google[.]com/document/d/1JLuJKoxcd0vRqut8UeBjFJXzMDQ9OiY2ItoVIRq6Gw8/edit
https://docs.google[.]com/document/d/1EOwVDlYPV3gE7PSnLZvuTgUQXvOSN9alyN5aMw7bGeI/edit
https://docs.google[.]com/document/d/18sc6rZjk529iYF2iBTsmuNXvqDqTBSH45DhSZpuLv_U/edit

Techniques MITRE ATT&CK

Note : Ce tableau a été réalisé basé sur la version 8 de MITRE ATT&CK.

TacticIDNameDescription
Resource DevelopmentT1583.001Acquire Infrastructure: DomainsOusaban operators register domains to be used as C&C servers.
T1587.001Develop Capabilities: MalwareOusaban is operated by the same group that develops it.
Initial AccessT1566.001Phishing: Spearphishing AttachmentOusaban’s initial downloader is most commonly distributed as a spam attachment.
ExecutionT1059.001Command and Scripting Interpreter: PowerShellOusaban uses PowerShell in some distribution chains.
T1059.003Command and Scripting Interpreter: Windows Command ShellOusaban uses the cmd.exe to execute the legitimate applications that side-load the main Ousaban payload.
T1059.007Command and Scripting Interpreter: JavaScript/JScriptOusaban uses JavaScript in some distribution chains.
T1204.002User Execution: Malicious FileOusaban relies on the victim to execute the distributed MSI file.
PersistenceT1098Account ManipulationOusaban registers a new local administrator account on the victim’s machine.
T1547.001Boot or Logon Autostart Execution: Registry Run Keys / Startup FolderOusaban achieves persistence using the Run key or startup folder.
Defense EvasionT1140Deobfuscate/Decode Files or InformationOusaban payloads and strings are encrypted.
T1574.002Hijack Execution Flow: DLL Side-LoadingOusaban is often executed by this technique.
T1562.001Impair Defenses: Disable or Modify ToolsOusaban modifies the RDP settings of the victim’s machine.
T1562.004Impair Defenses: Disable or Modify System FirewallOusaban modifies Windows firewall settings.
T1027.001Obfuscated Files or Information: Binary PaddingOusaban frequently uses binary padding.
T1027.002Obfuscated Files or Information: Software PackingOusaban binaries are protected by Themida or Enigma packers.
T1218.007Signed Binary Proxy Execution: MsiexecOusaban uses the MSI format for execution.
Credential AccessT1056.001Input Capture: KeyloggingOusaban can capture keystrokes.
DiscoveryT1010Application Window DiscoveryOusaban looks for bank- and email-related windows based on their window names and titles.
T1518.001Software Discovery: Security Software DiscoveryOusaban collects information about the security software installed on the victim’s machine.
T1082System Information DiscoveryOusaban collects basic information about the victim’s machine, such as computer name and Windows version.
T1113Screen CaptureOusaban can take screenshots.
Command and ControlT1132.002Data Encoding: Non-Standard EncodingOusaban uses RealThinClient that provides non-standard encryption.
T1219Remote Access SoftwareOusaban installs RDPWrap on the victim’s machine.
ExfiltrationT1041Exfiltration Over C2 ChannelOusaban exfiltrates data via C&C server.

Infolettre

Discussion