Maison >Opération et maintenance >Sécurité >Comment mettre en œuvre l'analyse du rapport d'arme divulgué par APT34

Comment mettre en œuvre l'analyse du rapport d'arme divulgué par APT34

WBOY
WBOYavant
2023-05-29 12:42:341558parcourir

APT34 est une organisation APT iranienne depuis 2014, elle continue de lancer des attaques APT au Moyen-Orient et en Asie. Les secteurs impliqués comprennent principalement le gouvernement, la finance, l'énergie, les télécommunications, etc. L'arsenal d'armes d'attaque est constamment amélioré et des méthodes d'attaque sont constamment introduites. Cependant, les attaquants n'arrêteront pas leurs attaques simplement parce qu'ils sont exposés.

APT34 Historique de l'organisation

Le 17 avril, des médias étrangers ont rapporté qu'un utilisateur nommé "Lab Dookhtegan" avait été exposé sur Telegram. La boîte à outils d'attaque de l'organisation APT34 a été découverte et certaines données des victimes APT34 ont également été exposées. Cet incident, comme les précédentes fuites de code source, a été extrêmement explosif. L'organisation APT34 a continué de lancer de multiples attaques contre certains pays du Moyen-Orient et d'Asie depuis au moins 2014, ciblant le gouvernement, la finance, l'énergie, les télécommunications et d'autres secteurs. Les cibles de l'organisation sont généralement des pays opposés à l'Iran, c'est pourquoi certains pensent que l'organisation est un département de sécurité iranien ou une société de sécurité qui coopère à long terme avec le gouvernement iranien. L'organisation sait utiliser les médias sociaux, créer des comptes Internet avec diverses identités et approcher les cibles d'attaque grâce à des techniques d'ingénierie sociale. Dans le même temps, l'arsenal d'attaque de l'organisation s'améliore constamment et ses méthodes d'attaque deviennent de plus en plus sophistiquées. Elles intègrent des méthodes d'attaque telles que le spear phishing avec de nouvelles technologies d'attaque pour élargir continuellement la portée de pénétration des cibles existantes.

Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34

Membres exposés de l'organisation APT34

Selon la liste Webshell divulguée, il est évident que l'organisation a récemment porté une campagne à grande échelle contre la Chine. Ce tableau répertorie plus de 10 sites Web étiquetés « Chine » qui ont été compromis, ce qui peut être utilisé comme preuve pour étayer l'argument en faveur d'attaques nationales.

Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34

Lab Dookhtegan a prétendu un jour exposer les informations personnelles d'un membre de l'organisation tous les quelques jours, mais maintenant les comptes sur Telegram et Twitter ont été bloqués.

Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34

Leakage Tool Introduction

Cette fuite de code source contient un grand nombre d'armes d'attaque importantes couramment utilisées par l'organisation APT34, tels que : Webshells_and_Panel, pose frog, Webmask, Glimpse. Dongxun Technology 2046Lab a utilisé le « Système avancé d'avertissement des menaces persistantes Iron Dome » pour détecter les menaces sur ces armes d'attaque et mener une analyse approfondie au niveau technique.

Résultat de détection

1 Avertissement Webshell : [Risque élevé]

Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34 #🎜🎜 #

2. Avertissement de détection de fichier sandbox : [Risque élevé]

Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34

3. Le DNS a été trouvé. Tunnel caché # # 🎜🎜#Le répertoire Webshells_and_Panel contient principalement une variété d'outils Webshell écrits en C#. Le répertoire Webshell contient deux dossiers principaux, à savoir HighShell et HyperShell.

Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34 1.1 HighShell Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34

Il n'y a que HighShell.aspx dans le répertoire HighShell, qui est un WebShell pour les serveurs Windows. L'interface par défaut après ouverture est la suivante :


Comme le montre l'image ci-dessus, cette version est la version 5.0, qui a l'authentification, le téléchargement de fichiers , exécution de commandes, opérations de base de données et de nombreuses autres fonctions.

Pour utiliser ce Webshell, vous devez saisir le mot de passe de connexion (Th!sN0tF0rFAN) dans la zone de saisie rouge après l'étiquette "Connexion", puis cliquer sur le bouton "Faire le". La case devient verte, vous pouvez passer le Webshell Effectuer les opérations associées sur le serveur. L'image suivante montre le schéma opérationnel permettant d'exécuter la commande "command" et d'obtenir des informations sur le serveur : 🎜🎜#

HyperShell est un projet contenant plusieurs fichiers de code source, y compris plusieurs fichiers de code source WebShell. Voici plusieurs fonctions Webshell qui peuvent être utilisées.

simple.aspx

