Los investigadores aprovecharon un error en Emotet para detener la propagación de malware

Emotet, un notorio malware basado en correo electrónico detrás de varias campañas de spam impulsadas por botnets y ataques de ransomware, contenía una falla que permitía a los investigadores de seguridad cibernética activar un interruptor de apagado y evitar que el malware infectara los sistemas durante seis meses.

«La mayoría de las vulnerabilidades y exploits sobre los que lees son buenas noticias para los atacantes y malas noticias para el resto de nosotros», dijo James Quinn de Binary Defense.

«Sin embargo, es importante tener en cuenta que el malware es un software que también puede tener fallas. Así como los atacantes pueden explotar las fallas en el software legítimo para causar daño, los defensores también pueden aplicar ingeniería inversa al malware para descubrir sus vulnerabilidades y luego explotarlas para derrotar al programa malicioso».

El interruptor automático estuvo activo entre el 6 de febrero de 2020 y el 6 de agosto de 2020 durante 182 días, antes de que los autores del malware parchearan su malware y cerraran la vulnerabilidad.

Desde su primera identificación en 2014, Emotet ha evolucionado desde sus raíces iniciales como un malware bancario a una «navaja suiza» que puede servir como descargador, ladrón de información y spambot dependiendo de cómo se implemente.

A principios de febrero, desarrolló una nueva función para aprovechar los dispositivos ya infectados para identificar y comprometer a las nuevas víctimas conectadas a redes Wi-Fi cercanas.

Junto con esta actualización de funciones, llegó un nuevo mecanismo de persistencia, según Binary Defense, que «generó un nombre de archivo para guardar el malware en cada sistema víctima, utilizando un nombre de archivo de sistema exe o dll elegido al azar del directorio system32».

El cambio en sí mismo fue sencillo: cifró el nombre del archivo con una clave XOR que luego se guardó en el valor del registro de Windows establecido en el número de serie del volumen de la víctima.

La primera versión del interruptor automático desarrollado por Binary Defense, que se puso en marcha unas 37 horas después de que Emotet revelara los cambios anteriores, empleó un script de PowerShell que generaría el valor de la clave de registro para cada víctima y establecería los datos de cada valor en nulo.

Malware de red de bots emotet

De esta forma, cuando el malware verifique el nombre del archivo en el registro, terminará cargando un exe vacío «.exe», lo que impedirá que el malware se ejecute en el sistema de destino.

«Cuando el malware intenta ejecutar ‘.exe’, no podría ejecutarse porque ‘.’ se traduce al directorio de trabajo actual para muchos sistemas operativos», señaló Quinn.

EmoCrash para frustrar a Emotet

Eso no es todo. En una versión improvisada del interruptor de apagado, llamada EmoCrash, Quinn dijo que pudo explotar una vulnerabilidad de desbordamiento de búfer descubierta en la rutina de instalación del malware para bloquear Emotet durante el proceso de instalación, evitando así que los usuarios se infecten.

Entonces, en lugar de restablecer el valor del registro, el script funciona al identificar la arquitectura del sistema para generar el valor del registro de instalación para el número de serie del volumen del usuario, usándolo para guardar un búfer de 832 bytes.

«Este pequeño búfer de datos era todo lo que se necesitaba para bloquear Emotet, e incluso podría implementarse antes de la infección (como una vacuna) o en medio de la infección (como un interruptor de apagado)», dijo Quinn. «Aparecerían dos registros de fallas con el ID de evento 1000 y 1001, que podrían usarse para identificar puntos finales con binarios de Emotet deshabilitados y muertos después de la implementación del interruptor de interrupción (y un reinicio de la computadora)».

Para mantenerlo en secreto de los actores de amenazas y parchear su código, Binary Defense dijo que se coordinó con los Equipos de Respuesta a Emergencias Informáticas (CERT) y el Equipo Cymru para distribuir el script de explotación de EmoCrash a las organizaciones susceptibles.

Aunque Emotet retiró su método de instalación basado en claves de registro a mediados de abril, no fue hasta el 6 de agosto cuando una actualización del cargador de malware eliminó por completo el código de valor de registro vulnerable.

«El 17 de julio de 2020, Emotet finalmente volvió a enviar spam después de su período de desarrollo de varios meses», dijo Quinn. «Con EmoCrash aún activo al comienzo de su regreso completo, hasta el 6 de agosto, EmoCrash pudo brindar protección total de Emotet».

«¡No está mal para un búfer de 832 bytes!», agregó.

Continua leyendo

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

Newsletter Signup

Suscríbete a nuestra lista si te interesa recibir turcos exclusivos sobre hacking y seguridad informática