XDSpy et le vol de secrets gouvernementaux depuis 2011

Les chercheurs d'ESET découvrent un nouveau groupe APT qui vole des documents sensibles à plusieurs gouvernements d'Europe de l'Est et des Balkans depuis 2011.

Les chercheurs d’ESET découvrent un nouveau groupe APT qui vole des documents sensibles à plusieurs gouvernements d’Europe de l’Est et des Balkans depuis 2011.

Rare sont les groupes APT qui passent largement inaperçus pendant neuf ans, mais c’est le cas de XDSpy, un groupe d’espionnage auparavant sans papiers qui est actif depuis 2011. Il a très peu attiré l’attention du public, à l’exception d’un avis du CERT biélorusse en février 2020. Dans l’intervalle, le groupe a compromis de nombreuses agences gouvernementales et entreprises privées en Europe de l’Est et dans les Balkans.

Ce blog est un résumé, avec des informations mises à jour sur les vecteurs de compromission et les indicateurs de compromission, des recherches que nous avons présentées à la conférence Virus Bulletin 2020 (voir le rapport complet et la présentation).

Cibles

Les cibles du groupe XDSpy sont situées en Europe de l’Est et dans les Balkans et sont principalement des entités gouvernementales, y compris les armées et les ministères des affaires étrangères, et des entreprises privées. La figure 1 montre la localisation des victimes connues selon la télémétrie ESET.

Figure 1. Carte des victimes d’XDSpy selon la télémétrie ESET (Belarus, Moldavie, Russie, Serbie et Ukraine)

Attribution

Après des recherches minutieuses, nous n’avons pas pu relier XDSpy à un groupe APT connu :

  • Nous n’avons observé aucune similitude entre ce code et celui d’autres familles de logiciels malveillants.
  • Nous n’avons pas observé de chevauchement dans l’infrastructure du réseau.
  • À notre connaisse, aucun groupe APT ne cible ces pays et ces secteurs spécifiques.

En outre, le groupe est actif depuis plus de neuf ans. Donc, si un tel chevauchement avait existé, nous pensons qu’il aurait été remarqué, et le groupe découvert, il y a longtemps.

Nous pensons que les développeurs pourraient travailler dans le fuseau horaire UTC+2 ou UTC+3, qui est également le fuseau horaire de la plupart des cibles. Nous avons également remarqué qu’ils ne travaillaient que du lundi au vendredi, ce qui laisse supposer une activité professionnelle.

Vecteurs de compromission

Les opérateurs XDSpy semblent principalement utiliser des courriels de harponnage pour compromettre leurs cibles. En fait, c’est le seul vecteur de compromission que nous ayons observé. Cependant, les courriels ont tendance à varier un peu : certains contiennent une pièce jointe tandis que d’autres contiennent un lien vers un fichier malveillant. La première couche du fichier malveillant ou de la pièce jointe est généralement une archive ZIP ou RAR.

La figure 2 est un exemple d’un courriel d’harponnage XDSpy envoyé en février 2020.

Figure 2. E-mail d’harponnage envoyé par les opérateurs de XDSpy en février 2020

Roughly translated, the body of the email says:

Bon après-midi!

Je vous envoie une copie de la lettre et du matériel photo basé sur les résultats du travail. Cliquez sur le lien pour télécharger : photo materials_11.02.2020.zip

Nous attendons une réponse d’ici la fin de la journée de travail.

Le lien pointe vers une archive ZIP qui contient un fichier LNK, sans aucun document leurre. Lorsque la victime double-clique dessus, le LNK télécharge un script supplémentaire qui installe XDDown, le principal composant du malware.

Après que notre article ait été soumis au Virus Bulletin, nous avons continué à suivre le groupe et, après une pause entre mars et juin 2020, ils sont revenus. Fin juin 2020, les opérateurs ont intensifié leur jeu en utilisant une vulnérabilité dans Internet Explorer, CVE-2020-0968, qui avait été corrigée en avril 2020. Au lieu de livrer une archive avec un fichier LNK, le serveur C&C livrait un fichier RTF qui, une fois ouvert, téléchargeait un fichier HTML exploitant la vulnérabilité susmentionnée.

CVE-2020-0968 fait partie d’un ensemble de vulnérabilités similaires dans le moteur JavaScript d’IE divulguées au cours des deux dernières années. Au moment où il a été exploité par XDSpy, aucune preuve de concept et très peu d’informations sur cette vulnérabilité spécifique étaient disponibles en ligne. Nous pensons que XDSpy a soit acheté cet exploit à un courtier, soit développé lui-même un exploit d’une journée en s’inspirant d’exploits antérieurs.

Il est intéressant de noter que cet exploit présente des similitudes avec les exploits utilisés précédemment dans les campagnes DarkHotel, comme le montre la figure 3. Il est également presque identique à l’exploit utilisé pour l’Opération Domino en septembre 2020, qui a été téléchargé sur VirusTotal depuis le Belarus.

Étant donné que nous ne pensons pas que XDSpy soit lié à DarkHotel et que l’opération Domino semble très différente de XDSpy, il est probable que les trois groupes partagent le même courtier en exploitation.

