Affiliés vs Chasseurs : Combattre le DarkSide

[post-views]
janvier 25, 2021 · 12 min de lecture
Affiliés vs Chasseurs : Combattre le DarkSide

Introduction

On août 2020 un nouveau type de logiciel malveillant, appartenant à la catégorie des ransomware , est apparu dans le paysage de la menace cyber. L’acteur de la menace responsable de son développement l’a appelé «DarkSide » et, comme d’autres logiciels de ce type, il est opéré dans des campagnes Big Game Hunting (BGH). À peu près à la même époque, un site de fuite dédié (Dedicated Leak Site) a été mis à disposition sur le darkweb (derrière le réseau TOR ) pour signaler les premières victimes.

Sur leur DLS, les opérateurs de DarkSide ont prétendu avoir de l’expérience dans la conduite d’opérations cyber, ayant auparavant utilisé d’autres variantes de ransomware, non mieux identifiées. En effet, certaines caractéristiques de leurs premières opérations soutiennent l’hypothèse que le groupe pourrait être un ancien affilié d’un autre programme R-a-a-S (Ransomware as a Service) ayant choisi d’écrire leur propre ransomware probablement pour éviter de partager les profits des activités criminelles avec des tiers.

Points de vue

DarkSide est une famille de logiciels malveillants bien écrite qui n’a pas beaucoup changé au fil du temps par rapport aux premières versions analysées en août/septembre 2020. En général, les échantillons appartenant à cette famille présentent certaines caractéristiques visant à rendre l’analyse plus difficile. Par exemple, dans un échantillon récent (sha256: 17139a10fd226d01738fe9323918614aa913b2a50e1a516e95cced93fa151c61), à 0040182A on trouve un sub vise à résoudre dynamiquement les DLLs and API par le biais de LoadLibrary / GetProcAddress. sub_4016D5, sub_4013DA and sub_401AC3 sont également impliqués dans ce processus. La capture d’écran suivante montre un extrait de code extrait de toute la fonction conçue à cet effet :

Cela peut être un endroit utile pour créer une règle basée sur le code basée sur le code visant potentiellement à chasser d’autres variantes de la même famille de logiciels malveillants. Après avoir sélectionné plusieurs morceaux représentatifs, nous pouvons obtenir quelque chose de similaire à ce qui suit :

rule DarkSide_Ransomware_827333_39928 : CRIMEWARE {
meta:
author = « Emanuele De Lucia »
description = « Détecte les variantes possibles du ransomware DarkSide »
hash1 = « 17139a10fd226d01738fe9323918614aa913b2a50e1a516e95cced93fa151c61 »
/*
call 0x4016d5
push esi
call 0x408195
mov ebx, eax
push dword ptr [esi – 4]
push esi
call 0x4013da
mov eax, dword ptr [esi – 4]
lea esi, [esi + eax]
mov ecx, 0x23
*/
strings:
$ = { E8 [4] 56 E8 [4] 8B D8 FF 76 ?? 56 E8 [4] 8B 46 ?? 8D 34 06 B9 ?? ?? ?? ?? }
condition:
any of them
}


Darkside
utiliseégalement des techniques d’escalade des privilèges et de contournement UAC (User Access Control). La technique observée dans ce cas est connue sous le nom de CMSTPLUA UAC Bypass et exploite la fonction ShellExec via l’interface CMSTPLUA COM {3E5FC7F9-9A51-4367-9063-A120244FBEC7}. Cela permet de démarrer un processus avec des permissions élevées, selon le graphique suivant : {3E5FC7F9-9A51-4367-9063-A120244FBEC7}. This allow to start a process with elevated permissions, according to the following graph:

Powershell est utilisé pour supprimer les copies de l’ombre empêchant la récupération des fichiers sauvegardés précédemment par eux, selon la syntaxe suivante :

powershell -ep bypass -c
« (0..61)|%{$s+=[char][byte](‘0x’+’4765742D576D694F626A6563742057696E33325F536861646F77
636F7079207C20466F72456163682D4F626A656374207B245F2E44656C65746528293B7D20′
.Substring(2*$_,2))};iex $s »
Décodé :
Get-WmiObject Win32_Shadowcopy | ForEach-Object {$_.Delete();}


