Análisis de malware
Malware Bandook: qué es, cómo funciona y cómo prevenirlo
17 de marzo de por Pedro Tavares
El malware Bandook es un troyano de acceso remoto (RAT) que se vio por primera vez en y estuvo activo durante varios años.
Bandook RAT, escrito tanto en Delphi como en C++, fue visto por primera vez como un RAT comercial y desarrollado por un creador libanés llamado PrinceAli. A lo largo de los años, se filtraron en línea varias variantes de Bandook y el malware estuvo disponible para su descarga pública.
Según la investigación de Check Point, Bandook fue visto por última vez en y- en las campañas “Operación Manul” y “Dark Caracal”, respectivamente. Luego, el malware prácticamente desapareció del panorama de amenazas, pero ahora está resurgiendo.
Se están difundiendo docenas de variantes de Bandook firmadas digitalmente en una variedad inusualmente grande de sectores y ubicaciones. Los sectores objetivo son el gobierno, las finanzas, la energía, la industria alimentaria, la atención sanitaria, la educación, las TI y las instituciones jurídicas. Chile, Chipre, Alemania, Indonesia, Italia, Singapur, Suiza, Turquía y Estados Unidos han sido países afectados por esta nueva ola.
Como se han atacado varios sectores y países, se sospecha que el malware no es desarrollado por una sola entidad sino por una infraestructura ofensiva y se vende a gobiernos y actores de amenazas en todo el mundo.
Cómo se distribuye Bandook
La cadena del proceso de infección Bandook contiene tres fases. El proceso comienza con phishing a través de un documento de Microsoft Word con código incrustado entregado en formato de archivo ZIP.
1: Documento de phishing de Bandook utilizado para convencer al usuario de que habilite las macros.
Según el análisis de CheckPoint, este malware utilizaba otras plantillas .doc e incluso plantillas externas con macros.
2: Ejemplos de documentos señuelo y plantillas externas con macros.
Un punto interesante sobre los documentos malspam de Bandook es que después de un cierto período de tiempo, los delincuentes cambian la plantilla externa maliciosa a benigna para evitar las defensas y ofrecer el mejor escenario posible.
La plantilla externa Bandook y la macro VBA
Una vez abiertas, las macros VBA maliciosas se descargan utilizando la plantilla externa a través de URL
acortar servicios web como TinyURL o bit.ly.
3: URL bit.ly dentro del archivo doc que descarga la plantilla externa con macros VBA.
Después de eso, el código de la macro cae y ejecuta la segunda etapa: una carga útil de PowerShell cifrada dentro del documento de Word original. Finalmente, el script de PowerShell descarga y ejecuta la última etapa de Bandook: la puerta trasera. La siguiente imagen muestra el diagrama de alto nivel de esta amenaza.
4: Cadena completa de malware Bandook.
Segunda etapa de Bandook: el cargador PowerShell
Como se describe en la 4, el cargador de PowerShell (fmx.ps1) decodifica y ejecuta un PowerShell codificado en base64 almacenado en el segundo archivo eliminado (sdmc.jpg). Luego, esta carga útil descarga un archivo zip que contiene cuatro archivos de servicios en la nube como Dropbox, Bitbucket o AWS S3. A continuación, el archivo se almacena en la carpeta pública del usuario y se extraen los archivos.
5: Archivos soltados en la carpeta pública del usuario.
Las tres imágenes se utilizan para generar la siguiente carga útil en la misma carpeta. Los archivos a.png y b.png son dos imágenes, pero el untitled.png, a diferencia de los otros dos archivos, tiene un formato de imagen válido. Contiene una función RC4 oculta codificada en los valores RGB de los píxeles. Esta es una técnica utilizada por Bandook para enmascarar su presencia.
Después de eso, el script de PowerShell ejecuta el malware, abre draft.docx y elimina todos los artefactos anteriores de la carpeta pública.
Draft.docx es un documento benigno que convence a la víctima de que el documento ya no está disponible y que la ejecución general fue exitosa.
Última etapa: Bandook en sí
La carga útil final es una variante de Bandook que comienza con un cargador para crear una nueva instancia de un proceso de Internet Explorer e inyectarle una carga útil maliciosa. Aquí, se utiliza una técnica bien conocida llamada Process Hollowing para cargar en la memoria un cargador escrito en Delphi. Delphi es un lenguaje de programación ampliamente utilizado por delincuentes durante operaciones maliciosas, incluidos troyanos latinoamericanos como Javali .
La carga útil se pone en contacto con el servidor C2 y envía información básica sobre la máquina infectada y espera comandos adicionales del servidor. En esta ola, Bandook utilizó una versión personalizada del malware con sólo 11 comandos compatibles:
Comando | Funcionalidad
@0001 Descargar y ejecutar archivo vía HTTP
@0002 Descargar y ejecutar archivo a través de un socket TCP sin formato
@0003 Tomar una captura de pantalla
@0004 Listar unidades
@0005 Listar archivos
@0006 Subir archivo
@0007 Descargar archivo
@0008 Ejecución del shell
@0009 Mover archivo
@0010 Eliminar archivo
@0011 Obtener IP pública
Se ha observado a Bandook en y utilizando certificados de código válidos y firmados para eludir las defensas.
6: Muestras de Bandook firmadas descubiertas por MHT.
En esta ola, también se utilizaron certificados Certum válidos para firmar el ejecutable del malware Bandook.
7: Información de firma válida de una muestra de Bandook recién descubierta.
En general, hay tres variantes de Bandok que están actualmente disponibles en el mercado:
- Una versión completa con 1omandos (no firmada)
- Una versión completa (muestra única) con 1omandos (firmados)
- Una versión reducida con 11 comandos (firmada)
Con estas tres variantes implementadas, los operadores desean reducir la huella del malware y minimizar sus posibilidades de que aumente una campaña no detectada contra objetivos de alto perfil.
Resurgimiento de Bandook
Bandook RAT es un antiguo malware que resurgió el año pasado con tres variantes diferentes y comandos disponibles para reducir las posibilidades de detección. Utilizando un cargador sofisticado con plantillas externas de Word, el malware intenta eludir la detección inicial.
Los certificados de firma de código también se utilizan para evadir la seguridad, ya que se considera un punto de confianza y le permite eludir el control de cuentas de usuario (UAC) cuando solicita al usuario que ejecute el archivo.
No existe una fórmula perfecta para bloquear actividades maliciosas y troyanos, pero se pueden tomar algunas medidas para evitar la exploración de este tipo de escenarios:
- Capacite a los usuarios para que sean conscientes de la posible ingeniería social y de cómo manejarla de la manera correcta.
- No confíes en correos electrónicos de fuentes no confiables
- No abra enlaces ni archivos adjuntos de fuentes no confiables
- Garantizar que el software, las aplicaciones y los sistemas estén actualizados.
- Utilice soluciones de protección de endpoints y antivirus actualizados para prevenir infecciones maliciosas
- Utilice sistemas de monitoreo y gestión de vulnerabilidades para identificar posibles fallas no parcheadas y detectar incidentes en tiempo real.
- Bloquear los indicadores de compromiso (IoCs) en los dispositivos de seguridad correspondientes
- Realizar auditorías de ciberseguridad y mitigar cualquier debilidad descubierta para prevenir ataques en estado salvaje, tanto desde la perspectiva externa como interna.
Matriz de ataque de inglete
Fuentes
Análisis Bandook , CheckPoint