Archives
- 08 May Partie 1 - Introduction
- 07 May Partie 2 - Rappels - chargement et exécution d’un programme en mémoire
- 06 May Partie 3 - Comprendre la vulnérabilité du stack Buffer Overflow
- 05 May Partie 4 - Exploiter un BO - pile exécutable – principes fondamentaux (1/4)
- 04 May Partie 5 - Exploiter un BO - pile exécutable – contrôle de EIP/RIP (2/4)
- 03 May Partie 6 - Exploiter un BO - pile exécutable – construction du shellcode (3/4)
- 02 May Partie 7 - Exploiter un BO - pile exécutable – exploitation complète (4/4)
- 01 May Partie 8 - Exploiter un BO - attaque ret2libc – concepts et prérequis (1/2)
- 30 Apr Partie 9 - Exploiter un BO - attaque ret2libc – mise en œuvre pratique (2/2)
- 29 Apr Partie 10 - Comprendre les mécanismes de protection du BO - les canaris
- 28 Apr Partie 11 - Contourner les canaris - exploitation d’un BO protégé (1/2)
- 27 Apr Partie 12 - Contourner les canaris - exploitation avancée et limites (2/2)
- 26 Apr Partie 13 - 🏆 Challenge - exploiter un binaire avec ret2libc et canaris
- 25 Apr Partie 14 - Comprendre les mécanismes de protection mémoire - RELRO
- 24 Apr Partie 15 - Comprendre les vulnérabilités de type format string – introduction (1/5)
- 23 Apr Partie 16 - Exploiter les format strings - primitives de lecture et écriture mémoire (2/5)
- 22 Apr Partie 17 - Exploiter les format strings - primitives avancées d’écriture mémoire (3/5)
- 21 Apr Partie 18 - Exploiter les format strings - bonus (4/5)
- 20 Apr Partie 19 - 🏆 Challenge - exploitation complète des format strings (5/5)
- 19 Apr Partie 20 - Introduction à l’exploitation par ROP (1/6)
- 18 Apr Partie 21 - Exploiter un binaire par ROP - construction de chaînes de gadgets (2/6)
- 17 Apr Partie 22 - Exploiter un binaire par ROP - techniques avancées et cas particuliers (3/6)
- 16 Apr Partie 23 - Exploiter un binaire par ROP - SROP et JOP (4/6)
- 15 Apr Partie 24 - Exploiter un binaire par ROP - BROP – exploitation en boîte noire (5/6)
- 14 Apr Partie 25 - 🏆 Challenge - exploitation avancée par ROP (6/6)
- 13 Apr Partie 26 - Seccomp - fonctionnement (1/2)
- 12 Apr Partie 27 - Seccomp - exploitation et stratégies de contournement (2/2)
- 11 Apr Partie 28 - Méthodologie - comment identifier et analyser des vulnérabilités
- 10 Apr Partie 29 - Conclusion
- 09 Apr Partie 30 - Annexe - mise en place et résolution des challenges
- 08 Apr Partie 1 - Introduction
- 07 Apr Partie 2 - Théorie de la heap - structures internes et métadonnées
- 06 Apr Partie 3 - Organisation de la heap - les corbeilles
- 05 Apr Partie 4 - Le tcache - fonctionnement et objectifs (1/4)
- 04 Apr Partie 5 - Le tcache - allocations et libérations internes (2/4)
- 03 Apr Partie 6 - Exploiter les vulnérabilités du tcache - primitives et scénarios (3/4)
- 02 Apr Partie 7 - 🏆 Challenge - exploitation du tcache (4/4)
- 01 Apr Partie 8 - Les fastbins - fonctionnement interne (1/4)
- 31 Mar Partie 9 - Les fastbins - mécanismes de protection (2/4)
- 30 Mar Partie 10 - Exploiter les vulnérabilités des fastbins - primitives et scénarios (3/4)
- 29 Mar Partie 11 - 🏆 Challenge - exploitation des fastbins (4/4)
- 28 Mar Partie 12 - Pistes générales d’exploitation dans la heap - concepts clés (1/2)
- 27 Mar Partie 13 - Pistes générales d’exploitation dans la heap - mise en œuvre pratique (2/2)
- 26 Mar Partie 14 - La unsorted bin - rôle et fonctionnement (1/4)
- 25 Mar Partie 15 - La unsorted bin - mécanismes de protection (2/4)
- 24 Mar Partie 16 - Exploiter les vulnérabilités de la unsorted bin - primitives et scénarios (3/4)
- 23 Mar Partie 17 - 🏆 Challenge - exploitation de la unsorted bin (4/4)
- 22 Mar Partie 18 - Les small bins - fonctionnement et exploitation (1/2)
- 21 Mar Partie 19 - Les small bins - mécanismes de protection (2/2)
- 20 Mar Partie 20 - Les large bins - fonctionnement et cas d’usage (1/2)
- 19 Mar Partie 21 - Les large bins - mécanismes de protection (2/2)
- 18 Mar Partie 22 - Synthèse - vue d'ensemble des différents types de corbeilles
- 17 Mar Partie 23 - Annexe n°1 - comment compiler et déboguer un programme avec une version spécifique de la libc
- 16 Mar Partie 24 - Annexe n°2 - gérer plusieurs versions de gdb et principales commandes pour déboguer le tas
- 30 Oct Partie 1 - Introduction
- 29 Oct Partie 2 - Le fonctionnement d'un programme - (1/2)
- 28 Oct Partie 3 - Le fonctionnement d'un programme - (2/2)
- 27 Oct Partie 4 - L'assembleur
- 26 Oct Partie 5 - Analyse statique d'un mini-programme - introduction (1/5)
- 25 Oct Partie 6 - Analyse statique d'un mini-programme - les registres (2/5)
- 24 Oct Partie 7 - Analyse statique d'un mini-programme - la pile (3/5)
- 23 Oct Partie 8 - Analyse statique d'un mini-programme - les affectations de valeurs, la lecture et écriture en mémoire (4/5)
- 22 Oct Partie 9 - Analyse statique d'un mini-programme - fin (5/5)
- 21 Oct Partie 10 - Structures de contrôle - les comparaisons (1/3)
- 20 Oct Partie 11 - Structures de contrôle - les sauts et conditions (2/3)
- 19 Oct Partie 12 - Structures de contrôle - les boucles (3/3)
- 18 Oct Partie 13 - La gestion des variables
- 17 Oct Partie 14 - Le décompilateur - introduction (1/3)
- 16 Oct Partie 15 - Le décompilateur - les principaux raccourcis et fonctionnalités (2/3)
- 15 Oct Partie 16 - Le décompilateur - le challenge (3/3)
- 14 Oct Partie 17 - Les programmes 64 bits
- 13 Oct Partie 18 - Le user land et kernel land
- 12 Oct Partie 19 - L'analyse dynamique - le débogueur (1/4)
- 11 Oct Partie 20 - L'analyse dynamique - débogage d'un programme (2/4)
- 10 Oct Partie 21 - L'analyse dynamique - analyser les registres et la mémoire (3/4)
- 09 Oct Partie 22 - L'analyse dynamique - modifier les registres et la mémoire (4/4)
- 08 Oct Partie 23 - L'analyse dynamique - Le challenge de fin
- 07 Oct Partie 24 - Conclusion
- 06 Oct Partie 25 - Annexes
- 06 Sep Partie 5 - Solutions des exercices
- 05 Sep Partie 4 - En apprendre toujours plus
- 04 Sep Partie 3 - Fonctionnalités de base (bis)
- 03 Sep Partie 2 - Fonctionnalités de base
- 02 Sep Partie 1 - Introduction