El grupo norcoreano ScarCruft (APT37), según la empresa surcoreana Genians Security Center, ha puesto en marcha una nueva campaña de phishing dirigido utilizando un troyano de acceso remoto NarwhalRAT no documentado hasta ahora. Los atacantes envían correos que imitan notificaciones de seguridad de cuentas de Microsoft, con advertencias sobre actividad anómala y generación repetida de contraseñas de un solo uso. El objetivo es forzar a la víctima a abrir un archivo ZIP adjunto con un archivo LNK malicioso, que inicia una cadena de infección de múltiples etapas. La campaña se dirige a usuarios de Windows y representa una amenaza grave, sobre todo para organizaciones surcoreanas.
Mecanismo de acceso inicial
Como informa Genians, el correo de phishing está diseñado para parecer una notificación legítima de seguridad de Microsoft Account. El texto del mensaje advierte al destinatario sobre actividad sospechosa: supuestos intentos de phishing por parte de terceros relacionados con la regeneración repetida de contraseñas de un solo uso (OTP). Se propone a la víctima revisar el «documento de recomendaciones» adjunto y cambiar la contraseña.
El adjunto se camufla como un documento en formato HWP (Hangul Word Processor, formato estándar de documentos en Corea del Sur), pero en realidad es un archivo ZIP que contiene un archivo LNK malicioso. El objetivo es generar una falsa sensación de urgencia, un recurso clásico de ingeniería social cuya eficacia aumenta cuando se reproduce con precisión el estilo visual de las notificaciones de Microsoft.
Cadena de infección y técnicas de persistencia
La ejecución del archivo LNK inicia una cadena de infección de varias etapas:
- El archivo LNK activa scripts intermedios por lotes (batch scripts), que descargan componentes desde un servidor de mando y control remoto
- Se descarga un ejecutable legítimo de Python desde el sitio oficial, una técnica que dificulta la detección por soluciones antivirus
- De forma simultánea se descarga un archivo de catálogo de seguridad de Windows (archivo CAT), utilizado para entregar la carga útil principal
- La persistencia en el sistema se asegura a través de una tarea programada con el nombre MicrosoftUserInterfacePicturesUpdateTackMachine
- La tarea programada ejecuta el archivo CAT, que extrae y ejecuta la carga útil principal directamente en memoria, sin dejar artefactos en disco
La ejecución en memoria sin escritura en disco es una característica clave que complica significativamente la detección mediante análisis antivirus tradicionales y técnicas de informática forense.
Capacidades de NarwhalRAT
Según los investigadores, NarwhalRAT es un troyano de acceso remoto basado en Python con un amplio conjunto de funciones de recopilación de información:
- Captura de pulsaciones de teclado (keylogging)
- Captura de pantallas, con soporte para imágenes de alta resolución
- Grabación del sonido ambiental a través del micrófono
- Exfiltración del contenido de directorios y recopilación de datos desde dispositivos USB
- Recopilación de información sobre ventanas activas
- Ejecución de comandos recibidos desde el servidor de mando y control (C2)
- Cambio dinámico entre servidores C2
El nombre NarwhalRAT procede de la ruta %APPDATA%\naverwhale, que el malware utiliza para el almacenamiento intermedio de los datos recopilados. El directorio oculto imita la carpeta del navegador Naver Whale, desarrollado por la empresa surcoreana Naver Corporation, una técnica de camuflaje pensada para que administradores y soluciones de seguridad pasen por alto un nombre que les resulta familiar.
Infraestructura de mando y control
El malware utiliza un esquema de comunicaciones multinivel con los servidores de mando y control. Según Genians, como relés principales se emplean sitios web surcoreanos:
- daehoat[.]com
- novel21[.]co.kr
Además, en el código se han encontrado rutinas de interacción con el API del servicio de almacenamiento en la nube pCloud, que procesan los parámetros folderid y auth. Los investigadores consideran que esto implica el uso de un servicio en la nube legítimo como canal de mando y control de reserva según el modelo dead drop resolver (técnica MITRE ATT&CK T1102.001). Este enfoque permite camuflar el tráfico de mando y control como un acceso normal a un almacenamiento en la nube y proporciona tolerancia a fallos en caso de bloqueo de los dominios principales.
Vínculos con campañas anteriores
Genians señala múltiples coincidencias con ataques previamente documentados basados en Python y atribuidos a ScarCruft. En campañas anteriores se utilizaron cebos en forma de confirmaciones de reserva de billetes e invitaciones a eventos, enviados mediante archivos ZIP con archivos LNK. La cadena de infección se construía de forma similar: el archivo LNK descargaba un script por lotes ofuscado, después un ejecutable de Python y un archivo CAT, lo que desembocaba en el despliegue de un script de Python compilado con funciones de ejecución remota de comandos.
Un detalle característico es la convención de nomenclatura similar para las tareas programadas. Mientras NarwhalRAT utiliza el nombre MicrosoftUserInterfacePicturesUpdateTackMachine, en la campaña anterior la tarea se llamaba MicrosoftMusicLibrariesPackageTaskMachine. Ambas cadenas imitan tareas del sistema de Microsoft, siguiendo un mismo patrón de formación de nombres.
Es importante tener en cuenta que la atribución de la campaña al grupo APT37 y la evaluación de las capacidades de NarwhalRAT se basan principalmente en el análisis de un único centro de investigación. A la fecha de publicación, no existe confirmación independiente por parte de otros proveedores o entidades gubernamentales.
Recomendaciones de protección
- Filtrado de adjuntos: configure las pasarelas de correo para bloquear o poner en cuarentena archivos ZIP que contengan archivos LNK. Las notificaciones legítimas de seguridad de Microsoft no incluyen adjuntos de este tipo
- Supervisión de tareas programadas: controle la creación de tareas con nombres largos que imiten componentes del sistema de Microsoft, especialmente aquellas que contengan combinaciones de palabras como «Microsoft*Task*Machine»
- Bloqueo de indicadores de compromiso: añada los dominios daehoat[.]com y novel21[.]co.kr a las listas negras a nivel de DNS y de servidores proxy
- Control de servicios en la nube: si no existe una necesidad empresarial, limite el acceso al API de pCloud a nivel de políticas de red
- Detección de anomalías: configure reglas EDR para identificar la descarga de ejecutables de Python desde internet seguida de la ejecución de scripts, así como para monitorizar la creación de directorios ocultos en %APPDATA% con nombres que imiten software legítimo
- Formación del personal: informe a los empleados de que las notificaciones auténticas de seguridad de Microsoft Account no requieren abrir adjuntos ni incluyen archivos ZIP
La campaña con NarwhalRAT demuestra la evolución del arsenal de APT37 hacia soluciones modulares en Python con ejecución en memoria e infraestructura de mando y control multicanal. Las organizaciones que se encuentran dentro del posible círculo de objetivos del grupo —sobre todo organismos gubernamentales y empresas surcoreanas— deberían priorizar el bloqueo de los indicadores de compromiso mencionados, configurar la monitorización de tareas programadas y restringir la ejecución de archivos LNK procedentes de adjuntos de correo a nivel de directivas de grupo.