Análisis de malware

Mecanismos comunes de persistencia del malware

junio 13, por Ninja de seguridad

Como sabemos, el malware se vuelve más sigiloso al lograr de alguna manera persistencia en la máquina explotada. Esto ayuda a los autores de malware a inyectar/explotar una vez, y el malware continuará actuando incluso después de reiniciar/reiniciar/cerrar sesión, etc. En este artículo, nos centraremos solo en Windows, ya que tiene muchas áreas como puntos de extensión de inicio automático. (ASEP) a través del cual se puede lograr la persistencia. Este artículo contendrá las formas comunes de lograrlo y de ninguna manera es una lista exhaustiva para lograr persistencia en una máquina con Windows.

¡Conviértete en un ingeniero inverso certificado!

Obtenga capacitación práctica en vivo sobre análisis de malware desde cualquier lugar y conviértase en un analista certificado de ingeniería inversa. Comienza a aprender

Formas comunes de lograr la persistencia utilizadas por el malware

Modificar claves de registro

El malware suele utilizar la modificación de las claves de registro para lograr persistencia en un sistema. A continuación se muestran algunos de los valores/ubicaciones de registro más comunes explotados por malware.

Teclas Ejecutar/Ejecutar una vez

Como dije anteriormente, Windows tiene muchos puntos de extensión de inicio automático (ASEP). Cuando se trata de malware, a la mayoría de ellos les gustaría lograr persistencia editando las siguientes claves de registro:

Las claves enumeradas anteriormente están a nivel de usuario y, a menudo, el análisis de malware las utiliza para lograr persistencia si no se pueden aprovechar los privilegios de nivel de administrador/sistema.

De lo contrario, el malware infecta estas claves a nivel del sistema.

Tecla BootExecute

Dado que smss.exe se inicia antes de que se cargue el subsistema de Windows, llama al subsistema de configuración para cargar la colmena presente en HKLMSYSTEMCurrentControlSetControlhivelist. Además, smss.exe iniciará cualquier cosa presente en la clave BootExecute en HKEY_LOCAL_MACHINESYSTEMControlSet002ControlSession Manager. Siempre debe tener el valor de autocheck autochk*. Si contiene más valores, es probable que el malware se inicie durante el arranque.

Claves utilizadas por el proceso WinLogon

El proceso Winlogon utiliza el valor especificado en la clave Userinit para iniciar scripts de inicio de sesión, etc. Esta clave se encuentra en HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionWinlogon. Por lo general, la clave userinit apunta a userinit.exe, pero si esta clave se puede modificar, Winlogon también iniciará ese exe.

Dado que Winlogon maneja la secuencia de atención segura (SAS) (Ctrl+Alt+Supr), las subclaves de notificación que se encuentran en HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionWinlogonNotify se utilizan para notificar los controladores de eventos cuando ocurre SAS y carga una DLL. Esta DLL se puede editar para que se inicie cada vez que se produzca dicho evento SAS.

Señalada por la clave ubicada en HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionWinlogonShell, esta clave apunta a explorer.exe (interfaz de Windows) y solo debe ser la cadena explorer.exe en lugar de la ruta completa, ya que se supone que se inicia desde Windows. La clave de inicio en HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionIniFileMappingsystem.iniboot apunta a la ubicación en Winlogon únicamente.

Teclas de inicio

Los autores de malware suelen utilizar la colocación de un archivo malicioso en el directorio de inicio. Cualquier acceso directo creado a la ubicación señalada por la subclave Inicio iniciará el servicio durante el inicio de sesión/reinicio. La ubicación de inicio se especifica tanto en la máquina local como en el usuario actual.

Servicios

Objetos auxiliares del navegador (BHO)

AppInit_DLL

Claves de asociación de archivos

Secuestro de orden de búsqueda de DLL

Otro método común utilizado por el malware es secuestrar un concepto sobre cómo el sistema operativo carga archivos DLL. Cada vez que se carga un exe (incluso explorer.exe), sigue una búsqueda de ruta determinada para cargar las DLL necesarias. Debido a que las DLL se cargan en el orden en que se analizan los directorios, es posible agregar una DLL maliciosa con el mismo nombre en un directorio anterior al directorio donde reside la DLL legítima. Si el modo de búsqueda segura de DLL está habilitado (que es el predeterminado en la mayoría de las versiones), el sistema operativo verificará si la DLL ya está cargada en la memoria o si es parte de la clave de registro de DLL conocidas ubicada en HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerKnownDLLs. Si el sistema operativo no puede encontrar la DLL en ninguno de estos, entonces la búsqueda de DLL comienza en el siguiente orden

Por lo tanto, el malware puede colocar fácilmente una DLL maliciosa en el orden de búsqueda. Se pueden encontrar más detalles sobre esto aquí.

Secuestro de atajos

Otra técnica simple pero muy efectiva es secuestrar el atributo Target de los íconos de acceso directo. Junto con el inicio de una aplicación normal, se puede forzar el ícono de acceso directo a descargar contenido de un sitio maligno.

Tenga en cuenta que existen varios otros métodos, como infectar MBR, secuestrar objetos COM, etc., que también son realizados por malware, pero a continuación se detallan algunos de los métodos comunes utilizados por el malware para lograr persistencia.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *