Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
vmpdump — Um dumper VMP dinâmico e fixador de importações, alimentado por VTIL. | Kitploit
Ferramentas/GitHubGitHub/0xnobody/vmpdump
Análise Dinâmica (Sandboxing)ExploraçãoEngenharia ReversaDepuradoresAnálise de Binários
GitHub0xnobody/vmpdump

vmpdump

Um dumper VMP dinâmico e fixador de importações, alimentado por VTIL.

Ver Repositório
1.4k231há 5 anosRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

VMPDump

Um dumper VMP dinâmico e fixador de imports, alimentado por VTIL. Funciona para VMProtect 3.X x64.

Antes vs Depois

Uso

VMPDump.exe <Target PID> "<Target Module>" [-ep=<Entry Point RVA>] [-disable-reloc]

Argumentos:

  • <Target PID>: O ID do processo alvo, em formato decimal ou hexadecimal.
  • <Target Module>: O nome do módulo que deve ser descarregado e corrigido. Pode ser uma string vazia ("") se desejar o módulo da imagem do processo.
  • [-ep=<Entry Point RVA>]: Um RVA de ponto de entrada fornecido opcionalmente, em formato hexadecimal. VMPDump simplesmente sobrescreve o Entry Point no cabeçalho opcional com este valor.
  • [-disable-reloc]: Uma configuração opcional para instruir o VMPDump a marcar que as realocações foram removidas na imagem de saída, forçando a imagem a carregar no ImageBase descarregado. Isto é útil se dumps executáveis forem desejados.

A inicialização e descompressão do VMProtect devem estar concluídas no processo alvo antes de executar o VMPDump. Isto significa que deve estar no ou após o OEP (Original Entry Point / Ponto de Entrada Original). A imagem descarregada e corrigida aparecerá no diretório do módulo de imagem do processo, sob o nome <Target Module Name>.VMPDump.<Target Module Extension>.

Como Funciona

O VMProtect injeta stubs para cada chamada de import ou jmp. Estes stubs resolvem o thunk 'ofuscado' na secção .vmpX, e adicionam uma constante fixa para 'desofuscá-lo'. As próprias chamadas ou saltos são então despachados com uma instrução ret.

O VMPDump analisa todas as secções executáveis em busca destes stubs, e os eleva para VTIL usando o lifter VTIL x64. A análise é então realizada nestes stubs, a fim de determinar que tipo de chamada deve ser substituída e que bytes devem ser sobrescritos.

Uma vez que todas as chamadas tenham sido recuperadas, o VMPDump cria então uma nova tabela de imports e anexa thunks à IAT existente. As chamadas para os stubs de import do VMP são substituídas por chamadas diretas para estes thunks.

Note que em rotinas mutadas, existem situações em que não há bytes suficientes para substituir a chamada do stub de import do VMP por uma chamada direta de thunk, já que esta última é 1 byte maior. Nestes casos, a secção é estendida e um stub que salta para o thunk de import é injetado. A chamada do stub de import do VMP é então substituída por uma chamada relativa de 5 bytes ou jmp para o referido stub injetado.

Compilação (CMake)

root@kitploit:~
mkdir build && cd build
cmake -G "Visual Studio 16 2019" ..
cmake --build . --config Release

Compilação (Visual Studio)

Compilar no VS é tão simples quanto substituir os diretórios de include/library para VTIL-NativeLifers/VTIL-Core/Keystone/Capstone no vcxproj.

O projeto requer C++20.

Problemas e Limitações

Devido ao facto de que as secções de código são examinadas linearmente, particularmente em código altamente mutado e ofuscado, algumas chamadas de stub de import podem ser ignoradas e, portanto, não resolvidas. No entanto, o VMPDump inclui soluções alternativas para a maioria das inconsistências de mutação do VMProtect, pelo que deve produzir resultados decentes mesmo em código altamente mutado.

Se encontrar isto, por favor crie um issue com a informação relevante e eu darei uma olhada.

Licença

Licenciado sob a Licença GPL-3.0. Nenhuma garantia é fornecida de qualquer tipo.

Baixar ferramenta