Les bases du forensique numérique
Collecter, préserver, analyser et rapporter des preuves numériques avec méthode et rigueur.
🧭 Sommaire
Introduction au forensique
🛡️ Définition
Le forensique numérique est l'ensemble des méthodes visant à préserver, collecter, analyser et présenter des preuves numériques, de façon reproductible et défendable devant une autorité (interne ou judiciaire).
🎯 Objectifs
- Établir une chronologie fiable des événements
- Identifier les vecteurs, actions et impacts
- Produire des IOCs exploitables
- Documenter et communiquer clairement
🌟 À l'issue de cette page
- Vous connaîtrez les artefacts OS clés
- Vous saurez conduire une acquisition
- Vous comprendrez l'analyse mémoire et réseau
🔬 Principe fondamental
Principe d'échange de Locard — « Tout contact laisse une trace » : chaque action génère des artefacts. Le rôle de l'analyste est de les retrouver et de les corréler.
1. Principes et cadre
⚖️ Chaîne de possession
Traçabilité complète de la preuve
🧯 Principe de moindre altération
Préserver avant d'analyser
🧭 Reproductibilité
Notes, versions, scripts
📚 Sources d'artefacts (exemples)
MFT, Registre, Prefetch, EVTX
ext4, /var/log, bash_history
APFS, FSEvents, quarantine
PCAP, Zeek, NetFlow
1.b Cadre légal, éthique et normes
Référentiels
- ISO/IEC 27037: lignes directrices pour l'identification, la collecte et la préservation des preuves numériques.
- ISO/IEC 27041/27042/27043: assurance du processus, méthodes d'investigation et gestion d'incident.
- RFC 3227: ordre de volatilité (RAM → réseau → disque) pour minimiser la perte d'information.
Conformité & éthique
- Respect du principe de finalité et de proportionnalité; périmètre approuvé et tracé.
- Protection des données personnelles (RGPD) et secret des correspondances.
- Accès, scellés et autorisations documentés; séparation des rôles quand c'est possible.
Points non négociables
- Tracer chaque manipulation (qui, quoi, quand, pourquoi, comment).
- Travailler sur copies (images) et conserver l'original intact.
- Calculer et re‑vérifier les empreintes (SHA‑256/SHA‑512) avant et après transfert.
2. Méthodologie d'investigation
🔁 Cycle
- Préparation • Hypothèses • Acquisition (RAM/Disque/Réseau)
- Analyse (artefacts, timeline, corrélations, IOCs)
- Rapport (faits, chronologie, recommandations)
🧩 Timeline
Plaso/log2timeline, TSK, EVTXECmd. Idéale pour reconstituer l'incident minute par minute.
🚫 Pièges
- Timestamps altérés (timestomping)
- Fuseaux, horloges non synchronisées
- Échantillonage incomplet
2.1 Approche orientée hypothèses
- Formuler des hypothèses falsifiables: « L'accès initial s'est fait via phishing ».
- Définir des artefacts de validation/infirmation et le plan de collecte associé.
- Converger vers une narration causale étayée (faits → déductions → conclusions).
2.2 Triage vs examen complet
- Triage: collecte rapide d'artefacts clés (SRUM, EVTX, Prefetch, logs réseau) pour décider.
- Examen complet: image disque + RAM, corrélations approfondies, reproductibilité maximale.
3. Acquisition et intégrité
💽 Disque
- Images RAW/E01, hash SHA‑256, bloqueur en écriture
- Outils: FTK Imager, dd, dc3dd
🧠 Mémoire
- Dump RAM: winpmem, DumpIt, LiME
- Analyse: Volatility/Volatility3
3.1 Types d'acquisition
Systèmes de fichiers accessibles; rapide, non exhaustif.
Bit‑à‑bit (RAW/E01); nécessaire pour récupération et chronologie fine.
RAM, snapshots VM, exports M365/Google, mobiles: contraintes légales élevées.
3.2 Intégrité et traçabilité
- Empreintes cryptographiques: SHA‑256/512 préférés, stockage séparé des hachés et journaux.
- Horodatage en UTC, synchronisation NTP des postes d'acquisition.
- Étiquetage des supports et signature électronique du journal d'opérations.
4. Artefacts Windows (NTFS, Registre, EVTX)
$MFT et journaux
- Entrées, MACB, $LogFile, $UsnJrnl
- Récupération de fichiers supprimés
Registre & Persistance
- Clés Run/RunOnce, Services, Tâches planifiées
- RegRipper, Autoruns
Exécution & usage
- Prefetch, Amcache, LNK, Jump Lists, Shellbags
- EVTX: 4624/4625, 4688, 7045…
Outils
- The Sleuth Kit / Autopsy
- EricZimmerman Tools (EVTXECmd, MFTECmd, AmcacheParser)
Artefacts avancés
- SRUM (SRUDB.dat): usage réseau/processus par période.
- ShimCache/AppCompat, UserAssist, BAM/DAM: exécutions et habitudes.
- WMI, Services, Scheduled Tasks: vecteurs de persistance.
EVTX utiles
- 4688 (création de processus), 7045 (service installé), 4720/4728 (comptes/groupes).
- 4104 (PowerShell), 307 (DNS Client), 6005/6006 (redémarrages).
5. Linux (ext4, logs, shells)
ext4 et inodes
Inodes, superblocs, journaux. Suppression ≠ effacement immédiat des blocs.
Logs & traces
- /var/log: syslog, auth.log, journalctl
- .bash_history, cron, packages (dpkg/yum)
Journaux & traces
- journalctl, /var/log/auth.log, secure, wtmp/btmp/lastlog.
- auditd (execve, chmod, setuid), sudo logs, faillog.
Indices système
- Crons, timers systemd, services non signés.
- Fichiers SUID/GUID, modules noyau chargés, /proc, lsof.
6. macOS (APFS, FSEvents, quarantine)
APFS & snapshots
Instantanés, clones, métadonnées riches pour restaurer et enquêter.
Artefacts clés
- FSEvents, kMDItemWhereFroms (Spotlight)
- Attribut com.apple.quarantine
- LaunchAgents/Daemons pour la persistance
Unified Logs & TCC
- log show --style syslog pour corréler processus/événements.
- Base TCC: autorisations d'accès aux ressources (caméra, micro, fichiers).
Navigateur & Spotlight
- Historique Safari/Chrome, Downloads, cookies de première exécution.
- kMDItemWhereFroms et FSEvents pour retracer l'origine d'un fichier.
7. Analyse mémoire
Volatility (exemples)
Points d'attention
- Profil OS, symboles, capture au plus tôt
- Secrets en RAM (clés, mots de passe)
Axes d'analyse
- Processus anormaux (parentage, chemins temporaires, horodatages incohérents).
- Sections exécutables injectées, DLL non mappées, hooks API.
- Creds & secrets: LSASS (dump protégé), clefs DPAPI, caches navigateur.
Volatility3 (pistes)
8. Forensic réseau
PCAP & Zeek
Wireshark pour le détail paquet; Zeek pour des logs riches (conn, dns, http, files).
Détections
- Beaconing régulier (C2)
- Analyse TLS: SNI, certificats, JA3/JARM
Zeek: logs clés
- conn, dns, http, ssl, files, x509, weird: base pour reconstituer les flux.
- Pivot timeline: uid Zeek → fichiers transférés → certificats → domaines.
Indicateurs réseau
- Beaconing: périodicité stable, faibles volumes, JA3 constant.
- Exfiltration DNS/HTTPS: tailles d'étiquettes, entropie, SNI atypiques.
9. Outils essentiels
Autopsy / TSK
Analyse disque, timeline, fichiers supprimés.
FTK Imager
Acquisition disque/RAM, vérification d'intégrité.
Volatility
Process, réseau, injections en mémoire.
Wireshark
Inspection protocolaire fine, extraction de flux.
Zeek
Enrichissement réseau généralisé, logs structurés.
RegRipper
Extraction accélérée des artefacts registre.
Plaso/log2timeline
Fusionne artefacts en timeline unifiée.
KAPE / CyLR
Triage automatisé d'artefacts Windows/Linux.
Velociraptor
Collecte et DFIR à l'échelle (requiert cadrage juridique).
10. Rapport d'investigation
Structure recommandée
- Résumé exécutif (fait‑clé, impact, étendue, recommandations).
- Contexte et périmètre (cadrage, hypothèses, contraintes).
- Méthodologie & limites (outils/versions, sources, horodatages).
- Constatations détaillées (chronologie, preuves, IOCs).
- Conclusion & actions (containment, éradication, durcissement).
- Annexes: hachés, journaux, exports Zeek, images, scripts.
Bonnes pratiques
- Faits vérifiables séparés des interprétations.
- Captures d'écran sourcées; liens vers annexes numérotées.
- Traçabilité: numéro de preuve, propriétaire, localisation, hash.
📚 Glossaire du forensique
Chaîne de possession — Traçabilité documentée de la preuve (qui/quoi/quand/où/pourquoi) avec empreintes (SHA‑256) à chaque étape.
Image forensique — Copie bit‑à‑bit d’un support (RAW/E01) destinée à l’analyse hors‑ligne, contrôlée par hash.
Hash — Empreinte (ex. SHA‑256) garantissant l’intégrité d’un fichier ou d’une image.
Artefact — Trace laissée par une action (fichier, log, entrée de registre, métadonnée).
Timeline — Reconstruction chronologique d’événements à partir d’artefacts hétérogènes (Plaso/TSK).
$MFT — Table des fichiers NTFS, utile pour reconstituer créations/modifications (MACB).
Prefetch / Amcache — Traces d’exécutions d’applications sous Windows.
EVTX — Journaux d’événements Windows (4624/4625, 4688, 7045…).
IOC — Indicateur de compromission (hash, domaine, clé de registre…).
Timestomping — Altération des horodatages pour tromper l’analyse.
Volatile vs non‑volatile — RAM (processus, clés, connexions) vs disque (fichiers, logs).
Carving — Récupération par signatures de fichiers supprimés (Foremost/Scalpel/PhotoRec).
SRUM — Base d’usage réseau/processus sous Windows (SRUDB.dat).
Quarantine (macOS) — Attribut com.apple.quarantine renseignant sur la provenance d’un fichier.
JA3/JARM — Empreintes TLS pour profiler des clients/serveurs malveillants.
Zeek — Moteur transformant des PCAP en logs structurés par protocole.
10. Anti‑forensic
Techniques
- Effacement sécurisé, chiffrement
- Altération de logs, timestomping
- Rootkits et masquage
Parades
- Snapshots, sauvegardes immuables
- Corrélations multi‑sources
- Captures précoces (RAM/Réseau)
❓ FAQ
Sur hôte actif avec activité suspecte (C2, injection), avant extinction pour préserver secrets/connexions.
RAW: simplicité/interop; E01: compression/métadonnées. Les deux sont valides avec hash et traçabilité.
🔗 Ressources
📚 Pour aller plus loin
- Volatility, Autopsy/TSK, Zeek/Suricata, EricZimmerman
- DFIR: SANS FOR500/508, MITRE ATT&CK
- Standards: ISO 27037/27041/27042/27043
- Volatility: https://volatilityfoundation.org/
- Autopsy/TSK: https://www.sleuthkit.org/
- Zeek: https://zeek.org/
- Eric Zimmerman tools: https://ericzimmerman.github.io/
- DFIR Training: https://www.sans.org/