Ir al contenido principal
|
0 minutos de lectura

Modificación de AsyncRAT: Atacantes Utilizan Python y TryClouflare para Desplegar Malware

Get a Demo of Forcepoint Solutions
  • Mayur Sewani

AsyncRAT es un tipo de malware utilizado para tomar control de sistemas Windows y robar información crítica. Es conocido por ser difícil de detectar y ha sido utilizado por ciberdelincuentes a través de varios tipos de archivos para eludir el software antivirus.

El equipo de investigación de X-Labs de Forcepoint observó recientemente una campaña de malware AsyncRAT que entrega cargas útiles maliciosas mediante un túnel rápido sospechoso de TryCloudflare y paquetes de Python. Los desarrolladores pueden usar la herramienta TryCloudflare para experimentar con Cloudflare Tunnel sin agregar un sitio al DNS de Cloudflare. Esta infraestructura de túnel temporal puede permitir a los atacantes acceder remotamente a grandes cantidades de datos. En algunos casos, encontramos que los atacantes utilizan archivos adjuntos de correo electrónico en HTML para la distribución, en los que se usa el protocolo "search-ms" de Windows y el controlador de protocolo URI "search-ms" para entregar archivos LNK maliciosos y luego scripts Python con bibliotecas de soporte.

En esta publicación del blog, cubriremos nuevos métodos de ataque de AsyncRAT diseñados para abusar de los usuarios a través de "search-ms" para acceder al proyecto WebDAV de “TryCloudflare” y descargar múltiples cargas útiles de malware, incluyendo archivos BAT y scripts de Python especialmente diseñados.

Fig. 1 - Cadena de ataque de AsyncRAT

 

Este ataque se dirige principalmente a los sectores de salud, viajes y banca a través de correos electrónicos de phishing. El siguiente gráfico muestra la frecuencia general de la campaña de malware AsyncRAT en el último mes y cómo ha aumentado en los últimos días:

Fig. 2 - Campañas observadas de AsyncRAT

 

Etapa 1: Análisis de HTML

Los archivos adjuntos incluían enlaces a subdominios sospechosos de [.]trycloudflare[.]com que utilizaban scripts que involucraban el controlador de protocolo URI 'search-ms'. Además, los archivos HTML pueden iniciar el ataque mediante scripts incrustados que activan el controlador de protocolo URI 'search-ms' para acceder a archivos LNK maliciosos desde un servidor WebDAV extendido malicioso escrito en Python. Ejemplo: //\travel-scholar-an-equity[.]trycloudflare[.]com[@]SSL\DavWWWRoot\e_Statement

Fig. 3 - Fragmento de código HTML

 

El HTML contiene search:query con el parámetro “crumb=location:\” para descargar la carga útil desde una ubicación remota específica. En este caso, típicamente descarga un archivo LNK.

Etapa 2: Análisis de .LNK

Una vez que un usuario hace clic en el archivo .LNK, se inicia PowerShell y se descarga un archivo BAT desde el mismo túnel de TryCloudflare

//\ travel-scholar-an-equity[.]trycloudflare[.]com[@]SSL\DavWWWRoot\new.bat y luego este archivo new.bat descargado descargará más cargas útiles de la misma fuente.

Fig. 4 - Proyecto WsgiDAV sospechoso alojado en subdominio de TryCloudflare

 

Etapa 3: Análisis de BAT

El archivo BAT está fuertemente ofuscado e invoca PowerShell para descargar otro archivo batch y un paquete de Python.

PowerShell “Invoke-WebRequest” se utiliza para descargar un paquete de Python grande con scripts .py maliciosos.

También descarga un archivo PDF limpio para ocultar la actividad y muestra ese formulario de factura PDF falso a su víctima.

Fig. 5 - PDF falso

 

Fig. 6 - Nueva ofuscación de .bat

El archivo new.bat desofuscado muestra una secuencia diferente de actividades, como la ejecución de PowerShell, la extracción de archivos zip y la ejecución de scripts .py.

Fig. 6.1 - Archivo new.bat desofuscado

 

PowerShell “Expand-Archive” se utiliza para extraer el archivo en una ruta de destino ya establecida.

 

Comando de extracción:

echo powershell -Command "& { Expand-Archive -Path 'C:\Users\Test\Downloads\DXJS.zip' -DestinationPath 'C:\Users\Test\Downloads' -Force }"

El archivo extraído contiene un paquete de Python 3.12.3 y los scripts de Python info.py, kam.py, moment.py, money.py, time.py, update.py y upload.py.

Fig. 6.2 - New.bat ejecuta scripts de Python, añade otro archivo .bat al inicio

Etapa 4: Análisis de scripts de Python

Estos scripts de Python importan ctypes, que es una biblioteca de funciones externas para Python. Proporciona tipos de datos compatibles con C y permite llamar funciones en DLLs o bibliotecas compartidas. Los scripts contienen grandes cantidades de datos de código shell codificados en base64 y la función rc4_decrypt(). También contiene la función ctypes.windll.kernel32.VirtualProtect(), en la que se pasa el búfer de código shell y su tamaño. Esta función es ampliamente utilizada por atacantes para inyectar código malicioso en procesos legítimos.

Aquí hay un análisis de money.py:

Fig. 7.1 - Money.py

