L'informatique forensique nécessite de comprendre en détail le fonctionnement des ordinateurs, des périphériques et des logiciels en question. L'objectif est de donner au lecteur les connaissances nécessaires pour se familiariser avec le langage Python (en version 3) en orientant la problématique de manière à se focaliser sur le fonctionnement de ces objets. Ce livre a été écrit avec la volonté d'être...
L'informatique forensique nécessite de comprendre en détail le fonctionnement des ordinateurs, des périphériques et des logiciels en question. L'objectif est de donner au lecteur les connaissances nécessaires pour se familiariser avec le langage Python (en version 3) en orientant la problématique de manière à se focaliser sur le fonctionnement de ces objets. Ce livre a été écrit avec la volonté d'être accessible au plus grand nombre et la conviction qu'une « démocratisation » de la compréhension de l'outil informatique est désormais essentielle.
Ce livre propose une approche en deux temps : il commence par une introduction au langage Python puis présente comment l'utiliser pour récupérer et manipuler les données produites par nos ordinateurs. Les auteurs traitent ainsi de thématiques variées allant de l'inspection de la mémoire vive des processus, au fonctionnement interne de logiciels grand public ou à l'extraction de l'historique de navigateur web. Différents outils sont étudiés : des plus basiques avec la bibliothèque libmagic, aux technologies les plus récentes comme l'apprentissage automatique avec scikit-learn et son écosystème issu du calcul scientifique.
Des éléments complémentaires sont en téléchargement sur le site www.editions-eni.fr.
Les chapitres du livre :
Avant-propos – Introduction : Python et l'informatique forensique – Premiers pas en Python – Bibliothèque standard – Premiers pas dans l'analyse d'un fichier – Analyser un historique de navigation web – Partitionnement automatique de données – Extraire les sujets d'un ensemble de textes – Inspection des processus du noyau Linux
a. Généralités sur l’organisationde la mémoire pour un processus
b. Les maps mémoire
c. L’interface d’accès à lamémoire de python-ptrace
d. Hyperliens
Exemple d'utilisation
1. Extraire le texte
a. Objectif du programme
b. La fonction d’extraction des chaînesde caractères
c. Récupérer les maps à partird’un PID
d. Initialisation et appel
2. Tricher à un jeu vidéo
a. Présentation de l’approche
b. La classe MemState
c. Un script et une interface pour MemState
d. Exemple d’utilisation
e. Hyperliens
Mehdi BENNIS
Mehdi Bennis est fasciné par les nouvelles technologies depuis son plus jeune âge. Il a commencé par s'intéresser à l'électronique et l'électricité en bricolant des objets par lui-même pour ensuite se focaliser sur les ordinateurs. À 19 ans, il obtient un DUT en réseaux et télécommunication à l'IUT de Colmar. Pour compléter ses compétences réseau, il intègre ensuite l'Université de Technologie de Belfort-Montbéliard (UTBM) en alternance au sein de l'entreprise Bull S.A.S avec laquelle il découvre le langage de programmation Python. Actuellement ingénieur de développement dans la division « Big Data and Security » dans cette même entreprise, il suit de très près les différentes évolutions technologiques.
Autodidacte et engagé dans le logiciel libre, Yann Weber s'intéresse à la programmation dès son plus jeune âge et reste guidé depuis par une interrogation : pourquoi et comment les ordinateurs fonctionnent ? Cette interrogation le pousse à s'intéresser tout autant aux problématiques bas niveau, de l'écriture de compilateurs au fonctionnement d'un système d'exploitation, à celles de plus haut niveau, comme le traitement de textes structurés ou le « web ». L'obtention d'un DUT en informatique est un premier pas pour lui vers l'utilisation de ses compétences dans un cadre professionnel. Après un poste d'ingénieur au sein du pôle Recherche et Développement de SFR puis au sein de la recherche publique française (CNRS), Yann Weber est aujourd'hui développeur freelance et continue à être fasciné par son outil de travail.