Hace tiempo me enfrente a una campaña de Emotet,
más concretamente a sus “downloaders”, como mucha gente.
Mi desesperación fue en aumento por gastar tanto
tiempo en su análisis, y más allá cuando de repente su funcionamiento cambio y
ya no podía manipular sus macros al ejecutar los archivos Word (.doc) en un
entorno controlado, por que se eliminaban tras la primera ejecución.
NOTA: Me gusta entender lo que ejecuto, es mi forma
de seguir aprendiendo.
Ya sólo me quedaba realizar un análisis estático de
los mismos.
Esto siempre lo realizo mediante la apertura de los
archivos como si fuera archivos comprimidos, aunque realmente son eso.
El problema que me encontré es que la información
visualizada no mostraba el código Visual Basic de la macro y por lo tanto su análisis
era imposible.
Así que se me ocurrió fue usar un editor hexadecimal
para ver directamente su contenido, y ahí, ¡vi la luz!.
Visualización del archivo
downloader de Emotet
Pude observar la existencia de un conjunto de caracteres
de sumo interés
Cadena de caracteres encontrado
Se continúo mirando hasta que se llego al final de
los caracteres.
Y se pudo ver que se trataba de una cadena
codificada en base64
Por lo tanto lo único que sé tuvo que hacer fue
extraer y eliminar el patrón, pero ¿qué patrón?
Si nos fijamos bien vemos que el patrón es: _!j@ , pero aún más … podemos decir que se aplica tres veces.
Veamos esto último, para ello cojamos del siguiente
tramo de caracteres mostrado
Más concretamente los caracteres: 6_!_!j@_!j@j@A
Si quitamos
el patrón, la cadena nos queda: 6_!_!j@j@A , si quitamos de nuevo el
patrón, la cadena nos queda: 6_!j@A y si lo quitamos de nuevo, la
cadena nos queda: 6A
Es por esto, por lo que se ha comentado que el
patrón se repite hasta 3 veces.
Sabiendo esto, se paso a extraer los comentados caracteres
y eliminar el patrón tantas veces como sea necesario mediante la automatización.
Para ello se elaboro la siguiente secuencia de comandos de bash:
Que permitió obtener el siguiente resultado:
Si nos fijamos bien, se trata de un script que guarda
entre otras cosas la variable: Lxbvplwvfufaj, cuyo contenido es una
serie de URLs
A través de estas URLs se pudo conseguir muestras
para su análisis, y así configurar distintos IOCs para los sistemas de
seguridad.
En cualquier caso …
Lo que hagas con la información es cosa tuya, no mía
... pero ten conciencia.
WoW !!!
ResponderEliminar