Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!
vmprotect-research — Devirtualizzatore VMProtect generalizzato che supporta versioni 1.x–3.x. Strumento CLI autonomo e plugin Ghidra per decodifica automatica del bytecode, classificazione degli handler e ricostruzione di istruzioni x86-64 da binari protetti. | Kitploit
Devirtualizzatore VMProtect generalizzato che supporta versioni 1.x–3.x. Strumento CLI autonomo e plugin Ghidra per decodifica automatica del bytecode, classificazione degli handler e ricostruzione di istruzioni x86-64 da binari protetti.
Pattern di ingresso degli handler (opcode POP/PUSH)
Meccanismo di dispatch (jumptable vs. catena crittografata vs. catena di handler)
Layout delle sezioni PE (.vmp0, .vmp1, .text)
Pattern dello stub di ingresso (PUSH crittografato + CALL/JMP)
Estrazione Tabella di Dispatch
VMP 1.x/2.x: Estrazione della chiave XOR tramite pattern matching nella sezione .text
Analizza i pattern di istruzioni XOR
Deriva le chiavi dalle sequenze di opcode
Valida rispetto all'intervallo dell'image base
VMP 3.x: Dispatch tramite catena di handler
Individua i punti di dispatch (DP0-DP5)
Traccia le catene di handler
Estrae 256 voci di dispatch
Classificazione Handler
Pattern matching su:
Pattern di ingresso (49 8b 2a = POP per VMP 3.x)
Operazione principale (SUB, ADD, XOR, ecc.)
Tipi di operando (slot, offset, immediato)
Meccanismo di dispatch (push/ret, jmp diretto)
Decodifica Bytecode
Leggere l'opcode dalla sezione bytecode
Cercare la semantica dell'handler
Estrarre gli operandi (slot, offset)
Decrittare gli operandi tramite le catene ValueCryptor
Ricostruire l'istruzione x86-64
Gestire il contesto VM (register file, flag, stack)
Limitazioni Note
VMP 3.7+ (Handler Uniti) - Non supportato. VMP 3.7+ ha introdotto gli handler uniti (più operazioni per voce di handler) che compromettono il classificatore attuale. Richiede reverse engineering con un campione reale 3.7+. Vedi FUTURE_WORK.md per i dettagli.
Avvisi di Validazione Chiave XOR - Previsti per VMP 1.x/2.x (non critici)
Rilevamento Dispatch VMP 3.x - Usa una strategia di fallback per le offuscazioni più recenti
Campioni Linux - Non inclusi nel set di test attuale (supporto ELF implementato)
Prestazioni
Throughput: ~4,4 campioni/secondo
Memoria: <50MB per campione
Latenza: 5ms-3,25s a seconda della dimensione del binario
Documentazione
VALIDATION_REPORT.md - Risultati di test completi
IMPLEMENTATION_COMPLETE.md - Stato dell'implementazione
UNICORN_IMPLEMENTATION_REPORT.md - Dettagli sull'acquisizione della chiave XOR
Riferimenti alla Sorgente
Architettura basata sull'analisi della fuga del codice sorgente VMP 3.5.1:
Struttura degli handler e meccanismo di dispatch
Implementazione delle catene ValueCryptor
Pattern delle operazioni ALU
Gestione del contesto VM
Licenza
Uso per Ricerca/Scopi Educativi
Contatti
Per problemi o domande, fai riferimento ai report di validazione o alla documentazione dell'implementazione.
Ultimo Aggiornamento: 2026-06-01
Stato: Pronto per la produzione