Exploiting the Linux Kernel
Instructeur: Andrey Konovalov
Dates: 15 au 18 juin 2026
Lieu: Hilton DoubleTree Montreal
Capacité: 20
Une frénésie d'exploitation du noyau Linux de 4 jours!
Cette formation guide les chercheurs à travers le domaine de l'exploitation du noyau Linux. Dans une série de laboratoires pratiques, la formation explore le processus d'exploitation des bugs du noyau dans une distribution Linux moderne sur l'architecture x86-64.
La formation est structurée comme une série de conférences, chacune suivie d'un ou plusieurs laboratoires pratiques. L'objectif de chaque laboratoire est d'écrire un exploit du noyau Linux en suivant les techniques décrites pendant la conférence.
La formation commence avec des sujets débutants mais progresse également vers des domaines avancés. Les chapitres débutants incluent l'apprentissage de l'escalade de privilèges et le contournement des atténuations fondamentales dans les noyaux x86-64. Les chapitres avancés sont principalement dédiés aux techniques modernes d'exploitation Slab (heap) et incluent une analyse approfondie des internes des allocateurs du noyau.
L'exigence principale pour cette formation est la capacité de lire et d'écrire du code C. Des connaissances de base de l'architecture x86-64 et de l'assemblage, GDB et les techniques courantes d'exploitation binaire seraient également utiles. Il n'est pas nécessaire de connaître les internes du noyau Linux: toutes les parties requises sont couvertes pendant la formation.
Programme du cours
Jour 1 — Internes et bases de l'exploitation
- Internes et débogage: Rappel de l'architecture x86-64; internes du noyau Linux pertinents pour la sécurité et surface d'attaque; types de vulnérabilités du noyau; configuration de l'environnement de débogage du noyau avec VMware; utilisation de GDB pour déboguer le noyau et ses modules
- Escalade de privilèges: ret2usr, écrasement de structure cred, écrasement de modprobe_path; détournement de flux de contrôle et primitives de lecture/écriture d'adresse arbitraire
Jour 2 — Contournement d'atténuations et exploitation Slab de base
- Contournement d'atténuations: Internes KASLR, SMEP, SMAP et KPTI et techniques de contournement; Return-Oriented Programming (ROP) dans le noyau
- Exploitation des corruptions Slab: Internes SLUB en profondeur; exploitation des vulnérabilités Slab out-of-bounds et use-after-free; atténuations spécifiques à Slab; techniques d'exploitation data-only
Jour 3 — Exploitation Slab classique
- Exploitation de plus de corruptions Slab: Fusion et comptabilité de cache; usercopy durci; objets élastiques; techniques d'exploitation basées sur msg_msg et pipe_buffer
- Écriture d'exploit end-to-end pour vulnérabilité noyau N-day
Jour 4 — Exploitation Slab moderne
- Userfaultfd et FUSE; techniques d'exploitation associées
- Attaques cross-cache et cross-allocator
- Apprentissage de techniques d'exploitation plus avancées; applicabilité des techniques couvertes aux noyaux Android; références utiles
Contenu supplémentaire
(couvert le dernier jour s'il reste du temps, auto-étude sinon):
- Techniques d'exploitation basées sur les tables de pages
- Écriture d'exploit end-to-end pour une autre vulnérabilité noyau N-day
Exigences
Exigences matérielles:
- Machine basée sur x86-64
- Au moins 100 Go d'espace disque libre
- Au moins 16 Go de RAM
- Capacité de brancher une clé USB non fiable (pertinent pour les ordinateurs portables d'entreprise)
Exigences logicielles:
- OS hôte: Linux (recommandé) ou Windows
- VMware Workstation Player ou Pro
- 7-Zip
Prérequis:
- Connaissance pratique du C
- Familiarité avec l'architecture x86-64 et l'assemblage x86-64
- Familiarité avec GDB
- Familiarité avec les types courants de vulnérabilités et techniques d'exploitation pour les applications userspace
- Aucune connaissance des internes du noyau Linux n'est requise
Objectifs d'apprentissage
- Internes du noyau Linux pertinents pour la sécurité et surface d'attaque
- Techniques d'escalade de privilèges du noyau
- Exploitation des vulnérabilités dans la mémoire stack, globale et Slab (heap)
- Exploitation des vulnérabilités use-after-free et out-of-bounds
- Contournements KASLR, SMEP, SMAP et KPTI
- Return-Oriented Programming (ROP) dans le noyau
- Techniques d'exploitation du noyau data-only
- Attaques cross-cache et cross-allocator
- Techniques d'exploitation basées sur les tables de pages
Qui devrait assister
La formation est destinée aux chercheurs en sécurité ou ingénieurs logiciels souhaitant entrer ou progresser dans le domaine de la sécurité du noyau Linux.
BIO
Andrey Konovalov est un chercheur en sécurité se concentrant sur le noyau Linux.
Andrey a trouvé plusieurs bugs zero-day dans le noyau Linux et a publié des exploits de preuve de concept pour ces bugs afin de démontrer l'impact. Andrey a contribué à plusieurs sous-systèmes et outils du noyau Linux liés à la sécurité: KASAN — un détecteur de bugs dynamique rapide; syzkaller — un fuzzer de noyau largement utilisé; et Arm Memory Tagging Extension (MTE) — une atténuation d'exploits.
Andrey a donné des conférences lors de nombreuses conférences de sécurité telles qu'OffensiveCon, Zer0Con, Android Security Symposium et Linux Security Summit. Andrey maintient également une collection de matériaux liés à la sécurité du noyau Linux et un canal sur la sécurité du noyau Linux.
Voir xairy.io pour tous les articles, conférences et projets d'Andrey.
Pour s'inscrire
Cliquez ici pour vous inscrire.
