Estoy confundido. Me gustaría saber si el secuestro de dll y la inyección de dll son iguales o diferentes. Sé que algunos programas maliciosos lo utilizan para hacer cosas maliciosas.
gracias de antemano
Estoy confundido. Me gustaría saber si el secuestro de dll y la inyección de dll son iguales o diferentes. Sé que algunos programas maliciosos lo utilizan para hacer cosas maliciosas.
gracias de antemano
DLL Secuestro es cuando abusas del orden de búsqueda de la biblioteca para obtener la ejecución en un proceso. El hecho de poder escribir en el directorio donde reside un ejecutable le permite a un actor malintencionado dejar caer una dll con el mismo nombre que el ejecutable solicitará a través de LoadLibrary. Cuando el ejecutable intenta cargar la biblioteca esperada, en su lugar cargará la maliciosa.
Un uso legítimo de ish para DLL Hijacking podría ser agregar funcionalidad a una herramienta de terceros que no sea compatible directamente con los complementos.
MSDN explica los detalles más finos en LoadLibrary entrada.
Vea también esta SO Question
DLL Injection es donde se manipula un proceso en ejecución para cargar la biblioteca deseada. MSDN detalla una forma de hacerlo sin tocar directamente el proceso, a través de SetWindowsHookEx . Otra forma es abrir un proceso, escribir el nombre de biblioteca deseado en su espacio de memoria y luego crear un hilo en el proceso para llamar a LoadLibrary usando ese nombre como búfer. Esta segunda forma se trata en una SO Question