Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2018-19323 — Un framework d'exploitation pour CVE-2018-19323 - vulnérabilité d'élévation de privilèges GIGABYTE GDrv avec prise en charge multi-architecture et intégration de framework | Kitploit
Outils/GitHubGitHub/blueisbeautiful/cve-2018-19323
Frameworks de Tests d'IntrusionEscalade de PrivilègesFrameworks d'ExploitationShellcodeRed TeamingGénération de ShellcodeDéveloppement de Charges UtilesExploitation de Binaires
GitHub
blueisbeautiful/cve-2018-19323

CVE-2018-19323

Un framework d'exploitation pour CVE-2018-19323 - vulnérabilité d'élévation de privilèges GIGABYTE GDrv avec prise en charge multi-architecture et intégration de framework

Voir le dépôt
5il y a 1 anPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

CVE-2018-19323 : Framework d'exploitation GIGABYTE GDrv


Aperçu

Ce dépôt contient un framework d'exploitation complet et avancé pour CVE-2018-19323, une vulnérabilité critique dans le pilote gdrv.sys de GIGABYTE. Cette vulnérabilité permet à des utilisateurs non privilégiés de lire et d'écrire arbitrairement dans les registres spécifiques au modèle (MSR), conduisant à un compromis complet du Ring-0 (noyau) et à une élévation de privilèges vers NT AUTHORITY\SYSTEM.

Le framework est conçu pour être modulaire, robuste et riche en fonctionnalités, offrant un outil complet pour la recherche en sécurité, les opérations Red Team et l'analyse de vulnérabilités.

