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.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2024-51324 — Ricerca di tesi magistrale su CVE-2024-51324 (BYOVD). Exploit avanzato con 4 modalità operative (SCANNER, LOADER, KILLER, CLEANUP), verifica del driver SHA-256 e documentazione accademica completa. Il pezzo del portfolio copre la sicurezza dei driver del kernel Windows, il reverse engineering di IOCTL e lo sfruttamento di Bring Your Own Vulnerable Driver. | Kitploit
Strumenti/GitHubGitHub/devianntsec/cve-2024-51324
Strumenti DifensiviAnalisi delle VulnerabilitàExploitReverse EngineeringInformatica ForensePenetration TestingPaper e RicercaApprendimento e FormazioneRed Teaming

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 →
Binary Exploitation
GitHubdevianntsec/cve-2024-51324

CVE-2024-51324

Vedi Repository
1105 mesi faNon ancora revisionato

Informazioni

Ricerca di tesi magistrale su CVE-2024-51324 (BYOVD). Exploit avanzato con 4 modalità operative (SCANNER, LOADER, KILLER, CLEANUP), verifica del driver SHA-256 e documentazione accademica completa. Il pezzo del portfolio copre la sicurezza dei driver del kernel Windows, il reverse engineering di IOCTL e lo sfruttamento di Bring Your Own Vulnerable Driver.

Condividi

CVE-2024-51324 — BYOVD: BdApiUtil64.sys · Ricerca per la Tesi Magistrale

Platform Language License: MIT Research CVSS

Bring Your Own Vulnerable Driver (BYOVD) — Antivirus Baidu BdApiUtil64.sys
Tre primitive del kernel non documentate: terminazione dei processi, cancellazione arbitraria di file e cancellazione di file in uso con bypass di SectionObjectPointer
Affetto: Antivirus Baidu v5.2.3.116083 (BdApiUtil64.sys)


Caricamento del driver vulnerabile nel kernel (modalità LOADER)

Descrizione

Questo repository contiene la mia ricerca per la Tesi Magistrale su CVE-2024-51324, una vulnerabilità Bring Your Own Vulnerable Driver (BYOVD) nel driver del kernel BdApiUtil64.sys dell'Antivirus Baidu.

Il record NVD assegna un punteggio base CVSS v3.1 di 3.8 (Basso) con vettore AV:N/AC:L/PR:H/UI:N/S:U/C:L/I:L/A:N e CWE-269 (Gestione impropria dei privilegi). Questo punteggio non riflette la realtà dell'attacco locale documentata in questa ricerca: una volta che il driver viene caricato da un amministratore (un passo unico ottenibile tramite ingegneria sociale o qualsiasi escalation di privilegi locale), qualsiasi processo successivo — inclusi processi in sandbox o di utente standard — può inviare IOCTL senza ulteriori controlli di privilegio. Un punteggio CVSS v3.1 valutato dal ricercatore di 7.8 (Alto) con vettore AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H cattura in modo più accurato la realtà dello sfruttamento post-caricamento. Entrambi i punteggi sono discussi nella documentazione tecnica.

Il driver crea l'oggetto dispositivo \Device\BdApiUtil con SecurityDescriptor = NULL, permettendo a qualsiasi processo indipendentemente dal livello di integrità di aprire un handle e inviare IOCTL. L'analisi statica tramite Ghidra 11.0.3 rivela che il meccanismo interno è più significativo di quanto documentato in precedenza: il driver utilizza PsLookupProcessByProcessId + ObOpenObjectByPointer(KernelMode) anziché ZwOpenProcess, bypassando SeAccessCheck completamente. Tre primitive IOCTL sono state pienamente caratterizzate, due delle quali non hanno documentazione pubblica precedente.

Il mio contributo