Fig. 7.2 - Money.py (continuación)

 

Los scripts de Python “money.py”, “time.py”, “upload.py”, “update.py”, “kam.py” y “moment.py” inyectan el código shell de AsyncRAT en el proceso legítimo notepad.exe y se conectan a diferentes servidores C2. Solo uno de los scripts de Python descargados, “info.py”, inyecta código shell de Xworm en procesos legítimos. Todos los scripts de Python contienen funciones similares y flujos integrados de base64.

Fig. 8 - Flujo de código shell

 

El archivo BAT descarga más “startupp.bat” ofuscado y lo mueve a la carpeta de inicio para persistencia. También descarga otro archivo zip de paquete de Python y utiliza el archivo “startupp.bat” para ejecutar scripts de Python similares desde este nuevo paquete y se conecta a los mismos servidores C2 con diferentes números de puerto, por ejemplo, ncmomenthv[.]duckdns[.]org:8896 o ncmomenthv[.]duckdns[.]org:6757.

Fig. 9 - Conexión C2 a través de notepad.exe

 

La inyección del proceso se realizará inyectando código shell a través de Early Bird APC Queue.

Fig. 10 - Inyección de proceso

 

Descargar un paquete completo permite a los atacantes apuntar a más víctimas, incluso si no hay una aplicación de Python instalada en el sistema de la víctima. Ejecutar a través de Python e inyectar en procesos legítimos ayuda a evadir diferentes mecanismos de seguridad básicos.

Conclusión:

Esta campaña de AsyncRAT apunta a diferentes sectores explotando "search-ms", una conocida característica de búsqueda de Windows, para descargar cargas útiles desde una infraestructura temporal de túnel de TryCloudflare y abrir una nueva gama de técnicas de ataque. Emplea varios pasos diseñados para ocultar su actividad, comenzando con la ejecución de un archivo LNK, luego descarga un archivo BAT, y finalmente descarga un archivo BAT ofuscado que extrae scripts de Python maliciosos. Engaña al usuario a través de un PDF de factura falso. Estos paquetes de Python permiten a los atacantes acceder fácilmente al sistema de la víctima, incluso cuando la aplicación de Python no está instalada localmente. En el futuro, esperamos ver un aumento de ataques similares que explotan opciones de infraestructura de bajo costo para entregar infostealers y troyanos de acceso remoto.

Declaración de Protección

Los clientes de Forcepoint están protegidos contra esta amenaza en las siguientes etapas del ataque:

  • Etapa 2 (Cebo) - Los archivos adjuntos maliciosos asociados con estos ataques son identificados y bloqueados.
  • Etapa 3 (Redirección) - La URL de TryCloudflare se clasifica bajo la clasificación de seguridad.
  • Etapa 5 (Archivo Dropper) - Los archivos dropper se añaden a la base de datos maliciosa de Forcepoint y se bloquean.
  • Etapa 6 (Llamada a Casa) - Dominio C&C bloqueado.

IOC

URLs Maliciosas:

  • travel-scholar-an-equity[.]trycloudflare[.]com
  • float-suppose-msg-pulling[.]trycloudflare[.]com
  • bangkok-generally-ensemble-nfl[.]trycloudflare[.]com
  • be-broadband-wp-canon[.]trycloudflare[.]com
  • researchers-hrs-auctions-coating[.]trycloudflare[.]com

C2s:

  • ncmomenthv[.]duckdns[.]org
  • xoowill56[.]duckdns[.]org
  • drvenomjh[.]duckdns[.]org
  • vxsrwrm[.]duckdns[.]org
  • ghdsasync[.]duckdns[.]org
  • anachyyyyy[.]duckdns[.]org
  • rvenom[.]duckdns[.]org

Hashes:

  • ab069b312dd07d23e1b0cfe397775c7b37c1c5ad - html
  • 07095f8f4d920b47f788a8ba52a8ab8902faaa5f   - html
  • 16ea141a7d3f622f21a06c694adcb7597707be56 - lnk
  • 77ecf69228836fa6a6c79bc26fe1f98f21b7118a - bat
  • 05839f45d737f73041c8e5d0ba77044592074f6a - bat
  • e6c4bdf3c3c1bc32e49caab17a1f3167d43b3406 - py
  • c9103b859d1cd93ce4a83c782fa4807553120a6d - py
  • 3292a7228bc9c5f20ddeaf106a54838e7b4f188c - py
  • a78711dc104fc079a781e61a06e0abefe4823add - py
  • 83132dda0bd86740c931aec8149f86b30674642a - py
  • d83fa1a7885143b0d851fd8fb04d54b539790609 - py
  • e9853f91bd8a9ed694275fd72f97bdf52775a1d5 - py
  • mayur-sewani.jpg

    Mayur Sewani

    Mayur serves as a Senior Security Researcher as part of the Forcepoint X-Labs Research Team. He focuses on APT malwares, information stealers, phishing attacks, and also works to stay on top of the latest threats. He is passionate about advancing the field of defensive adversary emulation and research.

    Leer más artículos de Mayur Sewani

    En este post

    X-Labs

    Get insight, analysis & news straight to your inbox

    Al Grano

    Ciberseguridad

    Un podcast que cubre las últimas tendencias y temas en el mundo de la ciberseguridad

    Escuchar Ahora