Forensic numérique : techniques, outils et méthodologie
Introduction à l'investigation numérique légale : analyse mémoire avec Volatility, forensic disque avec Autopsy, analyse réseau avec Wireshark, et chaîne de custody.
Le forensic numérique (ou informatique légale) est la science de la collecte, préservation et analyse de preuves numériques dans un cadre légal. Utilisé lors d'incidents de sécurité, d'enquêtes criminelles ou de procédures judiciaires, il permet de reconstituer ce qui s'est passé sur un système — qui a fait quoi, quand, comment. Ce guide couvre les fondamentaux, les techniques et les outils utilisés par les professionnels.
Principes fondamentaux du forensic
La chaîne de custody (chain of custody)
En forensic, chaque preuve doit être documentée de sa découverte à sa présentation en justice. La chaîne de custody garantit que les preuves n'ont pas été altérées, ce qui est indispensable pour leur recevabilité légale.
- 1Identification — localiser les preuves potentielles (disques, mémoire, logs)
- 2Préservation — créer une copie forensique intègre sans modifier l'original
- 3Collecte — documenter la source, la date, les conditions de collecte
- 4Analyse — examiner les copies forensiques, jamais les originaux
- 5Documentation — noter chaque action effectuée avec timestamp
- 6Présentation — produire un rapport clair et défendable
Principe cardinal : ne jamais travailler sur les données originales. Toute l'analyse se fait sur des copies forensiques vérifiées par hash. Si vous modifiez l'original, les preuves peuvent être déclarées irrecevables.
Ordre de volatilité
Les données numériques ont des durées de vie très différentes. Il faut collecter d'abord ce qui disparaît le plus vite (mémoire vive) avant de passer aux supports persistants.
- 1Registres CPU et cache (ns) — perdus à l'arrêt du processus
- 2Mémoire vive / RAM (ms) — perdue à l'arrêt ou redémarrage
- 3État réseau — connexions actives, ARP, routing table
- 4Processus en cours — liste des processus, handles ouverts
- 5Disque dur / SSD — persistant mais modifié à chaque accès
- 6Logs distants / SIEM — peuvent être collectés plus tard
- 7Sauvegardes — accessibles différé
Ne jamais éteindre brusquement une machine compromise si vous pouvez l'éviter — vous perdrez la RAM et tous les artefacts volatils (malwares uniquement en mémoire, connexions actives, clés de chiffrement). Capturez la RAM d'abord.
Forensic mémoire (RAM)
Capture de la mémoire
La RAM peut contenir des malwares sans fichier (fileless), des clés de chiffrement, des mots de passe en clair, des connexions réseau et des processus cachés.
# Linux — capture RAM avec dd
sudo dd if=/dev/mem of=/mnt/usb/memory.dump bs=1M
# Linux — LiME (Linux Memory Extractor) — recommandé
git clone https://github.com/504ensicsLabs/LiME
cd LiME/src && make
sudo insmod lime.ko "path=/mnt/usb/memory.dump format=lime"
# Windows — WinPmem (open-source, recommandé)
winpmem_mini_x64_rc2.exe memory.raw
# Windows — FTK Imager (GUI, très utilisé en entreprise)
# File → Capture Memory → sélectionner destinationAnalyse mémoire avec Volatility
Volatility est le standard de l'industrie pour l'analyse forensique de la RAM. Il permet d'extraire processus, connexions réseau, registre, artefacts de malware directement depuis un dump mémoire.
# Installation Volatility 3
pip install volatility3
# Identifier le profil OS (Volatility 3 auto-détecte)
vol -f memory.dump windows.info
# Lister les processus
vol -f memory.dump windows.pslist
vol -f memory.dump windows.pstree # arbre de processus
# Détecter les processus cachés (rootkits)
vol -f memory.dump windows.psscan # scan direct des structures EPROCESS
# Connexions réseau actives au moment du dump
vol -f memory.dump windows.netstat
# DLLs chargées par un processus (PID 1234)
vol -f memory.dump windows.dlllist --pid 1234
# Extraire un exécutable depuis la mémoire
vol -f memory.dump windows.dumpfiles --pid 1234
# Rechercher des chaînes suspectes
vol -f memory.dump windows.strings | grep -i "password|http|cmd"
# Détecter les injections de code (process hollowing, DLL injection)
vol -f memory.dump windows.malfindLa commande `windows.malfind` de Volatility est particulièrement utile : elle détecte les régions mémoire avec des droits d'exécution inhabituels, signature courante des malwares injectés.
Forensic disque
Créer une image forensique
Avant toute analyse, créez une copie bit-à-bit du disque avec vérification d'intégrité. FTK Imager est la référence pour les environnements Windows, `dc3dd` pour Linux.
# Linux — dd avec hash de vérification
sudo dd if=/dev/sdb of=/mnt/forensic/disk.img bs=512 conv=noerror,sync status=progress
md5sum /dev/sdb > /mnt/forensic/disk.img.md5
sha256sum /mnt/forensic/disk.img >> /mnt/forensic/disk.img.md5
# dc3dd — dd amélioré pour le forensic (hashing intégré)
sudo dc3dd if=/dev/sdb of=/mnt/forensic/disk.dd hash=sha256 hof=/mnt/forensic/disk.hash log=/mnt/forensic/log.txt
# Monter l'image en lecture seule pour l'analyse
sudo mount -o ro,loop,noatime /mnt/forensic/disk.img /mnt/analysisAnalyse avec Autopsy
Autopsy est une interface graphique open-source construite sur The Sleuth Kit. C'est l'outil forensic disque le plus utilisé en dehors des solutions commerciales.
- Analyse de partitions et systèmes de fichiers (NTFS, EXT4, FAT32, HFS+)
- Récupération de fichiers supprimés
- Timeline d'activité (création, modification, accès des fichiers)
- Extraction automatique d'artefacts : historique web, emails, téléphones récents
- Hash des fichiers et matching avec bases connues (NSRL)
- Analyse de mots-clés et expressions régulières
- Génération de rapports HTML/CSV exportables
# The Sleuth Kit — outils en ligne de commande
# Lister les partitions d'une image
mmls disk.img
# Lister les fichiers d'une partition (offset en secteurs depuis mmls)
fls -r -o 2048 disk.img
# Afficher un fichier par son inode
icat -o 2048 disk.img 45678
# Récupérer les fichiers supprimés
tsk_recover -e -o 2048 disk.img /mnt/recovered/
# Générer une timeline complète
fls -r -m / -o 2048 disk.img > bodyfile.txt
mactime -b bodyfile.txt -d > timeline.csvArtefacts Windows à investiguer en priorité
Windows laisse des traces dans de nombreux endroits. Voici les artefacts les plus précieux lors d'une investigation.
- Prefetch (%WINDOWS%\Prefetch) — traces d'exécution de programmes (10 derniers accès)
- Event Logs (EVTX) — connexions, créations de compte, exécutions (IDs 4624, 4688, 7045...)
- Registry — persistence (Run/RunOnce), devices connectés (USBSTOR), activité récente (RecentDocs)
- LNK files (%APPDATA%\Microsoft\Windows\Recent) — fichiers récemment ouverts avec chemin complet
- SRUM (System Resource Usage Monitor) — utilisation réseau et CPU par processus sur 30 jours
- Shellbags — dossiers explorés via l'explorateur Windows
- Thumbcache / Thumbs.db — miniatures d'images même si les originaux sont supprimés
- Pagefile.sys / Hiberfil.sys — mémoire virtuelle et hibernation (artefacts mémoire persistants)
# Analyser les Event Logs avec EvtxECmd (Eric Zimmerman Tools)
EvtxECmd.exe -d "C:\Windows\System32\winevt\Logs" --csv output/ --csvf events.csv
# Analyser le Prefetch
PECmd.exe -d "C:\Windows\Prefetch" --csv output/
# Timeline via Plaso (log2timeline)
log2timeline.py --parsers win7,winevtx,prefetch disk.img evidence.plaso
psort.py -o l2tcsv evidence.plaso > timeline.csvForensic réseau
Capture et analyse de trafic avec Wireshark
Wireshark est l'analyseur de protocoles réseau de référence. Il permet d'inspecter chaque paquet, reconstruire des sessions TCP et extraire des fichiers transférés.
# Capturer le trafic sur une interface
tcpdump -i eth0 -w /mnt/forensic/capture.pcap
# Capturer uniquement le trafic d'une IP suspecte
tcpdump -i eth0 host 10.0.0.42 -w suspicious.pcap
# Filtres Wireshark utiles
http.request.method == "POST" # Requêtes POST (exfiltration ?)
dns.qry.name contains "pastebin" # Requêtes DNS suspectes
tcp.flags.syn == 1 && tcp.flags.ack == 0 # Scan SYN
frame contains "password" # Mots de passe en clair
ssl.handshake.type == 1 # Hello TLS (connexions chiffrées)
# Extraire tous les objets HTTP d'un PCAP
File → Export Objects → HTTP → Save All
# tshark — Wireshark en ligne de commande
tshark -r capture.pcap -T fields -e ip.dst -e http.host | sort | uniq -c | sort -rnNetworkMiner : extraction automatique d'artefacts réseau
NetworkMiner analyse un fichier PCAP et extrait automatiquement les fichiers transférés, les identifiants, les images, les certificats et les informations d'hôtes.
Analyse de logs serveur
# Analyser les logs Apache/NGINX pour détecter une intrusion
# IPs les plus actives
awk '{print $1}' /var/log/nginx/access.log | sort | uniq -c | sort -rn | head -20
# Requêtes avec codes 500 (erreurs serveur — injection ?)
grep ' 500 ' /var/log/nginx/access.log
# User agents suspects (scanners, exploit kits)
grep -iE "sqlmap|nikto|nmap|masscan|zgrab|python-requests" /var/log/nginx/access.log
# Timeline des accès à un fichier sensible
grep "wp-admin|phpMyAdmin|.env|passwd" /var/log/nginx/access.log | awk '{print $4,$7,$1}' | sort
# Détecter une exfiltration par taille des réponses
awk '$10 > 1000000' /var/log/nginx/access.log # Réponses > 1 MoForensic de fichiers et récupération
Carving de fichiers avec Foremost et Binwalk
Le file carving permet de récupérer des fichiers supprimés en cherchant leurs signatures magiques (headers/footers) directement dans les secteurs du disque, sans dépendre du système de fichiers.
# Foremost — carving basique par signatures
sudo apt install foremost
foremost -t jpg,pdf,docx,zip -i disk.img -o /mnt/recovered/
# Scalpel — foremost amélioré avec configuration fine
scalpel -c /etc/scalpel/scalpel.conf -o /mnt/recovered/ disk.img
# Binwalk — spécialisé firmware et fichiers imbriqués
binwalk -e firmware.bin # Extraire les fichiers embarqués
binwalk --dd='.*' disk.img # Extraire tous les types détectés
# PhotoRec — récupération de fichiers multimédias (malgré le nom)
photorec disk.imgAnalyse de malwares — premiers pas
# Analyse statique basique
file malware.exe # Identifier le type
strings malware.exe | grep -i "http|cmd|powershell|registry"
md5sum malware.exe # Hash pour recherche sur VirusTotal
# ExifTool — métadonnées de compilation
exiftool malware.exe
# Vérification VirusTotal via API
curl --request GET --url "https://www.virustotal.com/api/v3/files/$(sha256sum malware.exe | cut -d' ' -f1)" --header "x-apikey: VOTRE_API_KEY"
# Analyse dynamique — sandbox en ligne
# https://any.run — sandbox interactive
# https://app.any.run — analyse comportementale
# https://www.hybrid-analysis.com — Falcon Sandbox gratuitPour l'analyse dynamique, soumettez les échantillons à des sandboxes en ligne comme any.run ou Hybrid Analysis avant de les exécuter dans votre propre environnement.
Distributions Linux forensiques
Des distributions Linux spécialisées regroupent tous les outils forensiques pré-installés et configurés.
- Kali Linux — la plus connue, orientée pentest et forensic, +600 outils
- CAINE (Computer Aided INvestigative Environment) — forensic pur, interface graphique
- Tsurugi Linux — forensic et OSINT, très complet et maintenu activement
- SIFT Workstation — distribution SANS Institute, standard en forensic professionnel
- REMnux — spécialisée analyse de malwares
Ressources pour progresser
- SANS FOR508 — formation forensic avancée (référence industrie)
- Volatility Foundation — documentation et plugins pour l'analyse mémoire
- Eric Zimmerman Tools — suite d'outils forensic Windows gratuits (incontournables)
- CyberDefenders — labs forensic et blue team gratuits (équivalent HackTheBox pour la défense)
- BlueTeamLabs Online — challenges forensic, SIEM et incident response
- 13Cubed (YouTube) — tutoriels Volatility et forensic Windows de très haute qualité
Pratiquez sur CyberDefenders : les labs proposent de vrais fichiers PCAP, dumps mémoire et images disque provenant d'incidents réels. C'est le meilleur moyen de progresser en forensic sans monter sa propre infrastructure.
Sources & références
- 1Volatility Foundation — Documentation officielle
Documentation complète de Volatility 3 pour l'analyse forensique de la RAM
- 2The Sleuth Kit & Autopsy — Documentation
Documentation officielle de la suite Autopsy/TSK pour le forensic disque
- 3SANS — Windows Forensic Analysis
Poster de référence SANS sur les artefacts forensiques Windows
- 4Eric Zimmerman Tools — GitHub
Suite d'outils forensic Windows gratuits (EvtxECmd, PECmd, MFTECmd...)
- 5Wireshark — Display Filters Reference
Référence complète des filtres d'affichage Wireshark
- 6RFC 3227 — Guidelines for Evidence Collection and Archiving
Standard IETF sur les bonnes pratiques de collecte de preuves numériques
- 7NIST SP 800-86 — Guide to Integrating Forensic Techniques
Guide NIST sur l'intégration des techniques forensiques dans la réponse à incident
- 8CyberDefenders — Labs forensic gratuits
Plateforme de labs forensic et blue team avec de vrais artefacts d'incidents
Testez vos configurations
Xytherion Tools propose des outils gratuits pour vérifier vos DNS, auditer votre SSL, tester SPF/DKIM/DMARC et bien plus — directement depuis votre navigateur.