Figure 3. Certaines parties du code d’exploitation, y compris le début, sont similaires à celles utilisées dans une campagne de DarkHotel décrite par JPCERT

Enfin, le groupe a combien bien d’autres instrumentalisé la pandémie de COVID-19 au moins deux fois en 2020. Il a utilisé ce thème pour la première fois lors d’une campagne de harponnage contre les institutions biélorusses en février 2020. Puis, en septembre 2020, ils ont réutilisé ce thème contre des cibles russophones. L’archive contenait un fichier de script Windows (WSF) malveillant qui télécharge XDDown, comme le montre la figure 4, et ils ont utilisé le site officiel rospotrebnadzor.ru comme leurre, comme le montre la figure 5.

Figure 4. Extrait du script qui télécharge XDDown

Figure 5. Extrait du script qui ouvre le faux URL

Composants du logiciel malveillant

La figure 4 montre l’architecture des logiciels malveillants dans un scénario où la compromission se fait par le biais d’un fichier LNK, comme c’était le cas en février 2020.

Figure 6. Architecture du logiciel malveillant XDSpy. XDLoc et XDPass sont abandonnés sans ordre particulier

XDDown, principal composant du logiciel malveillant, n’est qu’un téléchargeur. Il persiste sur le système en utilisant la clé d’exécution traditionnelle. Il télécharge des plugins supplémentaires à partir du serveur C&C codé en dur en utilisant le protocole HTTP. Les réponses HTTP contiennent des binaires PE cryptés avec une clé XOR à deux octets codée en dur.

Au cours de nos recherches, nous avons découvert les plugins suivants :

  • XDRecon : Recueille des informations de base sur la machine victime (le nom de l’ordinateur, le nom d’utilisateur actuel et le numéro de série du volume du disque principal).
  • XDList : Fouille le lecteur C : à la recherche de fichiers intéressants (.accdb, .doc, .docm, .docx, .mdb, .xls, .xlm, .xlsx, .xlsm, .odt, .ost, .ppt, .pptm, .ppsm, .pptx, .sldm, .pst, .msg, .pdf, .eml, .wab) et exfiltre les chemins de ces fichiers. Il peut également prendre des captures d’écran.
  • XDMonitor : Semblable à XDList. Il surveille également les lecteurs amovibles pour exfiltrer les fichiers correspondant à une extension intéressante.
  • XDUpload : Exfiltre une liste de fichiers codés en dur du système de fichiers vers le serveur C&C, comme le montre la figure 5. Les chemins d’accès ont été envoyés aux serveurs C&C par XDList et XDMonitor.

Figure 7. Boucle de téléchargement d’une liste de fichiers codés en dur vers le serveur C&C (partiellement expurgés)

  • XDLoc : Rassemble les SSID à proximité (tels que les points d’accès Wi-Fi), probablement pour géolocaliser les machines victimes.
  • XDPass : Récupère les mots de passe enregistrés dans diverses applications telles que les navigateurs web et les programmes de courrier électronique.

Vous trouverez plus de détails sur les différents composants des logiciels malveillants dans le white paper.

Conclusion

XDSpy est un groupe de cyberespionnage qui n’a pas été détecté depuis plus de neuf ans et qui a été très actif ces derniers mois. Il s’intéresse surtout au vol de documents d’entités gouvernementales en Europe de l’Est et dans les Balkans. Ce ciblage est assez inhabituel et en fait un groupe intéressant à suivre.

Les compétences techniques du groupe ont tendance à varier un peu. Il utilise la même architecture de base de logiciels malveillants depuis neuf ans, mais il a aussi récemment exploité une vulnérabilité corrigée par le fournisseur mais pour laquelle il n’existe pas de preuve de concept publique, ce qu’on appelle un exploit d’un jour.

Pour toute demande de renseignements, ou pour nous soumettre des échantillons sur le sujet, contactez-nous au: threatintel@eset.com.

Nous remercions tout particulièrement Francis Labelle pour son travail dans le cadre de cette enquête.

Indicateurs de compromission

La liste complète des indicateurs de compromission (IoC) et des échantillons se trouve dans notre répertoire GitHub.

Composants du logiciel malveillant

