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.