Avant de conclure notre série, il y a encore un trojan bancaire latino-américain qui mérite qu'on s'y attarde : Numando. L'acteur de la menace derrière cette famille de logiciels malveillants est actif depuis au moins 2018. Même s'il est loin d'être aussi vif que Mekotio ou Grandoreiro, il a été utilisé de manière constante depuis que nous avons commencé à le suivre, apportant de nouvelles techniques intéressantes au pool d'astuces des trojans bancaires d'Amérique latine, comme l'utilisation d'archives ZIP apparemment inutiles ou le regroupement de charges utiles avec des images BMP leurres. Géographiquement, il se concentre presque exclusivement sur le Brésil, avec de rares campagnes au Mexique et en Espagne.
Caractéristiques
Comme tous les autres chevaux de Troie bancaires d'Amérique latine décrits dans cette série, Numando est écrit en Delphi et utilise de fausses fenêtres superposées pour attirer les informations sensibles de ses victimes. Certaines variantes de Numando stockent ces images dans une archive ZIP chiffrée à l'intérieur de leur section .rsrc, tandis que d'autres utilisent une DLL Delphi distincte uniquement pour ce stockage.
Les capacités de backdoor permettent à Numando de simuler les actions de la souris et du clavier, de redémarrer et d'arrêter la machine, d'afficher des fenêtres superposées, de faire des captures d'écran et de tuer les processus du navigateur. Cependant, contrairement aux autres chevaux de Troie bancaires latino-américains, les commandes sont définies sous forme de nombres et non de chaînes (voir la figure 1), ce qui nous a inspiré le nom de cette famille de logiciels malveillants.
Les chaînes de caractères sont chiffrées par l'algorithme le plus courant parmi les chevaux de Troie bancaires d'Amérique latine (voir la Figure 5 de notre article sur Casbaneiro) et ne sont pas organisées dans une table de chaînes de caractères. Numando collecte la version de Windows et le bitness de la machine victime.
Contrairement à la plupart des autres chevaux de Troie bancaires latino-américains traités dans cette série, Numando ne montre pas de signes de développement continu. Il y a bien quelques modifications mineures de temps en temps, mais dans l'ensemble, les binaires n'ont pas tendance à changer beaucoup.
Distribution et exécution
Numando est distribué presque exclusivement par spam. D'après nos données télémétriques, ses campagnes touchent tout au plus quelques centaines de victimes, ce qui le rend nettement moins efficace que les chevaux de Troie bancaires les plus répandus en Amérique latine, tels que Mekotio et Grandoreiro. Les campagnes récentes ajoutent simplement une pièce jointe ZIP contenant un programme d'installation MSI à chaque message de spam. Ce programme d'installation contient une archive CAB avec une application légitime, un injecteur et une DLL chiffrée du trojan bancaire Numando. Si la victime potentielle exécute le MSI, elle finit par exécuter également l'application légitime, ce qui entraîne le chargement latéral de l'injecteur. L'injecteur localise la charge utile, puis la déchiffre à l'aide d'un simple algorithme XOR avec une clé à plusieurs octets, comme dans l'aperçu de ce processus illustré à la figure 2.
Pour Numando, la charge utile et l'injecteur sont généralement nommés de manière identique - l'injecteur avec l'extension .dll et la charge utile sans extension (voir Figure 3) - ce qui permet à l'injecteur de localiser facilement la charge utile chiffrée. Il est surprenant de constater que l'injecteur n'est pas écrit en Delphi, ce qui est très rare parmi les chevaux de Troie bancaires d'Amérique latine. Les IoC à la fin de ce billet contiennent une liste d'applications légitimes dont nous avons observé l'abus par Numando.
Leurre ZIP et BMP superposé
Il existe une chaîne de distribution intéressante datant d'un passé récent qui mérite d'être mentionnée. Cette chaîne commence par un téléchargeur Delphi qui télécharge une archive ZIP leurre (voir Figure 4). Le téléchargeur ignore le contenu de l'archive et extrait une chaîne chiffrée codée en hexadécimal du commentaire du fichier ZIP, un composant facultatif du fichier ZIP stocké à la fin du fichier. Le téléchargeur n'analyse pas la structure du fichier ZIP, mais recherche plutôt le dernier caractère { (utilisé comme marqueur) dans l'ensemble du fichier. Le déchiffrement de la chaîne de caractères donne lieu à une URL différente qui mène à l'archive réelle de la charge utile.
La deuxième archive ZIP contient une application légitime, un injecteur et une image BMP de taille suspecte. Le téléchargeur extrait le contenu de cette archive et exécute l'application légitime, qui charge latéralement l'injecteur qui, à son tour, extrait le cheval de Troie bancaire Numando de l'image BMP superposée et l'exécute. Le processus est illustré à la figure 5.
Ce fichier BMP est une image valide et peut être ouvert dans la majorité des visionneurs et éditeurs d'images sans problème, car la superposition est simplement ignorée. La figure 6 montre certaines des images leurres utilisées par l'acteur de menace Numando.
Configuration à distance
Comme de nombreux autres chevaux de Troie bancaires latino-américains, Numando utilise des services publics pour stocker sa configuration à distance - YouTube et Pastebin dans ce cas. La figure 7 montre un exemple de configuration stockée sur YouTube - une technique similaire à celle de Casbaneiro, bien que beaucoup moins sournoise. Google a rapidement retiré les vidéos suite à la notification d'ESET.
The format is simple – three entries delimited by “:” between the DATA:{ and } markers. Each entry is encrypted separately the same way as other strings in Numando – with the key hardcoded in the binary. This makes it difficult to decrypt the configuration without having the corresponding binary, however Numando does not change its decryption key very often, making decryption possible.
Le format est simple : trois entrées délimitées par des doubles points (« : ») entre les marqueurs DATA:{ and }. Chaque entrée est chiffrée séparément de la même manière que les autres chaînes de Numando - avec la clé codée en dur dans le binaire. Cela rend difficile le déchiffrement de la configuration sans avoir le binaire correspondant, cependant Numando ne change pas sa clé de déchiffrement très souvent, rendant le déchiffrement possible.
Conclusion
Numando est un cheval de Troie bancaire latino-américain écrit en Delphi. Il cible principalement le Brésil avec de rares campagnes au Mexique et en Espagne. Il est similaire aux autres familles décrites dans notre série : il utilise de fausses fenêtres superposées, contient des fonctionnalités de porte dérobée et utilise MSI.
Nous avons couvert ses caractéristiques les plus typiques, ses méthodes de distribution et sa configuration à distance. Il s'agit du seul cheval de Troie bancaire LATAM écrit en Delphi qui utilise un injecteur non Delphi et son format de configuration à distance est unique, ce qui en fait deux facteurs fiables pour identifier cette famille de malwares.
Pour toute question, contactez-nous à l'adresse threatintel@eset.com. Les Indicateurs de compromission peuvent également être trouvés dans notre répertoire GitHub.
Indicateurs de compromission (IoCs)
Hashes
SHA-1 | Description | ESET detection name |
---|---|---|
E69E69FBF438F898729E0D99EF772814F7571728 | MSI downloader for “decoy ZIP” | Win32/TrojanDownloader.Delf.CQR |
4A1C48064167FC4AD5D943A54A34785B3682DA92 | MSI installer | Win32/Spy.Numando.BA |
BB2BBCA6CA318AC0ABBA3CD53D097FA13DB85ED0 | Numando banking trojan | Win32/Spy.Numando.E |
BFDA3EAAB63E23802EA226C6A8A50359FE379E75 | Numando banking trojan | Win32/Spy.Numando.AL |
9A7A192B67895F63F1AFDF5ADF7BA2D195A17D80 | Numando banking trojan | Win32/Spy.Numando.AO |
7789C57DCC3520D714EC7CA03D00FFE92A06001A | DLL with overlay window images | Win32/Spy.Numando.P |
Applications légitimes abusées
Example SHA-1 | EXE name | DLL name |
---|---|---|
A852A99E2982DF75842CCFC274EA3F9C54D22859 | nvsmartmaxapp.exe | nvsmartmax.dll |
F804DB94139B2E1D1D6A3CD27A9E78634540F87C | VBoxTray.exe | mpr.dll |
65684B3D962FB3483766F9E4A9C047C0E27F055E | Dumpsender.exe | Oleacc.dll |
Serveurs C&C
- 138.91.168[.]205:733
- 20.195.196[.]231:733
- 20.197.228[.]40:779
URL de livraison
- https://enjoyds.s3.us-east-2.amazonaws[.]com/H97FJNGD86R.zip
- https://lksluthe.s3.us-east-2.amazonaws[.]com/B876DRFKEED.zip
- https://procjdcals.s3.us-east-2.amazonaws[.]com/HN97YTYDFH.zip
- https://rmber.s3.ap-southeast-2.amazonaws[.]com/B97TDKHJBS.zip
- https://sucessmaker.s3.us-east-2.amazonaws[.]com/JKGHFD9807Y.zip
- https://trbnjust.s3.us-east-2.amazonaws[.]com/B97T908ENLK.zip
- https://webstrage.s3.us-east-2.amazonaws[.]com/G497TG7UDF.zip
Techniques MITRE ATT&CK
Note : Ce tableau a été construit en utilisant la version 9 de MITRE ATT&CK.
Tactic | ID | Name | Description |
---|---|---|---|
Resource Development | T1583.001 | Acquire Infrastructure: Domains | Numando operators register domains to be used as C&C servers. |
T1587.001 | Develop Capabilities: Malware | Numando is likely developed by its operator. | |
Initial Access | T1566 | Phishing: Spearphishing Attachment | Numando is distributed as a malicious email attachment. |
Execution | T1204.002 | User Execution: Malicious File | Numando relies on the victim to execute the distributed MSI file. |
Defense Evasion | T1140 | Deobfuscate/Decode Files or Information | Numando encrypts its payload or hides it inside a BMP image file, and some variants encrypt and hex encode their main payload URLs in a comment in decoy ZIP files. |
T1574.002 | Hijack Execution Flow: DLL Side-Loading | Numando is often executed by DLL side-loading. | |
T1027.002 | Obfuscated Files or Information: Software Packing | Some Numando binaries are packed with VMProtect or Themida. | |
T1218.007 | Signed Binary Proxy Execution: Msiexec | Numando uses the MSI format for execution. | |
Discovery | T1010 | Application Window Discovery | Numando monitors the foreground windows. |
T1082 | System Information Discovery | Numando collects the Windows version and bitness. | |
Collection | T1113 | Screen Capture | Numando can take screenshots. |
Command and Control | T1132.002 | Data Encoding: Non-Standard Encoding | Numando uses custom encryption. |
Exfiltration | T1041 | Exfiltration Over C2 Channel | Numando exfiltrates data via a C&C server. |