Esisar rubrique Formation 2022

Analyse de la sécurité logicielle et matérielle des systèmes d'exploitation - 4AMOS430

  • Volumes horaires

    • CM 15.0
    • Projet -
    • TD -
    • Stage -
    • TP 12.0
    • DS -

    Crédits ECTS

    Crédits ECTS 2.0

Objectif(s)

Ce cours se focalise sur les sécurisations matérielles et logicielles possibles pour les systèmes, et l'étude de vulnérabilités matérielles et logicielles.

Responsable(s)

Quentin GIORGI

Contenu(s)

cours

  • rappels et compléments matériels et logiciels
    • Niveaux de protection
    • MPU,MMU
    • Architecture SMP, NUMA
    • DMA
    • mécanismes d’isolation d’environnement d’exécution
    • espace d'adressage des processsus (librairie partagée, etc.))
    • appels systèmes
    • format d'executable les plus usuels (ELF, PE/COFF, etc..)
  • techniques d'attaques matérielles (DMA attack, USB HID spoofers);
  • techniques d'attaques logicielles (Buffer overflow (heap/stack), return oriented programming, retintolibc, etc..);
  • protection matérielle (trustzone, MPU,CFI,IO-MMU, shadow stack)
  • protection logicielle (W^X, canary, ASLR, seccomp, Selinux, apparmor, ..)
  • Outils de reverse engineering et de forensic (statique/dynamique)


Travaux pratiques

  • Mise en œuvre d'attaques logicielles (buffer overflow) et configuration des protections logicielles
  • Matériel : utilisation des mécansimes de protections matérielles (MPU, Trustzone…)


Mots-clés:
Analyse de malware
Reverse engineering
Buffer overflow
ASLR
Format de binaires (ELF)
ROP
DMA

Prérequis

Bonnes connaissances système et administration système
Connaissances de langage de programmation
Connaissances en architecture des ordinateurs

Contrôle des connaissances

E1: Examen écrit 1h30, document et calculatrice non autorisés
E2: Examen écrit 1h30, document et calculatrice non autorisés
CC: Travaux pratiques et DM

Calendrier

Le cours est programmé dans ces filières :

cf. l'emploi du temps 2022/2023

Informations complémentaires

Code de l'enseignement : 4AMOS430
Langue(s) d'enseignement : FR

Le cours est rattaché aux structures d'enseignement suivantes :

Vous pouvez retrouver ce cours dans la liste de tous les cours.

Bibliographie

  • Linux Kernel Development – Robert Love
  • Tool Interface Standard – ELF specifications
  • Learning Linux Binary Analysis - Ryan O'Neill
  • Maene, P., Gotzfried, J., de Clercq, R., Muller, T., Freiling, F., & Verbauwhede, I. (2017). Hardware-Based Trusted Computing Architectures for Isolation and Attestation. IEEE Transactions on Computers.
  • J. Jang; C. Choi; J. Lee; N. Kwak; S. Lee; Y. Choi; B. Kang, "PrivateZone: Providing a Private Execution Environment using ARM TrustZone," in IEEE Transactions on Dependable and Secure Computing , vol.PP, no.99, pp.1-1 doi: 10.1109/TDSC.2016.2622261