Investigadores de ESET descubrieron un actor de amenazas que viene llevando adelante campañas maliciosas enfocadas en usuarios corporativos de Argentina distribuyendo un conocido troyano de acceso remoto (RAT, por sus siglas en inglés) para espiar en los equipos de sus víctimas. Podemos afirmar, con un alto nivel de confianza, que este actor malicioso no es muy sofisticado y que es del mismo país que las organizaciones apuntadas.
Decidimos llamarlo LuxPlague, ya que tras un exhaustivo análisis de distintas muestras de malware utilizadas pudimos determinar que, según los datos de nuestra telemetría, este actor de amenazas es el responsable del mayor porcentaje de detecciones de NjRAT en Argentina, un popular troyano que suele ser utilizado por otros actores maliciosos como plantilla de malware.
Lectura recomendada: njRAT: un troyano de acceso remoto ampliamente utilizado por distintos cibercriminales
A partir del análisis de las muestras que recolectamos del malware, las URL y las direcciones IP asociadas de los servidores de C&C utilizados para controlar remotamente los equipos comprometidos de sus víctimas, creamos un mapa bastante completo de las actividades de este actor malicioso, la cual se remonta al menos a 2018 y se mantenía en actividad a fines de 2021.
Cadena de infección de LuxPlague
Cuando un actor malicioso comienza a enfocarse en un objetivo en particular y utiliza ciertas temáticas específicas resulta más fácil detectar una campaña activa y atribuirla a un determinado grupo. Y esto fue precisamente lo que sucedió con LuxPlague.
Si bien al momento de escribir este artículo este operador se mantiene en actividad, describimos el comportamiento que ha tenido sobre la base de una campaña que hemos descubierto y que comenzó en septiembre 2020. La misma incluía el envío masivo de correos de phishing que pretendía engañar a las potenciales víctimas haciéndole creer que se trataba de una notificación de la Administración Federal de Ingresos Públicos (AFIP) de Argentina.
Los correos que hemos detectado contenían como adjunto un archivo comprimido en formato ZIP que contiene un archivo .vbs con un script que descarga un falso archivo JPG de un servicio web de hosting de archivos.
La falsa imagen JPG es en realidad un script Powershell que contiene al troyano codificado en base64. Una vez decodificado lo ejecuta dinámicamente utilizando funciones de .NET framework, por lo que el script no almacena al troyano en el disco directamente.
Como adelantamos, el malware que utiliza LuxPlague es una variante de NjRAT, un troyano de código abierto que se cree fue desarrollado originalmente en Medio Oriente y cuyo código después se filtró. La variante utilizada por LuxPlague fue creada por el mismo actor que desarrollo LimeRAT, una versión más poderosa de NjRAT que ha sido utilizada por otros cibercriminales en múltiples campañas a lo largo del mundo.
Capacidades del RAT distribuido por LuxPLague:
- Conexión al servidor C&C vía Sockets TCP en tiempo real
- Realizar capturas de pantalla en el equipo comprometido
- Realizar captura de imágenes a través de la cámara web
- Registrar pulsaciones de teclado (Keylogging)
- Ampliar sus capacidades mediante plugins
- Enumeración de ventanas
- Establecer persistencia modificando el Registro de Windows y desinstalación automática del malware
- Actualizarse
- Modificar el registro de Windows
- Descargar archivos comprimidos en formato GZIP, extraer su contenido y ejecutarlo
- Descargar archivos ejecutables desde un servidor web y ejecutarlos
Este RAT está configurado para resolver la IP de la URL avastsecure32.publicvm[.]org, la cual utiliza para conectarse vía TCP por el puerto 3040.
Tras un análisis de las IP asociadas con las distintas URL que identificamos en las muestras creamos una lista bastante completa de varios de los servidores C&C asociados a este actor malicioso:
• avastsecure32.publicvm[.]com
• daleriamz.ddns[.]net
• framework.ddns[.]net
• defenderup64.ddns[.]net
• winup.publicvm[.]com
• pepito1337.hopto[.]org
• updatesvchost.ddns[.]net
• searchwin.ddns[.]net
• microupdate32.ddns[.]net
• owned123.linkpc[.]net
• saynomore.ddns[.]net
• riamz.ddns[.]net
• menem.ddns[.]net
• olala.ddns[.]net
• jamaica123.ddns[.]net
De la fantasía a la realidad
De acuerdo a la campaña que analizamos creemos que el envío de correos de phishing para distribuir la amenaza comenzó con el compromiso de un equipo de una organización gubernamental Argentina. Una vez logrado esto el actor recolectó una base de datos que contenía direcciones de correo de proveedores de todo tipo de industrias, así como de otras organizaciones gubernamentales, para luego utilizar un programa para el envío masivo de malspam.
Si bien el actor de amenazas detrás de LuxPlague no se caracteriza por ser muy sofisticada y esto se observa también en algunas fallas de seguridad presentes en su accionar, vale la pena mencionar que ha continuado probando herramientas para ofuscar binarios y diseminando esta variante de NjRAT a lo largo de todo 2021, por lo que no sabemos cómo utilizará este operador los equipos comprometidos o si habrá algún giro en el objetivo de sus campañas.
Los productos de ESET detectan la variante utilizada por LuxPlague como MSIL/Blandabindi.
Consejos para estar protegido
Considerando que se distribuye a través de correos de phishing, recuerde:
- No abrir correos si duda de que sean verdaderos
- Revisar atentamente la dirección del remitente y si es legítima o no
- No abrir enlaces ni descargar archivos adjuntos en correos enviados por desconocidos
- Revisar la extensión de los archivos adjuntos para ver si el formato verdadero está oculto
- Tener una solución de seguridad instalada en su equipo que detecte el adjunto malicioso
Hashes de la campaña de septiembre de 2020
Hash SHA1 | Nombre de archivo | Nombre de detección de ESET |
---|---|---|
A4E02E1C136641A37A1BEE0A23E1732B17326996 | Notificacion_AFIP.vbs | VBS/TrojanDownloader.Agent.UIS trojan |
BFF251CE126CCA54613BA50E1B4815424B186518 | kzlsh1rsoz84.jpg | PowerShell/Injector.AU |
581873910CB22EE82D16B263DB10F02A4FC4CA2E | MSIL/Bladabindi.AZ trojan |
Tabla de MITRE ATT&CK con algunas técnicas que se han utilizado en variantes de njRAT.
Tecnica ( ID) | Nombre | Descripción | |
---|---|---|---|
T1071 | 0.001 | Application Layer Protocol: Web Protocols | njRAT has used HTTP for C2 communications. |
T1010 | Application Window Discovery | njRAT gathers information about opened windows during the initial infection. | |
T1547 | .001 | Boot or Logon Autostart Execution: Registry Run Keys / Startup Folder | njRAT has added persistence via the Registry key HKCU\Software\Microsoft\CurrentVersion\Run\ and dropped a shortcut in %STARTUP%. |
T1059 | .003 | Command and Scripting Interpreter: Windows Command Shell | njRAT can launch a command shell interface for executing commands. |
.001 | Command and Scripting Interpreter: PowerShell | njRAT has executed PowerShell commands via auto-run registry key persistence. | |
T1555 | 0.003 | Credentials from Password Stores: Credentials from Web Browsers | njRAT has a module that steals passwords saved in victim web browsers. |
T1132 | 0.001 | Data Encoding: Standard Encoding | njRAT uses Base64 encoding for C2 traffic. |
T1005 | Data from Local System | njRAT can collect data from a local system. | |
T1568 | 0.001 | Dynamic Resolution: Fast Flux DNS | njRAT has used a fast flux DNS for C2 IP resolution. |
T1041 | Exfiltration Over C2 Channel | njRAT has used HTTP to receive stolen information from the infected machine. | |
T1083 | File and Directory Discovery | njRAT can browse file systems using a file manager module. | |
T1562 | 0.004 | Impair Defenses: Disable or Modify System Firewall | njRAT has modified the Windows firewall to allow itself to communicate through the firewall. |
T1070 | Indicator Removal on Host | njRAT is capable of deleting objects related to itself (registry keys, files, and firewall rules) on the victim. | |
T1105 | Ingress Tool Transfer | njRAT can download files to the victim’s machine. | |
T1056 | 0.001 | Input Capture: Keylogging | njRAT is capable of logging keystrokes. |
T1112 | Modify Registry | njRAT can create, delete, or modify a specified Registry key or value. | |
T1106 | Native API | njRAT has used the ShellExecute() function within a script. | |
T1571 | Non-Standard Port | njRAT has used port 1177 for HTTP C2 communications. | |
T1027 | Obfuscated Files or Information | njRAT has included a base64 encoded executable. | |
0.004 | Compile After Delivery | njRAT has used AutoIt to compile the payload and main script into a single executable after delivery. | |
T1120 | Peripheral Device Discovery | njRAT will attempt to detect if the victim system has a | |
T1057 | Process Discovery | njRAT can search a list of running processes for Tr.exe. | |
T1012 | Query Registry | njRAT can read specific registry values. | |
T1021 | 0.001 | Remote Services: Remote Desktop Protocol | njRAT has a module for performing remote desktop access. |
T1018 | Remote System Discovery | njRAT can identify remote hosts on connected networks | |
T1091 | Replication Through Removable Media | njRAT can be configured to spread via removable drives | |
T1113 | Screen Capture | njRAT can capture screenshots of the victim’s machines. | |
T1082 | System Information Discovery | njRAT enumerates the victim operating system and computer name during the initial infection. | |
T1033 | System Owner/User Discovery | njRAT enumerates the current user during the initial | |
T1125 | Video Capture | njRAT can access the victim's webcam. |