Buenas!
Me estoy dedicando a analizar un poco de malware y me surge una duda.
El programa es una versión del Security Shield 2011 (rogue). Viene comprimido con un compresor desconocido para el PeID o el RDG. Tras jugar un rato, llegué al OEP (o lo que yo creía que era el OEP). Hago el dump, arreglo la IAT (sin problemas) y, cuando todo parece que va como la seda, el programa no arranca. Bueno, sí arranca pero se estropea enseguida. Como no tengo nidea de por qué puede pasar, arranco los dos exes (el original y el dumpeado) y, una vez el original está en el OEP, comparo cómo se van ejecutando. Me fijo en que, para una función que parece tener el mismo nombre, el original lo carga desde ntll y en el dumpeado la arranca desde kernel32. No entiendo por qué pasa esto.
Al final lo que hice fue esperar a que la rutina de desempacado cargara el programa original en la memoria y lo dumpee desde allí, pero sigo sin entender por qué el dumpeado no funcionaba.
¡A ver si me podéis echar una mano!
Saludos!
Me estoy dedicando a analizar un poco de malware y me surge una duda.
El programa es una versión del Security Shield 2011 (rogue). Viene comprimido con un compresor desconocido para el PeID o el RDG. Tras jugar un rato, llegué al OEP (o lo que yo creía que era el OEP). Hago el dump, arreglo la IAT (sin problemas) y, cuando todo parece que va como la seda, el programa no arranca. Bueno, sí arranca pero se estropea enseguida. Como no tengo nidea de por qué puede pasar, arranco los dos exes (el original y el dumpeado) y, una vez el original está en el OEP, comparo cómo se van ejecutando. Me fijo en que, para una función que parece tener el mismo nombre, el original lo carga desde ntll y en el dumpeado la arranca desde kernel32. No entiendo por qué pasa esto.
Al final lo que hice fue esperar a que la rutina de desempacado cargara el programa original en la memoria y lo dumpee desde allí, pero sigo sin entender por qué el dumpeado no funcionaba.
¡A ver si me podéis echar una mano!
Saludos!