Diseccionando un troyano bancario con VT
Cuando comencé a interesarme por el análisis de malware, pedí consejo a uno de los grandes hackers españoles. Me recomendó instalar Cuckoo; una máquina virtual especializada en este tipo de estudios.
Podemos obtener aceptables resultados con herramientas online, no a la altura de Cuckoo, pero si con la suficiente profundidad para iniciarnos en la heurística -análisis de comportamiento- de muestras de malware; sin las complicaciones inherentes a configurar máquinas virtuales y librerías en Python.
Los troyanos y las botnets que mejor reflejan el inframundo ciber criminal son probablemente los bancarios; aquellos destinados a robar credenciales y dinero.
La infografía del FBI acerca del troyano Zeus nos muestra la jerarquización internacional de estas auténticas redes criminales.
Los programadores de malware desarrollan el código para explotar las vulnerabilidades de las víctimas.
Los piratas de nivel medio e inferior trabajan los aspectos menos técnicos de infección de equipos y gestión de servidores C2.
Las credenciales bancarias son utilizadas para conseguir dinero o bienes que son manejados por las mulas, a cambio de un porcentaje. La parte del león es blanqueada y llega a la organización criminal.
En el caso de Zeus se realizaron más de sesenta detenciones con robos por valor de 70 millones de dólares.
El malware bancario que vamos a diseccionar se denomina Trickbot.
Lo primero que necesitamos para estudiar un troyano es conseguir uno de sus hashes.
Localizado el malware podemos navegar a través de los diversos menús que nos facilita VT.
El SSDeep es un algoritmo de Hash de lógica difusa. Ya hablaremos más adelante de esta avanzada herramienta que utilizan los AV para categorizar familias de malware, y sus ventajas sobre los rígidos algoritmos de hash convencionales.
La imagen tambien nos muestra la mayor probabilidad de que el ejecutable sea de Win 64 bits.
VT nos muestra toda la info correspondiente a un análisis estático realizado con visores PE y algunos datos adicionales: línea temporal, nombres de ficheros creados, secciones PE y la entropía.
La entropía es el grado de desorden de los bits de una sección. Si existe empaquetamiento o cifrado, los datos se muestran inusualmente desordenados. En este caso la sección .data (que contiene las variables globales) exhibe una elevada entropía.
Podemos comprobar todas las librerias importadas con sus correspondientes funciones que usará el malware (o no, no olvidemos que los desarrolladores intentarán confundir al analista).
En libros técnicos podemos encontrar listados de funciones de la API de Windows de uso común en malware. No olvidemos que el desarrollador tambien puede decidir ofuscar la llamada a dichas funciones.
El modo gráfico de VT nos ayudará a comprender las relaciones entre ficheros, aplicaciones, URL´s...
...Y si estamos registrados, la visión es totalmente Pro. Reseñar que los iconos rojos indican ficheros calificados como maliciosos por un cierto número de AV´s.
En la pestaña de Comportamiento podemos desplegar distintas herramientas con resultados de gran interés. Por ejemplo la denominada Dr. Web vxCube.
Podemos estudiar facilmente los ficheros abiertos, escritos y copiados...
...Y los fundamentales cambios en el registro de Windows. Recordemos que determinados fileless malwares habitan unicamente allí, sin grabarse en el disco duro.
En la sección de comentarios, usuarios registrados trabajan con las muestras. En nuestro caso, desofuscando código y mostrando URL´s maliciosas con las que conecta el malware; así como la desactivación de AV como Windows Defender.
Análisis detallado.
Análisis detallado.
Comentarios
Publicar un comentario