Test Foro de elhacker.net SMF 2.1

Programación => Ingeniería Inversa => Mensaje iniciado por: Zequez en 22 Febrero 2010, 18:11 PM

Título: ¿Si me inyecto en otro proceso, puedo ejecutar funciones de este?
Publicado por: Zequez en 22 Febrero 2010, 18:11 PM
Bueno, tengo un par del dudas (En realidad muchísimas, pero solo un par se aplican a este caso xD).

¿Cuando me inyecto en otro proceso, creo un proceso extra adjuntado al otro proceso? ¿Este se ejecuta asincrónico con el otro no? ¿Entonces puedo hacer calls a sectores del otro proceso?

Bueno, fueron 3 preguntas xD.
Título: Re: ¿Si me inyecto en otro proceso, puedo ejecutar funciones de este?
Publicado por: [Zero] en 22 Febrero 2010, 21:19 PM
Si, si te inyectas puedes ejecutar funciones de éste, pero ojo como lo haces, ya que si no tienes cuidado seguramente provocarás algún error. Lo ideal sería que te inyectaras, pararas la ejecución del hilo del proceso principal (SuspendThread), haces un call directo (sin crear un nuevo hilo) a la función que quieres ejecutar, y cuando retorne, reanudas el hilo que pausaste (ResumeThread). No se exactamente que pretendes hacer, pero supongo que leer sobre API Hooking tambien te vendrá bien.

Te dejo algunos links:


http://foro.elhacker.net/hacking_avanzado/paper_inyecciones_dll-t159111.0.html
http://mazard.info/tutos/apihooking.pdf
http://foro.elhacker.net/analisis_y_diseno_de_malware/inyeccion_de_archivos_en_un_proceso_1_proceso_2_ejecutables-t280471.0.html
http://foro.elhacker.net/analisis_y_diseno_de_malware/srccasm_clshookapi-t281292.0.html
http://msdn.microsoft.com/en-us/library/ms686345(VS.85).aspx
http://msdn.microsoft.com/en-us/library/ms685086(VS.85).aspx
http://msdn.microsoft.com/en-us/library/ms679362(VS.85).aspx


Saludos
Título: Re: ¿Si me inyecto en otro proceso, puedo ejecutar funciones de este?
Publicado por: Zequez en 23 Febrero 2010, 02:43 AM
Cita de: Hacker_Zero en 22 Febrero 2010, 21:19 PM
Si, si te inyectas puedes ejecutar funciones de éste, pero ojo como lo haces, ya que si no tienes cuidado seguramente provocarás algún error. Lo ideal sería que te inyectaras, pararas la ejecución del hilo del proceso principal (SuspendThread), haces un call directo (sin crear un nuevo hilo) a la función que quieres ejecutar, y cuando retorne, reanudas el hilo que pausaste (ResumeThread). No se exactamente que pretendes hacer, pero supongo que leer sobre API Hooking tambien te vendrá bien.

Te dejo algunos links:


http://foro.elhacker.net/hacking_avanzado/paper_inyecciones_dll-t159111.0.html
http://mazard.info/tutos/apihooking.pdf
http://foro.elhacker.net/analisis_y_diseno_de_malware/inyeccion_de_archivos_en_un_proceso_1_proceso_2_ejecutables-t280471.0.html
http://foro.elhacker.net/analisis_y_diseno_de_malware/srccasm_clshookapi-t281292.0.html
http://msdn.microsoft.com/en-us/library/ms686345(VS.85).aspx
http://msdn.microsoft.com/en-us/library/ms685086(VS.85).aspx
http://msdn.microsoft.com/en-us/library/ms679362(VS.85).aspx


Saludos


Muchisimas gracias, me voy a poner a leer ^^