Una DLL proxy para Windows para volcar clases JVM a nivel JNI.
Algunos programas Java utilizan la reflexión para ocultar su código cargando y ejecutando clases dinámicamente. Puedes volcarlos de la memoria, pero ¿qué pasa si se descargan inmediatamente después de ejecutarse? Podrías editar rt.jar
y colocar un enlace en varios métodos de reflexión. Pero, ¿qué pasa si el programa utiliza los métodos de carga de clases nativos directamente, sin pasar por los enlaces a nivel de código de bytes?
Este proyecto pretende ser una solución universal a todas sus necesidades de vertido. Al conectarse al nivel JNI más bajo y confiablemente accesible, volcará todas las clases a medida que se cargan.
DefineClass*
. Es posible omitir este método implementando su propio cargador de clases en JNI. Descargue la última versión. Coloque version.dll
en su directorio bin
de Java, junto a java.exe
. Es posible que desee utilizar una instalación de Java independiente para no afectar a todos los procesos. En su escritorio, cree un nuevo directorio llamado JVMDUMP
.
Cuando ejecute cualquier programa con la instalación de Java modificada, verá un cuadro de mensaje con el resultado del enlace. Una vez que presione OK
, todas las clases cargadas se guardarán en el directorio de su escritorio.
Error 2
JVMDUMP
desde su escritorioUna implementación simple de proxy DLL para inyectar en la JVM de forma sencilla y confiable. Para más información consultar las referencias.
Instala los ganchos que redirigen métodos a nuestro código. Desarrollado por mhook.
La lógica del dumping de clases.
Un analizador de clases Java rápido y sencillo. Analizará el nombre de clase de cada búfer de bytes enlazado y lo utilizará para guardar el archivo con el nombre apropiado.