
extracteur d'offsets eprocess pour les offsets de membres pertinents et les adresses de fonctions pour cve-2026-40369
Un script Python pour IDA permettant d'extraire des métadonnées critiques du noyau à partir des binaires Windows ntoskrnl.exe. Cet outil extrait automatiquement les RVA de fonctions et les offsets de structure _EPROCESS nécessaires au développement d'exploits ciblant CVE-2026-40369 et d'autres vulnérabilités du noyau.
Cet outil facilite la compilation d'exploits fiables pour CVE-2026-40369 en extrayant automatiquement les métadonnées du noyau spécifiques à la version qui doivent être codées en dur dans les charges utiles des exploits. Les valeurs extraites garantissent un hooking correct des fonctions et un accès correct aux membres de structure sur différentes versions de Windows et niveaux de correctifs.
Extraction automatique des RVA de fonctions : Récupère les RVA des fonctions clés du noyau :
ExpGetProcessInformationExpQuerySystemInformationCmpLayerVersionCountCmpLayerVersionsPsInitialSystemProcessOffsets de structure _EPROCESS : Extrait les offsets des membres pour :
UniqueProcessIdActiveProcessLinksTokenImageFileNameSortie prête à l'emploi : Génère une sortie formatée prête à être collée directement dans le code d'exploit CVE-2026-40369
Ouvrez ntoskrnl.exe dans IDA Pro
Chargez les symboles PDB Windows correspondants :
Exécutez le script :
extract_metadata.pyLe script affichera :
=== RVAs (image base = 0x140000000) ===
ExpGetProcessInformation: ea=0x1400a1234 rva=0xa1234
ExpQuerySystemInformation: ea=0x1400a5678 rva=0xa5678
...
=== _EPROCESS member offsets ===
_EPROCESS.UniqueProcessId: 0x440
_EPROCESS.ActiveProcessLinks: 0x448
_EPROCESS.Token: 0x4d8
_EPROCESS.ImageFileName: 0x5e8
=== g_builds[] row (paste at poc.c:146) ===
{ 26200, 8037, 0xA1234, 0xA5678, 0x440, 0x448, 0x4D8, 0x5E8 },
| Erreur | Solution |
|---|---|
| "NOT FOUND (PDB not loaded?)" | Chargez le fichier PDB Windows correct pour votre version de ntoskrnl.exe |
| "_EPROCESS not in Local Types" | Assurez-vous que le PDB est correctement chargé ; essayez File → Load File → PDB File |
| Le script s'exécute mais aucune sortie n'est produite | Vérifiez que la console Python d'IDA est ouverte (Windows → Output windows → Python) |
Ce script fonctionne avec toute version de Windows ntoskrnl.exe pour laquelle des symboles PDB sont disponibles. Testé avec Windows 10 et Windows 11.
Cet outil est fourni tel quel, uniquement à des fins de recherche en sécurité et d'analyse autorisée.