Un webshell simple qui inclut des fonctions d'authentification, d'exécution de commandes et de téléchargement de fichiers est simple.aspx. Comme le montre la photo après ouverture : Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34

Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34Entrez le mot de passe de connexion (MkRg5dm8MOk) dans la zone de saisie du mot de passe et cliquez sur le bouton "Connexion" pour contrôler le serveur et télécharger des fichiers. La connexion par mot de passe est la suivante :

Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34L'image suivante est le schéma de fonctionnement permettant d'exécuter la commande "command" et d'obtenir les informations du serveur :
Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34

simpleDownload.aspx

simpleDownload.aspx n'a qu'une seule fonction de téléchargement. , comme indiqué ci-dessous :

Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34

HighShelllocal.aspx

HighShelllocal.aspx est une version améliorée de HighShell. Le numéro de version est 8.6.2. Les fonctions de cette version sont à peu près les mêmes que celles de la version indépendante 5.0. L'interface et les fonctions ont été optimisées. Le schéma de l'interface est le suivant :

Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34

2.poison frog

2.1 Agent

2.1.1 poisonfrog.ps1

Poisonfrog.ps1 est le seul fichier d'Agent, qui est utilisé pour implanter des programmes de porte dérobée sur des hôtes compromis. Une fois ce fichier exécuté, trois fichiers, dUpdater.ps1, hUpdater.ps1 et UpdateTask.vbs, seront laissés dans le répertoire C:UsersPublicPublic de l'hôte compromis.

Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34La porte dérobée laissée sur l'hôte est le script UpdateTask.vbs, qui s'exécute automatiquement via les tâches planifiées toutes les 10 minutes. Il exécute deux scripts : dUpdater.ps1 et hUpdater.ps1.

Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34

2.1.2 dUpdater.ps1

Ce script est un script de contrôle à distance Il générera un nom de domaine DNS et se connectera au serveur de contrôle, en recevra des commandes à distance et enverra et recevra des fichiers. L'algorithme DGA.Changer est utilisé lors de la génération des noms de domaine DNS pour calculer dynamiquement les noms de domaine des serveurs. 2046Lab a restauré cet algorithme DGA.Changer :

Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34

fonction de réception :

Exécutez la fonction EEA pour obtenir le nom de domaine VVA, et le Les paramètres JJA sont définis sur r ;

Essayez de résoudre le nom de domaine VVA. En cas d'échec, lancez une exception, régénérez un nouveau nom de domaine et essayez de résoudre le nouveau nom de domaine. Répétez l'opération jusqu'à ce que la résolution du nom de domaine soit réussie ; en cas de succès, prenez la première IP résolue avec succès et ajoutez Supprimez chaque segment de l'IP séparément

Si l'IP est 1.2.3.*, définissez NNA sur false, écrivez la valeur de RRA dans le fichier PPA et quittez le fonction principale ;

Si NNA est vrai, modifiez RRA La valeur correspond aux trois premiers segments de l'IP et continue de boucler la fonction principale

Si l'IP est 24.125.*.*, divisez les troisième et quatrième segments ; de l'IP comme nom de sous-dossier de C:UsersPublicPublic$DDAreceivebox (PPA), définissez GGA sur 1, définissez NNA sur true et continuez à boucler la fonction principale

Si l'IP est 11.24.237.110, arrêtez l'analyse et quittez le fonction principale. Cette IP est l’IP qu’OilRig utilisait autrefois.

Fonction d'envoi :

Exécutez Slaber pour vérifier le fichier envoyé, exécutez la fonction EEA pour obtenir le nom de domaine VVA et définissez le paramètre JJA sur s ;

Essayez de résoudre le nom de domaine VVA. En cas d'échec, une exception. sera lancé et un nouveau nom de domaine sera régénéré et tenté d'être résolu. Pour un nouveau nom de domaine, répétez l'opération jusqu'à ce que la résolution du nom de domaine réussisse, prenez la première adresse IP résolue avec succès et supprimez chaque segment de celui-ci. l'IP respectivement ;

Si l'IP est 1.2.3.*, retirez le quatrième segment de l'IP. Obtenez la valeur du segment et bouclez la fonction principale

Si l'IP est 11.24.237.110, arrêtez l'analyse et quittez ; la fonction et supprimez le fichier à envoyer.

Fonction Slaber :

Vérifiez la taille du fichier envoyé Si elle dépasse 600 Ko, une erreur sera signalée. Sinon, exécutez la fonction de résolution.

Fonction de résolution :

Résolvez le fichier envoyé, chaque groupe de 30 caractères.

Fonction du processeur :

Traitez le fichier reçu, MMB est le fichier dans le dossier "sendbox" ;