AspettoDescrizione
Correzione tecnicaZwOpenProcess è assente dalla tabella di importazione; il meccanismo reale è PsLookupProcessByProcessId + ObOpenObjectByPointer(KernelMode), che bypassa SeAccessCheck incondizionatamente
Tre primitive documentateTerminazione dei processi (0x800024B4), cancellazione arbitraria di file (0x80002648) e cancellazione di file in uso con bypass di SectionObjectPointer (0x8000264C) — le ultime due non hanno documentazione pubblica precedente
Quattro modalità operativeLOADER, KILLER, SCANNER e CLEANUP — gestione completa del ciclo di vita
Verifica SHA-256Hash del driver verificato prima di ogni tentativo di caricamento
Test empirico PPL10 tentativi per categoria di processo che confermano PPL come unica mitigazione a runtime
Analisi forensePersistenza dell'Event ID 7045 dopo la pulizia; Event ID 1102 come artefatto di cancellazione del log auto-incriminante
Regole di rilevamentoRegola Sigma e configurazione Sysmon (Event ID 6 per hash + Event ID 13 per chiave di registro)
Rivalutazione CVSSDiscrepanza documentata tra il punteggio ufficiale NVD (3.8 Basso) e la gravità di sfruttamento locale valutata dal ricercatore (7.8 Alto)

Struttura del repository

CVE-2024-51324/
├── README.md
├── LICENSE
│
├── drivers/
│   └── BdApiUtil64.sys              # Driver (non distribuito)
│
├── exploit/
│   ├── exploit-explanation.md
│   └── byovd_killer.py              # Exploit principale — 4 modalità operative
│
└── docs/
    ├── screenshots/
    │   ├── 01-byovd-scan.png
    │   ├── 02-byovd-scan-target.png
    │   ├── 03-byovd-load.png
    │   ├── 04-byovd-load-custom.png
    │   ├── 05-kill-name.gif
    │   ├── 06-kill-pid.gif
    │   ├── 07-kill-limit.gif
    │   ├── 08-dry-run.gif
    │   └── 09-byovd-cleanup.png
    │
    └── analysis/
        ├── 01-root-cause.md
        ├── 02-driver-analysis.md    # RE completo con Ghidra, tre primitive, test PPL
        └── 03-timeline.md

Avvio rapido

Prerequisiti

  • Windows 10/11 (qualsiasi build)
  • Python 3.6+
  • BdApiUtil64.sys (SHA-256: 47EC51B5F0EDE1E70BD66F3F0152F9EB536D534565DBB7FCC3A05F542DBE4428)
  • Account amministratore (solo modalità LOADER e CLEANUP)
  • Account utente standard sufficiente per la modalità KILLER una volta caricato il driver

Passo 1 — Scansiona il sistema

python exploit/byovd_killer.py --scan
python exploit/byovd_killer.py --scan --target lsass.exe

Passo 2 — Carica il driver (richiede amministratore)

python exploit/byovd_killer.py --load
python exploit/byovd_killer.py --load --driver C:\path\to\BdApiUtil64.sys
python exploit/byovd_killer.py --load --service-name MyService

Passo 3 — Termina i processi (non richiede amministratore)

python exploit/byovd_killer.py --kill notepad.exe
python exploit/byovd_killer.py --pid 1234
python exploit/byovd_killer.py --kill notepad.exe --max-instances 2
python exploit/byovd_killer.py --kill notepad.exe --dry-run

Passo 4 — Pulizia (richiede amministratore)

python exploit/byovd_killer.py --cleanup
python exploit/byovd_killer.py --cleanup --service-name MyService

Modalità operative

ModalitàComandoPrivilegiDescrizione
SCANNER--scanQualsiasi utenteInformazioni sullo stato del sistema e del driver
LOADER--loadAmministratoreCarica il driver tramite creazione di servizio kernel
KILLER--kill / --pidQualsiasi utenteTermina i processi tramite IOCTL
CLEANUP--cleanupAmministratoreArresta ed elimina il servizio driver

Dimostrazioni

Modalità SCANNER — Informazioni di sistema

SCANNER Mode

Modalità SCANNER — Ricerca processo target

SCANNER Target

Modalità LOADER — Caricamento driver

LOADER Mode

Modalità LOADER — Percorso personalizzato e nome servizio

LOADER Custom

Modalità KILLER — Termina per nome processo

Kill by Name

Modalità KILLER — Termina per PID

Kill by PID

Modalità KILLER — Limita istanze

Limit Instances

Scarica lo strumento