
Module noyau Linux utilisant Kprobes pour détecter et neutraliser les exploits de double-free du tas CVE-2024-1086 via le suivi des écarts temporels et la nullification active des registres, avec une surcharge mémoire RAM nulle.
Auteurs : Vedant Karande & Kiran Kumari
Cours : Sécurité des réseaux et systèmes (SIL7165) - Institut Indien de Technologie de Delhi
KOOBE-Guard est un système dynamique de prévention d'intrusion (IPS) développé sous forme de module chargeable du noyau Linux (LKM) pour atténuer activement les vulnérabilités catastrophiques liées au tas, ciblant spécifiquement la vulnérabilité de double libération CVE-2024-1086[cite: 1].
Les systèmes d'exploitation modernes font implicitement confiance aux sous-systèmes mémoire pour allouer et libérer la mémoire sans faille[cite: 1]. Lorsque des sous-systèmes complexes comme nf_tables du noyau Linux contiennent des erreurs logiques, cela peut conduire à une mauvaise gestion de la mémoire, permettant à un attaquant non privilégié d'obtenir une élévation de privilèges locale (LPE) via le Heap Feng Shui et des allocations qui se chevauchent[cite: 1]. KOOBE-Guard neutralise cela en remplaçant les lourdes défenses passives basées sur la shadow memory par un suivi actif en temps réel des écarts temporels (Active Temporal Gap Tracking)[cite: 1].
Les outils de mitigation traditionnels comme KASAN reposent sur un mappage immense de la shadow memory, introduisant une surcharge CPU de 200 à 300 % et une inflation catastrophique de la RAM, ce qui les rend inutilisables dans les environnements de production[cite: 1].
KOOBE-Guard intercepte l'exploit en utilisant la méthodologie suivante :
kfree[cite: 1]. Le module enregistre l'horodatage exact en nanosecondes des adresses mémoire libérées[cite: 1].regs->di = 0) pour les mettre à NULL[cite: 1]. Cela force une opération sûre kfree(NULL), empêchant complètement la corruption de la freelist SLUB[cite: 1].defense_module/ : contient le code source du LKM KOOBE-Guard et les Makefiles.evaluation_scripts/ : scripts Bash (benchmark.sh, hit_rate.sh) utilisés pour les tests quantitatifs QEMU.docs/ : rapports de projet complets et diapositives de présentation.proofs/ : diagrammes d'architecture système, captures d'écran d'exécution et graphiques de benchmarks.exploit_poc/ : sous-module référençant la preuve de concept (PoC) armée pour CVE-2024-1086 utilisée pour déclencher l'état de vulnérabilité.Le framework a été rigoureusement évalué dans un laboratoire virtuel QEMU profondément isolé et accéléré matériellement, exécutant un noyau Linux 6.6.0 compilé sur mesure[cite: 1].
exploit_poc. Visitez le dépôt original ici : Notselwyn/CVE-2024-1086.Ce projet est sous licence GPL-2.0. Voir le fichier LICENSE pour plus de détails.