digital forensics framework - ossir · • framework orienté objet • développé en python et...

Post on 29-Jun-2020

4 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

21/09/10 contact@arxsys.fr 1

Digital Forensics

Framework

Os

Ossir – Groupe Paris

09/11/2010

Tables des matières

• Présentation d’ArxSys

• Présentation générale de DFF

• Présentation de l’API de DFF

• Démo

• Questions

21/09/10 contact@arxsys.fr 2

Tables des matières

• Présentation d’ArxSys

• Présentation générale de DFF

• Présentation de l’API de DFF

• Démo

• Questions

21/09/10 contact@arxsys.fr 3

21/09/10 contact@arxsys.fr 4

• Issue d’un projet de fin d’études

• Jeune Entreprise Innovante créée en 2009

• Éditeur de logiciel open-source

d’investigation numérique

Tables des matières

• Présentation d’ArxSys

• Présentation générale de DFF

• Présentation de l’API de DFF

• Démo

• Questions

21/09/10 contact@arxsys.fr 5

Pourquoi ?

• Analyses forensiques :

Problèmes : Incidents, Fraudes, ...

Réponses à apporter: Qui ? Quand ? Quoi ? Ou ? Comment ?

• Besoin d'outils :

Open Source

Multiplateforme

Évolutif / Modulaire

21/09/10 contact@arxsys.fr 6

Pour qui ?

Tous ceux qui font de l’investigation numérique, en particulier :

• Équipes sécurité des entreprises

• Enquêteurs & experts judiciaires

• Consultants en sécurité

• Étudiants

21/09/10 contact@arxsys.fr 7

Comment ?En entrée :

Supports : Disques Durs, Mémoires Flash / RAM

• Copies (Analyses mortes)

• Périphériques (Analyses “live”)

• Chargement d’une sauvegarde

Interfaces :

• Shell

• Graphique

• Interpréteur

21/09/10 contact@arxsys.fr 8

Comment ?Analyse : (Modules)

• Nodes : File System, VM, Volatility, phones, carver, ...

• Metadonnées : File System, embarquées, ...

• Visualiseurs : hexview, images, vidéos, ...

• Graph : timeline, type de fichiers, ...

• Réduction : filtres, hash, dictionnaires, …

Sortie : (Nodes, Favoris)

• Extraction

• Génération de rapports

• Sauvegarde

21/09/10 contact@arxsys.fr 9

Tables des matières

• Présentation d’ArxSys

• Présentation générale de DFF

• Présentation de l’API de DFF

• Démo

• Questions

21/09/10 contact@arxsys.fr 10

Tour d’horizon technologique

• Framework orienté objet

• Développé en Python et C++

• Interconnexion des langages via swig

• Interface Utilisateur Graphique en PyQt

• Chaîne de compilation avec Cmake

21/09/10 contact@arxsys.fr 11

21/09/10 contact@arxsys.fr 12

Architecture

API

Modules

Interfaces

Interpréteur Python

ConsoleGUI

Manager

LoaderModules

Python/cpp

API GUI

Task

ManagerScheduler

ProcessusVFS

Exceptions

MagicArgument Module

21/09/10 contact@arxsys.fr 13

Exécution d’un module

ProcessusProcessus

Post

Processing

Système de fichiers virtuels

• Maintien de l’arborescence générée par les modules de reconstruction

• Instance unique (singleton)

• Empilable

• Intègre un mécanisme d’évènements et de callbacks

21/09/10 contact@arxsys.fr 14

Nodes / VFiles

• Représente une donnée au sein du VFS

• Encapsule les métadonnées

• Fournit le « mapping » d’un fichier

• Propose les interfaces classiques de Nodes dans les VFS

• Parents, fils, nombres de fils, …

• Méthodes d’ajout / suppression

- Node.open() Vfile

- VFile == Objet file de python

- VFile fournit des algorithmes de recherche

21/09/10 contact@arxsys.fr 15

FSO / MFSO [Mapped] File System Object

• FSO

• Classe mère des modules de reconstruction

• Fournit les interfaces d’ I/O avec les modules

• Vopen(), vseek(), vread(), …

• MFSO

• Simplifier le développement pour certains types de modules

• Manipulations des fichiers

• Gestion du cache

• Gestion des allocations / désallocations

• Fournir des interfaces spécifiques pour la visualisation avancée

• Représentation des « mappings » multicouche

21/09/10 contact@arxsys.fr 16

File Mapping

• Principalement utilisé par les modules de types MFSO

• Liste chaînée triee des blocs alloués (chunks)

• Relation blocs / offsets

• Agrégation de plusieurs Nodes

• Gestion de “shadow” blocs

21/09/10 contact@arxsys.fr 17

1) push(0, 512, dump.dd, 12348745)

File Mapping (exemple)

File Mapping (exemple)

21/09/10 contact@arxsys.fr 19

1) push(0, 512, dump.dd, 12348745)

2) push(512, 512, dump.dd, 10240)

21/09/10 contact@arxsys.fr 20

[…]

File Mapping (exemple)

1) push(0, 512, dump.dd, 12348745)

2) push(512, 512, dump.dd, 10240)

21/09/10 contact@arxsys.fr 21

N) push(1310720, 42, dump.dd, 4965478)

File Mapping (exemple)

[…]

1) push(0, 512, dump.dd, 12348745)

2) push(512, 512, dump.dd, 10240)

Résumé

21/09/10 contact@arxsys.fr 22

21/09/10 contact@arxsys.fr 23

Résumé

21/09/10 contact@arxsys.fr 24

Résumé

21/09/10 contact@arxsys.fr 25

Résumé

21/09/10 contact@arxsys.fr 26

Résumé

21/09/10 contact@arxsys.fr 27

Résumé

Tables des matières

• Présentation d’ArxSys

• Présentation générale de DFF

• Présentation de l’API de DFF

• Démo

• Questions

21/09/10 contact@arxsys.fr 28

Questions

Contacts :

Frederic Baguelin : fba@arxsys.fr

Solal Jacob : sja@arxsys.fr

?21/09/10 contact@arxsys.fr 29

top related