Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2018-19323 — Un framework di exploit per CVE-2018-19323 - vulnerabilità di elevazione dei privilegi di GIGABYTE GDrv con supporto multi-architettura e integrazione con framework. | Kitploit
Strumenti/GitHubGitHub/blueisbeautiful/cve-2018-19323
Frameworks per Penetration TestingEscalation di PrivilegiFramework di ExploitShellcodeRed TeamingGenerazione di ShellcodeSviluppo PayloadBinary Exploitation
GitHub
blueisbeautiful/cve-2018-19323

CVE-2018-19323

Un framework di exploit per CVE-2018-19323 - vulnerabilità di elevazione dei privilegi di GIGABYTE GDrv con supporto multi-architettura e integrazione con framework.

Vedi Repository
271 anno faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

CVE-2018-19323: Framework di sfruttamento di GIGABYTE GDrv


Panoramica

Questo repository contiene un framework di sfruttamento completo e avanzato per CVE-2018-19323, una vulnerabilità critica nel driver gdrv.sys di GIGABYTE. Questa vulnerabilità consente a utenti non privilegiati di leggere e scrivere registri specifici del modello (MSR) arbitrari, portando a una compromissione completa del Ring-0 (kernel) e all'escalation dei privilegi a NT AUTHORITY\SYSTEM.

Il framework è progettato per essere modulare, robusto e ricco di funzionalità, offrendo uno strumento completo per la ricerca sulla sicurezza, il red teaming e l'analisi delle vulnerabilità.

Funzionalità principali

  • Exploit kernel completo: Raggiunge l'escalation dei privilegi divulgando l'indirizzo di base del kernel tramite l'MSR IA32_LSTAR ed eseguendo uno shellcode di furto dei token.
  • Supporto multi-architettura: Si adatta dinamicamente alle architetture x86, x64 e ARM64, inclusi shellcode, strutture e gadget specifici per architettura.
  • Motore di evasione avanzato: Implementa un'ampia gamma di tecniche anti-analisi, anti-VM e anti-debug per bypassare le moderne soluzioni di sicurezza.
  • Sistema di payload personalizzati: Include un potente costruttore di payload per generare shellcode personalizzati (furto di token, shell reverse/bind, ecc.) con varie opzioni di codifica (XOR, Shikata Ga Nai, polimorfiche).
  • Integrazione con framework: Genera facilmente moduli e script per i popolari framework C2, inclusi Metasploit, Cobalt Strike, Empire e Sliver.
  • Monitoraggio completo: Include un sistema dettagliato di logging e monitoraggio delle prestazioni che genera report JSON con punteggi di affidabilità.
  • Progettazione modulare: Il codice è organizzato in moduli logici (core, payloads, evasion, monitor, multiarch, framework) per una facile estensione e manutenzione.

Struttura dei file

.
├── exploit.py         # Main exploitation framework and CLI
├── core.py            # Core driver interaction and exploit primitives
├── payloads.py        # Shellcode generation, custom payloads, and encoding
├── evasion.py         # Anti-VM, anti-debugging, and persistence techniques
├── monitor.py         # Logging, performance monitoring, and reporting
├── multiarch.py       # Multi-architecture support (x86/x64/ARM64)
├── framework.py       # Integration with Metasploit, Cobalt Strike, etc.
├── tests.py           # Comprehensive unit, integration, and performance tests
└── README.md          # This documentation file

Per iniziare

Requisiti

  • Sistema operativo: Windows (testato su Windows 7, 10, 11)
  • Driver vulnerabile: Il driver gdrv.sys deve essere presente sul sistema target.
  • Python: Python 3.x
  • Dipendenze: psutil, cryptography, requests
# Install required Python packages
pip install psutil cryptography requests

Utilizzo

Il framework di sfruttamento principale viene eseguito tramite exploit.py. Fornisce diverse opzioni da riga di comando per diverse modalità operative.

# Display help and all available options
python exploit.py --help

# Default stealth mode (recommended)
# Runs all pre-flight evasion checks before exploitation.
python exploit.py

# Aggressive mode
# Skips evasion checks for faster execution in controlled environments.
python exploit.py --aggressive

# Debug mode
# Provides verbose logging for development and analysis.
python exploit.py --debug

# Run the full test suite
# Validates all framework components without executing the exploit.
python exploit.py --test-only

Avvertenza legale

