Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
vmpdump — Un volcador dinámico de VMP y reparador de importaciones, impulsado por VTIL. | Kitploit
Herramientas/GitHubGitHub/0xnobody/vmpdump
Análisis Dinámico (Sandboxing)ExplotaciónIngeniería InversaDepuradoresAnálisis de Binarios
GitHub0xnobody/vmpdump

vmpdump

Un volcador dinámico de VMP y reparador de importaciones, impulsado por VTIL.

Ver Repositorio
1.4k2315hace 5 añosRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

VMPDump

Un volcador VMP dinámico y reparador de importaciones, impulsado por VTIL. Funciona para VMProtect 3.X x64.

Antes vs Después

Uso

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

Argumentos:

  • <Target PID>: El ID del proceso objetivo, en forma decimal o hexadecimal.
  • <Target Module>: El nombre del módulo que debe volcarse y repararse. Puede ser una cadena vacía ("") si se desea el módulo de imagen del proceso.
  • [-ep=<Entry Point RVA>]: Un RVA de punto de entrada proporcionado opcionalmente, en forma hexadecimal. VMPDump simplemente sobrescribe el Punto de Entrada en el encabezado opcional con este valor.
  • [-disable-reloc]: Una configuración opcional para indicar a VMPDump que marque que las reubicaciones han sido eliminadas en la imagen de salida, forzando a la imagen a cargarse en el ImageBase volcado. Esto es útil si se desean volcados ejecutables.
  • La inicialización y desempaquetado de VMProtect deben estar completos en el proceso objetivo antes de ejecutar VMPDump. Esto significa que debe estar en o más allá del OEP (Punto de Entrada Original). La imagen volcada y reparada aparecerá en el directorio del módulo de imagen del proceso, bajo el nombre <Target Module Name>.VMPDump.<Target Module Extension>.

    Cómo Funciona

    VMProtect inyecta stubs para cada llamada o salto de importación. Estos stubs resuelven el thunk 'ofuscado' en la sección .vmpX y añaden una constante fija para 'desofuscarlo'. Las llamadas o saltos en sí mismos se despachan entonces con una instrucción ret.

    VMPDump escanea todas las secciones ejecutables en busca de estos stubs y los eleva a VTIL usando el elevador VTIL x64. Luego se realiza un análisis sobre estos stubs para determinar qué tipo de llamada debe reemplazarse y qué bytes deben sobrescribirse.

    Una vez que se han recuperado todas las llamadas, VMPDump crea una nueva tabla de importaciones y añade thunks a la IAT existente. Las llamadas a los stubs de importación de VMP se reemplazan con llamadas directas a estos thunks.

    Tenga en cuenta que en rutinas mutadas, hay situaciones en las que no hay suficientes bytes para reemplazar la llamada al stub de importación de VMP con una llamada directa al thunk, ya que esta última es 1 byte más grande. En estos casos, la sección se extiende y se inyecta un stub que salta al thunk de importación. La llamada al stub de importación de VMP se reemplaza entonces con una llamada relativa de 5 bytes o un salto a dicho stub inyectado.

    Compilación (CMake)

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

    Compilación (Visual Studio)

    Compilar en VS es tan simple como reemplazar los directorios de include/library a VTIL-NativeLifers/VTIL-Core/Keystone/Capstone en el vcxproj.

    El proyecto requiere C++20.

    Problemas y Limitaciones

    Debido a que las secciones de código se escanean linealmente, particularmente en código fuertemente mutado y ofuscado, algunas llamadas de stub de importación pueden omitirse y, por lo tanto, no resolverse. Sin embargo, VMPDump incluye soluciones para la mayoría de las inconsistencias de mutación de VMProtect, por lo que debería producir resultados decentes incluso en código fuertemente mutado.

    Si encuentra esto, por favor cree un issue con la información relevante y lo revisaré.

    Licencia

    Licenciado bajo la Licencia GPL-3.0. No se proporciona garantía de ningún tipo.

    Descargar herramienta