Si le nom du fichier reçu se termine par "0", écrivez le fichier reçu dans le dossier "sendbox" et utilisez UTF. -8 encodage, puis supprimez le fichier précédemment reçu ;

Si le nom du fichier reçu se termine par "1", si un chemin existe dans le contenu du fichier reçu, le chemin sera utilisé comme chemin d'envoi ; n'existe pas, la chaîne "Le fichier n'existe pas" est écrite dans le fichier MMB, puis le fichier précédemment reçu est supprimé. Déplacez-vous vers le dossier "terminé", écrivez le contenu du fichier dans un fichier MMB, puis supprimez le fichier ; fichier reçu précédemment.

2.1.3 hUpdater.ps1

Résolvez l'adresse IP de "myleftheart.com" et essayez de vous connecter  ;

Si le fichier C:UsersPublicPublicfiles cfg.ini existe, prenez les champs de paramètres correspondants tels que srv, usr, pas, prt et dom. Concaténez les valeurs de srv et prt dans une nouvelle chaîne via ":", définissez la chaîne en tant que serveur proxy à l'aide de http et utilisez les valeurs de usr, pas et dom comme informations d'identification de le serveur proxy ; s'ils n'existent pas, obtenez le serveur proxy par défaut ;

OOA : sélectionnez aléatoirement plusieurs nombres entiers de 0 à 9, sélectionnez aléatoirement le nombre de 1 à 9, et divisez les nombres extraits

DDA : c'est le cas ; le DDA dans le script dUpdater.ps1 ;

PPA : Le cinquième chiffre de DDA est obtenu en insérant OOA

Téléchargez le fichier depuis "http://myleftheart.com/co/$PPA", supposez que le contenu de le fichier téléchargé est QQA et séparez QQA par "" , le tableau est défini sur SSA.

p est le chemin C:UsersPublicPublicfiles$SSA[0].

Si la longueur de SSA[2] est supérieure à 0 et qu'il n'y a pas de chaîne « non » dans SSA[2], téléchargez le fichier depuis http://myleftheart.com/fil/SSA[3] vers C:UsersPublicPublicfiles $SSA[2] , puis écrivez le contenu dans le chemin p ;

Si la longueur de SSA[1] est supérieure à 0 et que la chaîne "not" n'existe pas dans SSA[1], téléchargez le fichier du chemin p à http://myleftheart.com/res /$PPA$SSA[0];

Si la longueur de SSA[4] est supérieure à 0 et qu'il n'y a pas de chaîne « non » dans SSA[4], le fichier dans le chemin de téléchargement, SSA[4]d sera téléchargé sur http://myleftheart. com/res/$PPA$SSA[0] ;

Si la valeur de la dernière donnée dans SSA est "1", la fonction principale sera exécuté en boucle

Si la longueur de SSA[0] est supérieure à 0 et que SSA[1] n'existe pas de chaîne "not", téléchargez le fichier avec le chemin p sur http://myleftheart.com/res /$PPA$SSA[0] et supprimez le fichier avec le chemin p.

2.2 Côté serveur

Le côté serveur est la principale extrémité de contrôle utilisée par APT34 pour gérer l'hôte compromis. Il peut télécharger des fichiers depuis l'hôte compromis et télécharger des fichiers vers l'hôte compromis.

Ce serveur fournit une interface de connexion simple.

Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34

Gérer les utilisateurs et les mots de passe via un fichier de configuration JSON est très simple. Dans les documents divulgués, des noms d’utilisateur (blacktusk) et des mots de passe (fireinthehole) faciles à deviner ont été utilisés.

Le GUID dans l'image ci-dessous (/7345SDFHSALKJDFHNASLFSDA3423423SAD22) est utilisé pour guider le navigateur vers la page de connexion. Ce GUID peut être considéré comme très important.

Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34Les listes d'hôtes pour l'agent HTTP et l'agent DNS sont également disponibles côté serveur. À partir de cette liste, vous pouvez facilement voir quels hôtes sont actuellement contrôlés.

Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34

Chaque agent HTTP et agent DNS ont des pages d'informations détaillées Ici, vous pouvez émettre des commandes C&C vers l'hôte compromis et télécharger ou télécharger des fichiers. L'agent DNS ici peut avoir incorporé certaines fonctions de Glimpse. Glimpse est présenté en détail ci-dessous.

Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34Pour les hôtes compromis, APT34 utilise un script de contrôle à distance BAT par défaut pour obtenir des informations sur l'hôte. Les informations obtenues sont très détaillées, notamment le système, l'utilisateur, le groupe, le domaine, le registre spécifique, les tâches planifiées, le logiciel antivirus, etc. .

Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34

