Forensic


Les bases du computer forensic

DÉFINITION DU FORENSIC

Le forensic, ou criminalistique numérique, est une discipline qui consiste à collecter, analyser et préserver des preuves numériques afin de les utiliser dans des enquêtes judiciaires ou techniques. Cela inclut l'étude des disques durs, systèmes de fichiers, réseaux, et tout autre support numérique.

PRINCIPES FONDAMENTAUX DU FORENSIC

1 - Identification : Processus visant à déterminer l'individualité d'une personne ou d'un objet en reliant des traces ou des preuves à une identité connue. Cela inclut l'analyse des empreintes digitales, des données biométriques, des fichiers numériques, ou des objets physiques pour établir un lien avec une personne ou un événement spécifique.
2- Saisie : Collecte méthodique et sécurisée des preuves numériques ou physiques tout en garantissant leur intégrité. Cela inclut l'utilisation de techniques et outils spécialisés pour capturer les données sans les altérer, comme la création d'images forensiques de disques ou la confiscation de matériel lors d'une perquisition.
3- Analyse : Examen approfondi des données collectées afin d'identifier, interpréter et comprendre les preuves. Cela peut inclure la recherche de métadonnées, l'extraction d'informations cachées, la reconstruction d'événements ou la détection d'activités suspectes dans les journaux système.
4- Rapport : Documentation claire et détaillée des résultats obtenus lors de l'enquête, incluant les méthodes utilisées, les conclusions tirées et les preuves présentées. Le rapport doit être compréhensible pour un public non technique (comme les jurés), tout en respectant les standards légaux et scientifiques. En computer forensic on parle de deux types d'extractions (une extraction est un enregistrement de l'appareil tel qu'il est à un instant donné).

Principe d'extraction d'un support matériel

Ça consiste à copier le disque dur d'un support physique (SSD, disque SATA etc..) ou d'un PC, Mac. L'opération se fait avec un bloqueur d'écriture. Il existe des bloqueurs d'écriture matériel sur lesquelles on branche directement nos disques dur internes grâce à des adaptateurs et des bloqueurs d’écritures logiciel qui se brancheront sur le pc directement et bloquant qui contrôlent et filtrent les commandes d'entrée-sortie envoyées au support de stockage

Il existe deux types d'extractions :

Extraction physique :

C'est une copie bit à bit de l'ensemble d'un apprareil (pc ou mobile)
en format ewf (Expert Witness Format) .E01, .E02, est un format empêchant l'écriture par défaut, read only

Extraction Logique :

Une extraction que d'un ensembles de données visées
en format AFF(Advanced Forensic Format)

OUTILS ET TECHNIQUES UTILISÉS EN FORENSIC

OUTILS DE BASE

OUTILS AVANCÉS

LES SYTÈMES D'EXPLOITATION

Certaines distributions linux contenant des outils dédié aux analyses forensics

TYPES DE PREUVES NUMÉRIQUES

  1. DISQUES DURS INTERNES ET PARTITIONS :

    • Analyse des systèmes de fichiers (FAT32, NTFS, ext4).
    • Recherche de fichiers supprimés ou cachés.
    • Exemple d'outil : testdisk pour récupérer des partitions perdues.
  2. MÉMOIRE VIVE (RAM) :

    • Extraction d'informations volatiles comme les processus en cours ou les clés de chiffrement.
    • Utilisation d'outils comme Volatility.
  3. MÉDIAS AMOVIBLES :

    • Clés USB, cartes SD, disques externes ou internes
    • Vérification des métadonnées et récupération des fichiers supprimés.

COMMANDES UTILES EN FORENSIC

CRÉATION D'IMAGE DISQUE

Autres commandes utilse

PRINCIPAUX ARTEFACTS WINDOWS

1- Base de registre
2- Shell link files (.lnk)
3- JumpLists
4- ThumbCaches
5- Volumes Shadow Copies (VSC/VSS)
6- Corbeille
7- Journaux des événements (EVTX)
8- SRUM (System Resource Usage Monitor)
9- Amcache
10- Prefetch
11- Navigateurs internet

Quelques Exemples de récoltes d'information sur l'extraction d'une image

Les répertoires pertinant à vérifier

C:\Windows\System32\config\ : Ruches système (SAM, SOFTWARE, SECURITY, SYSTEM) C:\Users<UserName>\ : Ruches utilisateur (NTUSER.DAT, USRCLASS.dat) C:\Users<UserName>\AppData\Roaming\Microsoft\Windows\Recent\ : Fichiers .lnk C:\Users<UserName>\AppData\Local\Microsoft\Windows\Explorer\ : ThumbCache C:\Windows\System32\winevt\Logs\ : Journaux d'événements
C:\Windows\System32\sru\SRUDB.dat : SRUM
C:\Windows\AppCompat\Programs\Amcache.hve : Amcache
C:\Windows\Prefetch\ : Fichiers Prefetch
C:\$Recycle.Bin\ : Information sur les fichiers supprimés

RUCHE SOFTWARE

RUCHE SYSTEM

RUCHE SAM

RUCHE NTUSER

AUTRES ARTEFACTS WINDOWS

Les datas des principaux navigateurs d'une image Windows:

L'historique de navigation (certains historiques, et favoris des navigateurs de rechercher peuvent être retrouvés. Les databases sqlite stocké sur l'image peuvent aussi être consultés.)

Sur Forensic explorer en accédant à l'onglet Artefacts sur la partie processus en déroulant on peut afficher les processus liée au navigateur de recherches.

Ils se trouvent tous dans C:\Users<UserName>\AppData

• Microsoft Edge : "/AppData/Local/Microsoft/Edge/User Data/Default/"
• Firefox : "/AppData/Roaming/Mozilla/Firefox/Profiles/"
• Google Chrome : "/AppData/Local/Google/Chrome/User Data/Default/"
• Chromium : "/AppData/Local/Chromium/User Data/Default/
• Brave : "/AppData/Local/BraveSoftware/Brave-Browser/User Data/Default/"
• Opera : "/AppData/Roaming/Opera Software/Opera Stable/"
• Vivaldi : AppData/Local/Vivaldi/User Data/Default/
• 360 Speed : AppData/Local/360chrome/Chrome/User Data/Default/
• QQ: AppData/Local/Tencent/QQBrowser/User Data/Default/
• Yandex : AppData/Local/Yandex/YandexBrowser/User Data/Default/
• CocCoc : AppData/Local/CocCoc/Browser/User Data/Default/

Quelques exemples de données:

Memory forensic (Volatility)

Volatility est un outils permettant d'analyser les dumps de ram.

Installation

Pour l'installer il faut cloner le repo github : git clone https://github.com/volatilityfoundation/volatility3.git

Utilisation

Installer les dépendances :

Vérfier l'installation :

Commandes de base

Attention certaines commandes peuvent changer selon votre version de volatility, ces commandes fonctionnent avec volatility 3, mais peuvent changées entre temps.

Lister les procéssus actifs :

ou selon la version

Extraire un processus suspect :

Lister tous les fichiers présents ou référencés en mémoire :

Extraire un fichier du dump :