Ir al contenido

DLL injection

De Wikipedia, la enciclopedia libre

En programación, la DLL injection es una técnica utilizada para ejecutar lenguaje de máquina dentro del espacio de direcciones de otro proceso forzándolo a cargar una biblioteca de enlace dinámico.[1]​ La DLL injection es utilizada a menudo por los programas externos para influenciar el comportamiento de otro programa de una manera que sus programadores no anticiparon o que no era de su intención.[1][2][3]​ Por ejemplo, el código inyectado podría realizar un hooking de las llamadas de función del sistema,[4][5]​ o leer el contenido de los cuadros de texto de la contraseña, lo que no se puede hacer de la manera habitual.[6]​ Un programa utilizado para inyectar código arbitrario en procesos arbitrarios se denomina DLL inyector.

Referencias

[editar]
  1. a b Shewmaker, James (2006). «Analyzing DLL Injection» (PDF). GSM Presentation (en inglés). Bluenotch. Archivado desde el original el 3 de diciembre de 2008. Consultado el 31 de agosto de 2008. 
  2. Iczelion (Agosto de 2002). «Tutorial 24: Windows Hooks». Iczelion's Win32 Assembly Homepage (en inglés). Archivado desde el original el 1 de agosto de 2008. Consultado el 31 de agosto de 2008. 
  3. Pulley, Rocky (19 de mayo de 2005). «Extending Task Manager with DLL Injection». CodeProject (en inglés). Consultado el 1 de septiembre de 2008. 
  4. Rowhani, Nasser R. (23 de octubre de 2003). «DLL Injection and function interception tutorial». CodeProject (en inglés). Consultado el 31 de agosto de 2008. 
  5. Ivanov, Ivo (2 de diciembre de 2002). «API hooking revealed». CodeProject (en inglés). Consultado el 31 de agosto de 2008. 
  6. Kuster, Robert (20 de agosto de 2003). «Three Ways to Inject Your Code into Another Process». CodeProject (en inglés). Consultado el 31 de agosto de 2008.