Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Université de Lille

RIP : Rétro-Ingénierie de Programmes

Université de Lille via France Université Numerique

Overview

Description

La rétro-ingénierie de programme est l’activité qui consiste à comprendre le fonctionnement interne d’un programme sans avoir accès à son code source. Cela est particulièrement utile pour comprendre le fonctionnement d’un logiciel malveillant ou pour vérifier le niveau de sécurité proposé par un logiciel.

Ce cours donne les bases pour comprendre la structure interne d’un exécutable et utiliser les outils professionnels permettant de réaliser des analyses de programmes. Il, s'adresse aussi bien aux étudiants, qu'aux professionnels et à tout passionné de sécurité informatique.

Pour commencer, nous rappelons le processus de compilation ainsi que le format des fichiers exécutables.

Ensuite, nous analysonsle programme sans l’exécuter. C’est ce qu’on appelle une analyse statique. Nous utilisons des outils plébiscités par les professionnels de la cybersécurité.

Enfin, nous présentons la mise en place d’analyse dynamique des programmes pour enrichir les connaissances acquises lors d'analyse statique.

Syllabus

Plan de cours

  • MODULE 1 : Rappels de compilation.
    • Rappels de compilation de programmes écrits en C.
    • Compréhension du contenu d’un exécutable et lecture de directives assembleur.
    • Étude de la structure d’un exécutable Linux (ELF) et de ses différentes sections constitutives (bss, data, text, symtab, ...).
  • MODULE 2 : analyse statique
    • Présentation des outils professionnels de rétro-ingénierie de programmes
    • Navigation dans un code assembleur grâce aux structures d’analyse statique usuelles (CFG, X-ref).
    • Comparaison de la sortie de la décompilation d’un exécutable avec le code C l’ayant généré.
  • MODULE 3 : Analyse dynamique
    • Comparaison des techniques d’analyse statique et dynamique
    • Présentation du fonctionnement d’une analyse en boîte opaque
    • Étude du fonctionnement d’un debugger (signals, sigaction, ptrace) et son utilisation pour la rétro-ingénierie.

Reviews

Start your review of RIP : Rétro-Ingénierie de Programmes

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.