Foro de elhacker.net

Seguridad Informática => Análisis y Diseño de Malware => Mensaje iniciado por: Jeezy en 5 Agosto 2018, 17:29 pm



Título: Dll Injection
Publicado por: Jeezy en 5 Agosto 2018, 17:29 pm
Hola tengo una pregunta, la inyeccion de un dll a un .exe
las preguntas son las siguientes
El virus seria el .dll?
y si el virus es la dll se inyectaria a un .exe normal?

y la ultima y si el virus es un .dll como podria hacer para convertir el virus en un .dll


Título: Re: Dll Injection
Publicado por: ThunderCls en 6 Agosto 2018, 06:22 am
Hola tengo una pregunta, la inyeccion de un dll a un .exe
las preguntas son las siguientes
El virus seria el .dll?
y si el virus es la dll se inyectaria a un .exe normal?

Si deseas crear malware usando dll injection pues es evidente que el malware seria dicha dll, la cual supongo que querrias injectar en todos los procesos (".exe normal") que se encuentren en ejecucion para garantizar la residencia/ejecucion en memoria. Por otra parte si el malware no fuera dicha dll para que querrias usar dll injection de todas formas? No tiene mucho sentido, al menos para mi...pero por supuesto todo depende de el enfoque que quisieras darle a tu malware.

y la ultima y si el virus es un .dll como podria hacer para convertir el virus en un .dll

Supongo que el termino "convertir" no es el mas adecuado en este caso. Si deseas escribir una dll maliciosa no difiere en nada a escribir un dll no maliciosa, es el mismo procedimiento...escribir una dll, lo unico que cambiara sera el codigo que escribas en la misma


Título: Re: Dll Injection
Publicado por: Jeezy en 6 Agosto 2018, 18:45 pm
Dale mi prunga es, a lo que me referia de "convertir", tengo un troyano en.exe hay forma de pasarlo a .dll??


Título: Re: Dll Injection
Publicado por: ThunderCls en 6 Agosto 2018, 19:46 pm
A ver, primero que todo si posees el código fuente del troyano entonces necesitas recompilarlo como DLL. Ten en cuenta que las librerías dinámicas tienen ciertos aspectos que difieren de un simple ejecutable pero teniendo el código fuente del malware no debe ser muy difícil crearte una DLL y pasar el código de un proyecto a otro o recompilar como dll

Por otro lado si no posees el código fuente del malware entonces tendrias que acudir a ciertos métodos para poder lograrlo. Esto es solo teoría, tendrías que hacer las pruebas por ti mismo. Necesitarías tener en el exe dos EP, el regular y un DllMain. Luego tendrías que modificar el PE Header para apuntar el OEP al DllMain, modificar el campo en el OptionalHeader como DllCharacteristics y algún que otro cambio el el Header...e incluso si lograras todo lo anterior no es garantia de que la dll se comporte como esperas...en fin, no es nada trivial como puedes ver, aquí tienes mas información del proceso
https://web.archive.org/web/20090913024008/http://keeper.lubie.org/other_docs/change_exe_to_dll.htm

Supongo que una posible opción para lo que quieres sin llegar a hacer tanto destroso seria la de crearte una sencilla DLL que sera la que inyectes en los procesos y esta DLL podría exportar un par de funciones que trabajarían entonces con tu troyano directamente (ejecutarlo, llamar funciones, etc), lo malo es que necesitarías distribuir ambos ficheros