SHA-1ESET detection nameDescription
C125A05CC87EA45BB5D5D07D62946DAEE1160F73JS/TrojanDropper.Agent.OAZSpearphishing email (2015)
99729AC323FC8A812FA2C8BE9AE82DF0F9B502CALNK/TrojanDownloader.Agent.YJMalicious LNK downloader
63B988D0869C6A099C7A57AAFEA612A90E30C10FWin64/Agent.VBXDDown
BB7A10F816D6FFFECB297D0BAE3BC2C0F2F2FFC6Win32/Agent.ABQBXDDown (oldest known sample)
844A3854F67F4F524992BCD90F8752404DF1DA11Win64/Spy.Agent.CCXDRecon
B333043B47ABE49156195CC66C97B9F488E83442Win64/Spy.Agent.CCXDUpload
83EF84052AD9E7954ECE216A1479ABA9D403C36DWin64/Spy.Agent.CCXDUpload
88410D6EB663FBA2FD2826083A3999C3D3BD07C9Win32/Agent.ABYLXDLoc
CFD43C7A993EC2F203B17A9E6B8B392E9A296243Win32/PSW.Agent.OJSXDPass
3B8445AA70D01DEA553A7B198A767798F52BB68ADOC/Abnormal.VMalicious RTF file that downloads the CVE-2020-0968 exploit
AE34BEDBD39DA813E094E974A9E181A686D66069Win64/Agent.ACGXDDown
5FE5EE492DE157AA745F3DE7AE8AA095E0AFB994VBS/TrojanDropper.Agent.OLJMalicious script (Sep 2020)
B807756E9CD7D131BD42C2F681878C7855063FE2Win64/Agent.AEJXDDown (most recent as of writing)

Noms de fichiers/chemins d’accès

%APPDATA%\Temp.NET\archset.dat
%APPDATA%\Temp.NET\hdir.dat
%APPDATA%\Temp.NET\list.dat
%TEMP%\tmp%YEAR%%MONTH%%DAY%_%TICK_COUNT%.s
%TEMP%\fl637136486220077590.data
wgl.dat
Windows Broker Manager.dat
%TEMP%\Usermode COM Manager.dat
%TEMP%\Usermode COM Manager.exe
%APPDATA%\WINinit\WINlogon.exe
%APPDATA%\msprotectexp\mswinexp.exe
%APPDATA%\msvdemo\msbrowsmc.exe
%APPDATA%\Explorer\msdmcm6.exe
%APPDATA%\Explorer\browsms.exe

Réseau

Utilisés en 2019-2020

downloadsprimary[.]com
filedownload[.]email
file-download[.]org
minisnowhair[.]com
download-365[.]com
365downloading.com
officeupdtcentr[.]com
dropsklad[.]com
getthatupdate[.]com
boborux[.]com
easytosay[.]org
daftsync[.]com
documentsklad[.]com
wildboarcontest[.]com
nomatterwhat[.]info
maiwegwurst[.]com
migration-info[.]com
jerseygameengine[.]com
seatwowave[.]com
cracratutu[.]com
chtcc[.]net
ferrariframework[.]com

Ancienne infrastructure réseau

62.213.213[.]170
93.63.198[.]40
95.215.60[.]53
forgeron[.]tk
jahre999[.]tk
omgtech.000space[.]com
podzim[.]tk
porfavor876[.]tk
replacerc.000space[.]com
settimana987[.]tk

Techniques MITRE ATT&CK

Note : Ce tableau a été réalisé en utilisation la version 7 du cadre MITRE ATT&CK.

TacticIDNameDescription
Initial AccessT1566.001Phishing: Spearphishing AttachmentXDSpy has sent spearphishing emails with a malicious attachment.
T1566.002Phishing: Spearphishing LinkXDSpy has sent spearphishing emails with a link to a malicious archive.
ExecutionT1203Exploitation for Client ExecutionXDSpy has exploited a vulnerability (CVE-2020-0968) in Internet Explorer (triggered by a malicious RTF file).
T1204.001User Execution: Malicious LinkXDSpy has lured targets to download malicious archives containing malicious files such as LNK.
T1204.002User Execution: Malicious FileXDSpy has lured targets to execute malicious files such as LNK or RTF.
PersistenceT1547.001Boot or Logon Autostart Execution: Registry Run Keys / Startup FolderXDDownload persists using the Run key.
DiscoveryT1033System Owner/User DiscoveryXDRecon sends the username to the C&C server.
T1082System Information DiscoveryXDRecon sends the computer name and the main drive Volume Serial Number to the C&C server.
T1083File and Directory DiscoveryXDList and XDMonitor monitor the local system and the removable drive. A list of interesting paths, that matches a list of hardcoded extension, is sent to the C&C server.
CollectionT1005Data from Local SystemXDUpload exfiltrates files from the local drive. The paths of the files to be uploaded are hardcoded in the malware samples.
T1025Data from Removable MediaXDMonitor exfiltrates files from removable drives.
T1113Screen CaptureXDList, XDMonitor and XDUpload take screenshots and send them to the C&C server.
T1119Automated CollectionXDMonitor exfiltrates files from removable drives that match specific extensions.
XDUpload exfiltrates local files that are located at one the paths hardcoded in the malware samples.
Command and ControlT1071.001Application Layer Protocol: Web ProtocolsXDSpy uses HTTP for command and control.
T1573.001Encrypted Channel: Symmetric CryptographyXDDownload downloads additional components encrypted with a 2-byte static XOR key.
ExfiltrationT1020Automated ExfiltrationXDMonitor and XDUpload automatically exfiltrate collected files.
T1041Exfiltration Over C2 ChannelXDSpy exfiltrate stolen data using the C&C channel.

Rejoignez le nombre des lecteurs de WLS qui reçoivent une mise à jour dès la publication de tout nouvel article concernant la Crise en Ukraine.

Infolettre

Discussion