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.
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
Bonnes connaissances système et administration système
Connaissances de langage de programmation
Connaissances en architecture des ordinateurs
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
Le cours est programmé dans ces filières :
- Cursus ingénieur - Filière IR&C - Semestre 7
Code de l'enseignement : 4AMOS430
Langue(s) d'enseignement :
Le cours est rattaché aux structures d'enseignement suivantes :
- Equipe Informatique
Vous pouvez retrouver ce cours dans la liste de tous les cours.
- 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