[!WARNING] Questo software è destinato esclusivamente a scopi educativi e di ricerca sulla sicurezza autorizzati. L'uso non autorizzato su qualsiasi sistema è illegale e severamente proibito. L'autore, kali, non è responsabile per qualsiasi danno o uso improprio di questo framework.

Analisi tecnica approfondita

Informazioni sulla vulnerabilità

  • CVE ID: CVE-2018-19323
  • Punteggio CVSS: 9.8 (Critico)
  • Componente interessato: driver GIGABYTE gdrv.sys
  • Impatto: Escalation dei privilegi locale a SYSTEM
  • Vettore d'attacco: Accesso locale richiesto
  • Utilizzo nel mondo reale: Sfruttata dal ransomware RobbinHood e dai gruppi APT

Analisi della vulnerabilità (CVE-2018-19323)

Il driver gdrv.sys espone un IOCTL 0xC3502580 che può essere richiamato da qualsiasi applicazione in modalità utente. Questo IOCTL accetta una struttura contenente un tipo di operazione (lettura/scrittura), un indice di registro MSR e un valore. Il driver non esegue alcun controllo degli accessi, consentendo a qualsiasi processo di leggere o scrivere su qualsiasi MSR.

Questa è una falla critica perché gli MSR controllano operazioni fondamentali della CPU. Nello specifico, l'MSR IA32_LSTAR (all'indirizzo 0xC0000082) memorizza l'indirizzo del gestore delle system call nel kernel. Leggendo questo MSR, possiamo aggirare la randomizzazione del layout dello spazio degli indirizzi del kernel (KASLR) e calcolare l'indirizzo di base del kernel. Scrivendo su di esso, possiamo reindirizzare le system call verso il nostro shellcode, ottenendo l'esecuzione di codice arbitrario in Ring-0.

Catena di sfruttamento

  1. Connessione al driver: Il framework apre un handle al dispositivo \\.\GIO.
  2. Divulgazione della base del kernel: Legge l'MSR IA32_LSTAR per ottenere un puntatore all'interno del kernel, aggirando KASLR.
  3. Iniezione del payload: Viene preparato uno shellcode per il furto del token. Questo shellcode è progettato per trovare la struttura EPROCESS del processo corrente, individuare l'EPROCESS del processo SYSTEM (PID 4) e copiarne il token di sicurezza nel nostro processo.
  4. Dirottamento del flusso di esecuzione: L'indirizzo dell'MSR IA32_LSTAR viene sovrascritto con l'indirizzo del nostro shellcode.
  5. Attivazione del payload: Viene attivata una system call, facendo saltare la CPU al nostro shellcode invece che al gestore legittimo del kernel.
  6. Escalation dei privilegi: Lo shellcode viene eseguito e il nostro processo ora dispone dei privilegi di NT AUTHORITY\SYSTEM.
  7. Pulizia: Il valore originale di IA32_LSTAR viene ripristinato per prevenire l'instabilità del sistema.

Funzionalità aggiuntive implementate

  • Nuovi vettori di evasione: Il modulo evasion.py include controlli per il numero di core della CPU, la dimensione del disco, l'attività recente sui file, i programmi installati e il rilevamento avanzato di timing/hooking per creare un'impronta ambientale più robusta.
  • Sistema di payload personalizzati: Il modulo payloads.py consente la generazione dinamica di vari payload (reverse shell, Meterpreter, beacon di Cobalt Strike) per diverse architetture, con più livelli di codifica.
  • Supporto multi-architettura: Il modulo multiarch.py fornisce un livello di astrazione completo per gestire le differenze tra x86, x64 e ARM64, incluse le dimensioni dei puntatori, le convenzioni di chiamata, le strutture del kernel e i set di istruzioni.
  • Integrazione con framework: Il modulo framework.py può generare moduli pronti all'uso per Metasploit (.rb), Cobalt Strike (.cna), Empire (.py) e Sliver (.go), automatizzando il processo di integrazione per le operazioni di red team.

Test

Il framework include una suite di test completa in tests.py. Puoi eseguire tutti i test per garantire l'integrità e la funzionalità di tutti i componenti.

# Run all unit, integration, and performance tests
python tests.py --all

# Run only unit tests
python tests.py --unit

Questo progetto è una dimostrazione di tecniche di sfruttamento avanzate e deve essere usato in modo responsabile.

Scarica lo strumento