Une règle Sigma rapide peut être utilisée pour chasser des comportements similaires côté systèmes. title:

title: Détecte une infection DarkSide possible via la ligne de commande PowerShell utilisée pour supprimer les copies de l’ombre
status: stable
description: Détecte une infection DarkSide possible via la ligne de commande PowerShell utilisée pour supprimer les copies de l’ombre
author: Emanuele De Lucia
references:
– recherche interne
tags:
– attack.t1086
– attack.t1064
date: 2020/12/01
logsource:
categorie: process_creation
produit: windows
detection:
selection:
Image|endswith:
– ‘powershell.exe’
CommandLine|contains|all:
– ‘(0..61)|%%{$s+=[char][byte]’
– ‘4765742D576D694F626A6563742057696E33325F536861646F77636F7079207C

20466F72456163682D4F626A656374207B245F2E44656C65746528293B7D20′
condition: selection
level: high

Avant d’exécuter la charge utile principale, l’échantillon effectue plusieurs autres activités comme la collecte d’informations (par ex. obtenir les informations sur les disques)

et une comparaison des services système avec une liste prédéfinie pour arrêter ceux qui pourraient affecter le processus de chiffrement des fichiers

Voici les services que le logiciel malveillant recherche dans l’échantillon analysé :

sql
oracle
ocssd
dbsnmp
synctime
agntsvc
isqlplussvc
xfssvccon
mydesktopservice
ocautoupds
encsvc
firefox
tbirdconfig
mydesktopqos
ocomm
dbeng50
sqbcoreservice
excel
infopath
msaccess
mspub
onenote
outlook
powerpnt
steam
thebat
thunderbird
visio
winword
wordpad
notepad

Ces domaines peuvent également être pris en compte pour extraire des morceaux de code mal connus : règle DarkSide_Ransomware_827333_39929 : CRIMEWARE {

push dword ptr [ebp – 4]
meta:
author = « Emanuele De Lucia »
description = « Détecte les variantes possibles du ransomware DarkSide »
call dword ptr [0xcf0e66]
/*
mov dword ptr [ebp – 8], eax
cmp dword ptr [ebp – 8], 0
je 0xce4d83
push 0x1c
lea eax, [ebp – 0x30]
push eax
call 0xce13da
push 1
push dword ptr [ebp – 8]
call dword ptr [0xcf0e6a]
call dword ptr [0xcf0e6e]
push dword ptr [ebp – 8]
call dword ptr [0xcf0e6a]
$ = {68 [4] FF 37 FF 75 ?? FF 15 [4] 89 45 ?? 83 7D [2] 74 ?? 6A ?? 8D 45 ?? 50 E8 [4] 8D 45 ?? 50 6A ?? FF 75 ?? FF 15 [4] FF 75 ?? FF 15 ?? ?? ?? ??}
Après la phase de chiffrement,
Après la phase de chiffrement,
Après la phase de chiffrement,
Après la phase de chiffrement,
*/
strings:
Après la phase de chiffrement,
condition:
any of them
}

est conçu pour communiquer à son serveur de commande et de contrôle afin de partager les détails relatifs à la victime (victimID) ainsi que d’autres paramètres utiles pour la récupération des fichiers chiffrés et l’identification de l’affilié. Darkside Très probablement, ces capacités réseau ont été ajoutées pour soutenir le modèle R-a-a-S. Dans l’échantillon analysé, le CnC (Commande et Contrôle) est attesté sur le nom de domaine

. Détecter les activités réseau potentiellement liées à cette menace pourrait donc impliquer l’écriture de règles SNORT similaires à ce qui suit : . Détecter les activités réseau potentiellement liées à cette menace pourrait donc impliquer l’écriture de règles SNORT similaires à ce qui suit :alert udp $HOME_NET any -> any 53 (msg: »Requête DNS pour domaine blacklisté ‘securebestapp20.com' »; content: »|0f|securebestapp20|03|com|00| »;nocase; reference:url,https://www.emanueledelucia.net/; sid:[SID HERE]; rev:1;)

Ce nom de domaine a été créé le

et, selon ma visibilité, au moment de l’écriture, il a un historique de et, selon ma visibilité, au moment de l’écriture, il a un historique de (2) enregistrement A associé. Celui intéressant est lié à l’adresse IP two . Il pourrait être intéressant de noter que la valeur de . Il pourrait être intéressant de noter que la valeur depour ce nom de domaine depuis le pour ce nom de domaine depuis le (jour de la première résolution observée vers (jour de la première résolution observée vers ) jusqu’au . Il pourrait être intéressant de noter que la valeur de(jour de la dernière résolution observée vers (jour de la dernière résolution observée vers ) est inférieure à . Il pourrait être intéressant de noter que la valeur deet que la plupart d’entre eux ont eu lieu de début novembre jusqu’à aujourd’hui. Cela suggère une croissance de la propagation et évidemment de 180 l’activité commerciale également. En général, de plus, ce nombre est également cohérent avec le faible volume global des R-a-a-S campagnes observées au moins jusqu’à mi-novembre 2020. Cela est encore confirmé par la DarkSide visibilité mondiale côté charge utile dont je peux disposer pour cette famille de logiciels malveillants.

Les résultats de détection pour la famille de logiciels malveillants DarkSide jusqu’à la fin de l’année montrent une augmentation générale des taux de détection vers décembre 2020.

Bienvenue à Darkside

On 11/10/2020 un utilisateur a posté une annonce intitulée « [Affiliate Program] Darkside Ransomware » sur un forum de langue russe sur le darkweb. Le texte contenu dans ce post a officiellement lancé le programme d’affiliation du projet. Des articles de presse ont été utilisés pour faire la publicité du programme lui-même ainsi que des compétences du groupe qui sont « visent uniquement les grandes entreprises » comme l’a initialement publié l’acteur de menace lui-même :

Dans le programme d’affiliation ne sont pas bienvenus, entre autres, les personnalités anglophones, les employés des services secrets, les chercheurs en sécurité, les gourmands (du moins, c’est ce que je semble comprendre), etc. etc.

Il y a, de plus, certaines règles à respecter, comme éviter de cibler des entités dans les pays appartenant à la CIS (Содружество Независимых Государств), y compris la Géorgie et l’Ukraine, ou ceux opérant dans l’éducation, la médecine, le secteur public et à but non lucratif.

Comme vous pouvez l’imaginer pour tout autre emploi, il y a une sélection à passer pour être inclus dans le programme. Cela inclut un entretien pour vérifier les compétences et les expériences du candidat, comme avoir été affilié à un autre programme précédemment. Le groupe propose une version Windows and version Linux de ransomware DarkSide plus un panneau d’administration, un site de fuite, et un système CDN pour le stockage de données.

Alors, avez-vous ESXi?

À la fin de novembre 2020, une version Linux variante de DarkSide ransomware a été téléchargée vers un dépôt de logiciels malveillants en ligne bien connu. Il avait un taux de détection, au moment du téléchargement, pratiquement inexistant. Même au moment de l’écriture ( janvier 2021) le taux de détection est très bas (). Il semble avoir un objectif assez différent par rapport à la contrepartie Windows. Alors que ce dernier est né pour chiffrer tous les fichiers utilisateur sur une station de travail (documents, images, PDF et ainsi de suite…), la version Linux a été créée pour endommager les machines virtuelles sur les serveurs. En effet, l’échantillon recherche des extensions liées aux fichiers). Il semble avoir un objectif assez différent par rapport à la contrepartie Windows. Alors que ce dernier est né pour chiffrer tous les fichiers utilisateur sur une station de travail (documents, images, PDF et ainsi de suite…), la version Linux a été créée pour endommager les machines virtuelles sur les serveurs. En effet, l’échantillon recherche des extensions liées aux fichierscomme comme .vmem et les formats de journaux génériques., et les formats de journaux génériques., et les formats de journaux génériques. La note de rançon est similaire à celle de Windows

et la sortie de l’exécutable, une fois lancé, confirme le focus sur les environnements

vmfs/volumes/ rule DarkSide_Ransomware_827333_39930 : CRIMEWARE { est l’emplacement par défaut des machines virtuelles. Une règle Yara stricte similaire à ce qui suit peut aider à identifier les variantes Linux de DarkSide :

as /rule DarkSide_Ransomware_827333_39930 : CRIMEWARE { is the default location of rule DarkSide_Ransomware_827333_39930 : CRIMEWARE { virtual machines. A strict Yara rule similar to the following can help in identifying Linux variants of DarkSide:

rule DarkSide_Ransomware_827333_39930 : CRIMEWARE {
meta:
author = « Emanuele De Lucia »
description = « Détecte des variantes possibles des variantes de ransomware Linux DarkSide »
hash1 = « da3bb9669fb983ad8d2ffc01aab9d56198bd9cedf2cc4387f19f4604a070a9b5 »
strings:
$ = « vmdk,vmem,vswp,log » fullword ascii
$ = « XChaCha20 » fullword ascii
$ = « Outil de chiffrement partiel de fichiers » fullword ascii
$ = « main.log » fullword ascii
condition:
(uint16(0) == 0x457f and all of them)
}

Pour la version Linux également, les communications vers l’extérieur se font via le même nom de domaine précédemment signalé et une URL spécialement conçue pour chaque victime. Grâce à Sigma, il est possible d’écrire des règles visant à détecter les requêtes de résolution DNS vers un nom de domaine où le commandement et le contrôle sont effectivement attestés :

title: Détecte les requêtes de résolution vers le nom de domaine Command and Control de DarkSide
status: stable
description: Détecte les requêtes de résolution vers le nom de domaine Command and Control de DarkSide
references:
– https://www.emanueledelucia.net/fighting-the-darkside-ransomware/
author: Emanuele De Lucia
date: 2020/12/01
tags:
– attack.t1071.001
logsource:
category: dns
detection:
selection:
query:
– ‘securebestapp20.com’
condition: selection
falsepositives:
– recherche interne
level: high

Profil de l’adversaire

Depuis mi-novembre 2020, suite au programme d’affiliation, il est actuellement plus difficile d’associer l’utilisation exclusive de DarkSide ransomware à un acteur de menace spécifique.

Cependant, certaines similitudes avec Revil suggèrent que son développeur pourrait être familier avec cette solution jusqu’à spéculer qu’il pourrait s’agir d’un ancien affilié de Revil qui, pour avoir plus de contrôle sur les opérations et ne pas partager les bénéfices, a lancé son propre projet, encore renforcé par un programme d’affiliation indépendant. Quel que soit l’acteur spécifique derrière les opérations, DarkSide peut être livré via plusieurs vecteurs généralement après avoir recueilli des informations sur la cible.

Selon ma vision, au moins un acteur de menace qui a utilisé DarkSide a adopté la technique de phishing (T1566) afin de livrer un chargement initial dont l’exploitation a finalement permis la distribution des variantes de DarkSide dans l’environnement de la victime. D’autres techniques d’intrusion impliquent l’exploitation de vulnérabilités dans des applications exposées (T1190) afin d’obtenir un premier accès à partir duquel effectuer des mouvements latéraux.

Indicateurs de Compromission

 

Observable

Description

Valeur

sha256

livraison de charge utile

da3bb9669fb983ad8d2ffc01aab9d56198bd9cedf2cc4387f19f4604a070a9b5

sha256

livraison de charge utile

17139a10fd226d01738fe9323918614aa913b2a50e1a516e95cced93fa151c61

domaine

activité réseau

. Détecter les activités réseau potentiellement liées à cette menace pourrait donc impliquer l’écriture de règles SNORT similaires à ce qui suit :

 

Table des Matières

Cet article vous a-t-il été utile ?

Aimez-le et partagez-le avec vos collègues.
Rejoignez la plateforme Detection as Code de SOC Prime pour améliorer la visibilité des menaces les plus pertinentes pour votre entreprise. Pour vous aider à démarrer et générer une valeur immédiate, réservez dès maintenant une réunion avec les experts de SOC Prime.

Articles connexes