Expliqué: Algorithme de Génération de Domaine

     Pieter Arntz Pieter Arntz
    Il y a 4 ans

Un algorithme de génération de domaine (DGA) est un programme ou un sous-programme qui fournit aux logiciels malveillants de nouveaux domaines à la demande ou à la volée.

Historique

Kraken a été la première famille de logiciels malveillants à utiliser une DGA (en 2008) que nous avons pu trouver. Plus tard cette année-là, Conficker a rendu la DGA beaucoup plus célèbre.

À quoi ça sert ?

La technique DGA est utilisée car les logiciels malveillants qui dépendent d’un domaine fixe ou d’une adresse IP sont rapidement bloqués, ce qui entrave ensuite les opérations. Ainsi, plutôt que de sortir une nouvelle version du logiciel malveillant ou de tout configurer à nouveau sur un nouveau serveur, le logiciel malveillant passe à un nouveau domaine à intervalles réguliers.

Un exemple de DGA en pratique est les serveurs C & C pour les botnets et les ransomwares. Si nous pouvions les bloquer ou les abattre, nous couperions le lien entre les victimes et l’acteur de la menace. Les robots ne seraient plus en mesure de récupérer de nouvelles instructions et les machines infectées par un ransomware seraient incapables de demander des clés de cryptage et d’envoyer des données utilisateur.

Le changement constant du domaine pour le serveur C & C est aussi parfois appelé « Flux de domaine » ou « Flux rapide », ce qui est en fait une référence à une technique plus ancienne basée sur l’abus du système d’équilibrage de charge DNS.

Plus de détails sur son fonctionnement

Pour mieux comprendre le fonctionnement de ces algorithmes, examinons les exigences qu’ils doivent remplir:

  • Les routines doivent générer des domaines prévisibles des deux côtés de la chaîne de communication.
  • Les routines doivent être aussi imprévisibles que possible pour les chercheurs en sécurité.
  • Les frais d’enregistrement de domaine doivent être faibles, compte tenu des énormes quantités de domaines qui seront utilisés.
  • Le besoin de vitesse peut être énorme.
  • Le processus d’inscription doit être anonyme ou au moins introuvable.

Pour atteindre la prévisibilité, tout en restant difficiles à rechercher, les routines de la DGA utilisent quelques blocs de construction:

  • Seed, l’élément de base
  • Un élément qui change avec le temps
  • Domaines de premier niveau (TLDs)

 imagedga

Image reproduite avec l’aimable autorisation du blog Cisco

La graine peut être une phrase ou un nombre. Pratiquement tout ce que l’acteur de la menace peut changer à volonté (par exemple lorsqu’il passe à une nouvelle version), et qui peut être utilisé dans un algorithme. La graine et l’élément temporel sont combinés dans un algorithme pour créer le nom de domaine et ce « corps » sera combiné avec l’un des TLD disponibles.

Notez qu’un élément basé sur l’heure n’a pas besoin d’être quelque chose comme la date et l’heure. Cela peut être autre chose qui varie avec le temps, comme par exemple le sujet tendance sur Twitter dans un certain pays au moment de la connexion. En fait, quelque chose qui est difficile à prévoir est préféré, car cela rend plus difficile pour les chercheurs d’enregistrer certains domaines à l’avance et d’intercepter le trafic ou de faire une prise de contrôle.

Une autre astuce pour éliminer les contre-mesures consiste à ne pas utiliser tous les domaines produits par l’algorithme, mais seulement certains. Cela augmentera considérablement le nombre de domaines nécessaires à l’enregistrement par les chercheurs s’ils envisagent d’intercepter le trafic.

En ce qui concerne les TLD, .xyz, .haut, et.les offres sont très populaires en ce moment. Cela est dû aux raisons mentionnées précédemment: faibles coûts et disponibilité rapide, car les bureaux d’enregistrement permettent des enregistrements de domaine automatisés et anonymes.

Résumé

Les algorithmes de génération de domaines sont utilisés par les cybercriminels pour empêcher que leurs serveurs ne soient mis sur liste noire ou supprimés. L’algorithme produit des noms de domaine aléatoires. L’idée est que deux machines utilisant le même algorithme contacteront le même domaine à un moment donné, elles pourront donc échanger des informations ou récupérer des instructions.

Liens

Pour plus de détails techniques, nous pouvons vous recommander : Dissection des Algorithmes de Génération de Domaine

Et un exemple : Threat Spotlight : Dyre/Dyreza : Une Analyse pour Découvrir la DGA

Pieter Arntz

You might also like

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.