Aller au contenu principal
Expert Cybersécurité & IAv9.0
Centres de ressources conformité
Besoin d'un accompagnement expert ?
Devis personnalisé sous 24h — audit, conformité, incident
Checklists Sécurité — Audit & Durcissement
Formats disponibles
📄 PDF 📊 Excel 🌐 Web

11 checklists professionnelles couvrant 2 200+ points de contrôle. Téléchargement gratuit, aucune inscription.

DGA Detection Forensics

forensics

Définition

La détection des DGA (Domain Generation Algorithms) est une technique forensique et de threat hunting permettant d'identifier les malwares qui génèrent algorithmiquement des domaines aléatoires pour contacter leur C2. Les DGA permettent aux malwares de maintenir des communications C2 robustes : même si des domaines C2 sont bloqués, le malware génère d'autres domaines selon l'algorithme, et l'attaquant n'a qu'à enregistrer l'un des domaines valides du jour pour reprendre le contrôle. Le fonctionnement des DGA est relativement simple conceptuellement : à partir d'une graine (seed) — souvent la date courante pour permettre la synchronisation avec le C2 — et d'un algorithme pseudo-aléatoire, le malware génère une liste de domaines candidates (souvent des centaines ou milliers par jour). Ces domaines sont des séquences de caractères pseudo-aléatoires qui peuvent paraître à des noms légitimes mais sont générés algorithmiquement. Le malware essaie chaque domaine jusqu'à en trouver un résolu (enregistré par l'attaquant). Dans les logs DNS forensiques, une activité DGA produit un pattern caractéristique : de nombreuses requêtes DNS NXDOMAIN (domaine inexistant) vers des domaines à forte entropie ou à faible signification sémantique, concentrées dans de courtes fenêtres temporelles. Des exemples de domaines DGA typiques : xkqhsjdnbck.ru, 7f3h9ks2p.net — des séquences sans signification linguistique. Les techniques de détection de DGA incluent l'analyse d'entropie (Shannon entropy élevée pour les domaines DGA vs faible pour les domaines légitimes), les modèles NLP (Natural Language Processing) qui mesurent la 'plausibilité linguistique' d'un domaine, les algorithmes de clustering qui regroupent les domaines similaires (les DGA produisent des clusters caractéristiques), et les bases de données de DGA connus (DGAdetect, Johannes Bader's DGA.PT). Des malwares connus utilisant les DGA incluent Conficker, Cryptolocker, Locky, Zeus/Gameover, et de nombreux RATs. Chaque DGA a ses caractéristiques propres (longueur des domaines, charset utilisé, TLDs préférés, période de renouvellement) qui permettent parfois d'identifier le malware par son algorithme DGA.

Fonctionnement

La détection DGA analyse les requêtes DNS pour identifier les patterns anormaux : rapport NXDOMAIN/requêtes totales élevé, longueur de domaine inhabituelle, entropie lexicale élevée, clustering des domaines par pattern (même TLD, même longueur), et corrélation temporelle (rafale de requêtes NXDOMAIN à intervalles réguliers). Les algorithmes ML (Random Forest, LSTM) atteignent 95%+ de précision sur les DGA connus.

Application DFIR

Investigation DGA : 1) Extraire les requêtes DNS des logs (DNS server logs, PCAP, Zeek dns.log), 2) Filtrer les NXDOMAIN et analyser l'entropie des domaines, 3) Utiliser freq.py (Mark Baggett) ou DGAdetector pour scorer les domaines, 4) Regrouper par IP source pour identifier les machines infectées, 5) Réverser l'algorithme DGA si possible pour identifier le malware. Les DGA non encore activés peuvent être bloqués préventivement avec les seeds connues.

Outils

freq.py (Mark Baggett/SANS, scoring d'entropie), DGAdetect (ML-based), Zeek (dns.log + analyses Zeek Intelligence), Splunk (requêtes statistiques sur DNS logs). Bases de référence : DGA.PT (Johannes Bader), dgaintel.com, Bambenek Consulting DGA feeds. Commercial : Cisco Umbrella, Palo Alto DNS Security (DGA detection intégrée).

Articles liés

Un projet cybersécurité ?

Expert dispo · Réponse 24h

Devis