Fonctionnalités clés

  • Exploit complet du noyau : Permet une élévation de privilèges en divulguant l'adresse de base du noyau via le MSR IA32_LSTAR et en exécutant un shellcode de vol de jeton.
  • Support multi-architecture : S'adapte dynamiquement aux architectures x86, x64 et ARM64, avec des shellcodes, structures et gadgets spécifiques à chaque architecture.
  • Moteur d'évasion avancé : Implémente un large éventail de techniques anti-analyse, anti-VM et anti-débogage pour contourner les solutions de sécurité modernes.
  • Système de payload personnalisé : Dispose d'un puissant constructeur de payload pour générer des shellcodes sur mesure (vol de jeton, reverse/bind shell, etc.) avec diverses options d'encodage (XOR, Shikata Ga Nai, Polymorphe).
  • Intégration aux frameworks : Génère de manière transparente des modules et scripts pour les frameworks C2 populaires, notamment Metasploit, Cobalt Strike, Empire et Sliver.
  • Supervision complète : Inclut un système détaillé de journalisation et de suivi des performances qui génère des rapports JSON avec des scores de fiabilité.
  • Conception modulaire : Le code est organisé en modules logiques (core, payloads, evasion, monitor, multiarch, framework) pour une extension et une maintenance faciles.
  • Structure des fichiers

    root@kitploit:~
    .
    ├── exploit.py         # Framework d'exploitation principal et CLI
    ├── core.py            # Interaction avec le pilote et primitives d'exploitation
    ├── payloads.py        # Génération de shellcode, payloads personnalisés et encodage
    ├── evasion.py         # Techniques anti-VM, anti-débogage et persistance
    ├── monitor.py         # Journalisation, suivi des performances et rapports
    ├── multiarch.py       # Support multi-architecture (x86/x64/ARM64)
    ├── framework.py       # Intégration avec Metasploit, Cobalt Strike, etc.
    ├── tests.py           # Tests unitaires, d'intégration et de performance complets
    └── README.md          # Ce fichier de documentation
    

    Pour commencer

    Prérequis

    • Système d'exploitation : Windows (testé sur Windows 7, 10, 11)
    • Pilote vulnérable : Le pilote gdrv.sys doit être présent sur le système cible.
    • Python : Python 3.x
    • Dépendances : psutil, cryptography, requests
    root@kitploit:~
    # Installer les paquets Python requis
    pip install psutil cryptography requests
    

    Utilisation

    Le framework d'exploitation principal est exécuté via exploit.py. Il fournit plusieurs options en ligne de commande pour différents modes opérationnels.

    root@kitploit:~
    # Afficher l'aide et toutes les options disponibles
    python exploit.py --help
    
    # Mode furtif par défaut (recommandé)
    # Exécute toutes les vérifications d'évasion avant l'exploitation.
    python exploit.py
    
    # Mode agressif
    # Ignore les vérifications d'évasion pour une exécution plus rapide dans des environnements contrôlés.
    python exploit.py --aggressive
    
    # Mode débogage
    # Fournit une journalisation détaillée pour le développement et l'analyse.
    python exploit.py --debug
    
    # Exécuter la suite complète de tests
    # Valide tous les composants du framework sans exécuter l'exploit.
    python exploit.py --test-only
    

    Avertissement légal

    [!WARNING] Ce logiciel est destiné à des fins éducatives et de recherche en sécurité autorisées uniquement. Toute utilisation non autorisée sur un système est illégale et strictement interdite. L'auteur, kali, décline toute responsabilité en cas de dommage ou de mauvaise utilisation de ce framework.

    Plongée technique approfondie

    Informations sur la vulnérabilité

    • ID CVE : CVE-2018-19323
    • Score CVSS : 9.8 (Critique)
    • Composant affecté : Pilote GIGABYTE gdrv.sys
    • Impact : Élévation de privilèges locale vers SYSTEM
    • Vecteur d'attaque : Accès local requis
    • Utilisation réelle : Exploité par les ransomwares RobbinHood et des groupes APT

    Analyse de la vulnérabilité (CVE-2018-19323)

    Le pilote gdrv.sys expose un IOCTL 0xC3502580 qui peut être appelé par n'importe quelle application en mode utilisateur. Cet IOCTL prend une structure contenant un type d'opération (lecture/écriture), un index de registre MSR et une valeur. Le pilote n'effectue aucun contrôle d'accès, permettant à tout processus de lire ou d'écrire sur n'importe quel MSR.

    C'est une faille critique car les MSR contrôlent des opérations fondamentales du processeur. Plus précisément, le MSR IA32_LSTAR (à l'adresse 0xC0000082) stocke l'adresse du gestionnaire d'appels système dans le noyau. En lisant ce MSR, nous pouvons contourner le Kernel Address Space Layout Randomization (KASLR) et calculer l'adresse de base du noyau. En y écrivant, nous pouvons rediriger les appels système vers notre propre shellcode, obtenant ainsi une exécution de code arbitraire en Ring-0.

    Chaîne d'exploitation

    1. Connexion au pilote : Le framework ouvre un handle sur le périphérique \\.\GIO.
    2. Divulgation de la base du noyau : Il lit le MSR IA32_LSTAR pour obtenir un pointeur dans le noyau, contournant le KASLR.
    3. Injection du payload : Un shellcode de vol de jeton est préparé. Ce shellcode est conçu pour trouver la structure EPROCESS du processus courant, localiser celle du processus SYSTEM (PID 4), et copier son jeton de sécurité dans notre processus.
    4. Détournement du flux d'exécution : L'adresse du MSR IA32_LSTAR est écrasée par l'adresse de notre shellcode.
    5. Déclenchement du payload : Un appel système est déclenché, ce qui fait sauter le processeur vers notre shellcode au lieu du gestionnaire légitime du noyau.
    6. Élévation de privilèges : Le shellcode s'exécute, et notre processus obtient maintenant les privilèges NT AUTHORITY\SYSTEM.
    7. Nettoyage : La valeur originale de IA32_LSTAR est restaurée pour éviter toute instabilité du système.

    Fonctionnalités supplémentaires implémentées

    • Nouveaux vecteurs d'évasion : Le module evasion.py inclut des vérifications du nombre de cœurs CPU, de la taille du disque, de l'activité récente des fichiers, des programmes installés, et une détection avancée des temps d'exécution et des hooks pour créer une empreinte environnementale plus robuste.
    • Système de payload personnalisé : Le module payloads.py permet la génération dynamique de divers payloads (reverse shells, Meterpreter, Cobalt Strike beacons) pour différentes architectures, avec plusieurs couches d'encodage.
    • Support multi-architecture : Le module multiarch.py fournit une couche d'abstraction complète pour gérer les différences entre x86, x64 et ARM64, y compris les tailles de pointeurs, les conventions d'appel, les structures du noyau et les jeux d'instructions.
    • Intégration aux frameworks : Le module framework.py peut générer des modules prêts à l'emploi pour Metasploit (.rb), Cobalt Strike (.cna), Empire (.py) et Sliver (.go), automatisant le processus d'intégration pour les opérations Red Team.

    Tests

    Le framework inclut une suite de tests complète dans tests.py. Vous pouvez exécuter tous les tests pour vérifier l'intégrité et la fonctionnalité de tous les composants.

    root@kitploit:~
    # Exécuter tous les tests unitaires, d'intégration et de performance
    python tests.py --all
    
    # Exécuter uniquement les tests unitaires
    python tests.py --unit
    

    Ce projet est une démonstration de techniques d'exploitation avancées et doit être utilisé de manière responsable.

    Télécharger l’outil