3.Webmask

Cet outil est principalement déployé sur le serveur de l'attaquant pour implémenter un proxy DNS, détourner des noms de domaine DNS spécifiques, pointer le nom de domaine vers le serveur local par défaut et implémenter un proxy HTTP/HTTPS via Squid3+ICAP, volant des informations sensibles telles que le mot de passe du compte de la victime.

Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34

répertoire dns-redir :

dnsd.py : script de transfert de proxy DNS

config.json : fichier de configuration

Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34

dnsd.js : script de proxy DNS de type JS, et dnsd.py Le la fonction est similaire à a.

Les captures d'écran de la fonction de proxy DNS simulé local sont présentées ci-dessous :

Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34

Répertoire icap :

icap.py : doit être utilisé conjointement avec Squid3 pour créer un proxy http/https et enregistrer des données sensibles dans le proxy localement.

Fichier de configuration squid.conf :

Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34

Squid3+ICAP implémente un serveur proxy transparent. Le script icap.py extrait les données sensibles telles que les mots de passe et les enregistre dans un fichier journal local.

Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34

Le fichier de script icap ajoute du code de piratage à la partie réponse_body et charge l'élément d'image spécifié dans le navigateur de la victime.

Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34

4.Glimpse

Glimpse se compose de trois parties : Agent, Panel et Serveur. Il s'agit d'un outil de contrôle à distance DNS. . À en juger par certains codes de Glimpse Server, certaines de ses fonctions peuvent chevaucher celles de Poison Frog, comme la manière d'émettre des commandes.

Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34 Dans l'ensemble, Glimpse est très similaire à la grenouille empoisonnée présentée ci-dessus. Les informations divulguées nous expliquent également comment utiliser Glimpse.

Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34

4.1 Agent

De même, l'agent dans Glimpse est en cours d'exécution La fonction principale du programme de porte dérobée sur l'hôte compromis est d'accepter des commandes, de télécharger et de télécharger des fichiers.

L'agent utilise le répertoire C:UsersPublicLibraries sur l'hôte comme répertoire de travail. L'envoi et la réception de fichiers seront effectués dans des sous-répertoires de ce répertoire.

Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34L'agent peut fonctionner selon deux modes, l'un est le mode ping et l'autre le mode texte.

Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34

Le mode ping est principalement utilisé pour échanger des informations sur l'hôte. Le mode texte s'apparente au mode protocole interne entre l'Agent et le Serveur, qui permet l'acceptation d'instructions internes.

4.2 Panneau

Le panneau est utilisé pour afficher l'état du contrôle principal. Vous pouvez voir combien d'hôtes compromis sont sous contrôle. en même temps, vous pouvez envoyer des messages à L'hôte compromis envoie la commande.

Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34

Vous pouvez voir que la commande a été envoyée à l'hôte compromis via le panneau et que le résultat de retour a été obtenu.

4.3 Serveur

Le serveur est l'extrémité de contrôle principale. Il communique via le protocole de tunnel DNS et peut répondre au message en mode ping ou au TXT. mode envoyé par la commande Agent, et envoie également des commandes à l'Agent en mode TXT. À en juger par le style de codage, Glimpse et Poison Frog devraient être créés par la même équipe.

Comment mettre en œuvre lanalyse du rapport darme divulgué par APT34

Le côté serveur prend en charge davantage de commandes de protocole en mode TXT. Nous pouvons vérifier brièvement la signification de ces commandes. # 🎜🎜 #

if (action == 'M') { // in this place we check the request for type of connection ping or text type if (action == 'W') { // in this place we check the request type if its text we response it else if (action == 'D') { else if (action == '0') { // ctrl[0] => action, if 0 = is there any file else if (action == '1') { // ctrl[0] => action, if 1 = sending the file else if (action == '2') {// ctrl[0] => action, if 2 = receiveing the file
# 🎜🎜 # iocs # 🎜🎜 ## 🎜🎜 # md5: # 🎜🎜 #
cd0bbff03ce7946cd7c9dc339726d90a9d3d8fe14927172ca5546bdb95d947625e17061bf2dce87d402ddd8531abb49f
# 🎜🎜 # Nom du domaine: # 🎜🎜 #
myleftheart.com
# 🎜🎜 # ip: # 🎜🎜 #
11.24.237.110
# 🎜 🎜 🎜 #mesuresdeprotection

1. N'ouvrez pas facilement les fichiers suspects, tels que les e-mails, les liens suspects, les documents suspects, etc.

2. Installez les correctifs système à temps et utilisez la dernière version du logiciel.

3. Installez un logiciel antivirus et mettez à jour les bases de données virales en temps opportun.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer