RotaJakiro
RotaJakiro es un backdoor sigiloso diseñado para sistemas Linux de 64 bits, asociado al grupo APT32. Detectado por primera vez en 2018 y manteniéndose indetectado hasta 2021, este malware destaca por su arquitectura modular y su capacidad para adaptarse al nivel de privilegios con el que se ejecuta, ya sea como usuario normal o con privilegios de root. Su estructura flexible le permite extender funcionalidades mediante plugins, lo que le otorga versatilidad en escenarios de espionaje o control persistente sobre el sistema comprometido.
Una de las características más sofisticadas de RotaJakiro es su uso de múltiples técnicas de cifrado combinadas —AES, XOR, ROTATE— junto con compresión ZLIB para proteger tanto los datos internos como la comunicación con su servidor de comando y control (C2). Esta combinación, además de dificultar su detección por herramientas tradicionales, le permite exfiltrar información del sistema de forma encubierta utilizando un protocolo binario personalizado sobre el puerto TCP 443. Asimismo, implementa mecanismos de ofuscación y persistencia que varían dependiendo de la distribución de Linux y del nivel de acceso disponible, como archivos .desktop
, .conf
, .bashrc
o servicios systemd
.
El malware también incorpora técnicas de reconocimiento del entorno como la recolección de información del sistema (uname
, /etc/*release
), descubrimiento de procesos en ejecución, y uso compartido de memoria para comunicación entre procesos maliciosos. Su capacidad para ocultarse mediante nombres legítimos (como systemd-daemon
) y "resucitar" procesos terminados, refuerza su objetivo de mantener una presencia prolongada y oculta en los sistemas infectados. Todo esto convierte a RotaJakiro en una amenaza avanzada con un fuerte enfoque en persistencia, evasión y control remoto.
Funcionamiento
RotaJakiro es un backdoor diseñado específicamente para sistemas Linux de 64 bits, identificado por primera vez en 2018 y vinculado al grupo APT32. El malware permaneció oculto por varios años gracias a sus avanzadas capacidades de ofuscación, técnicas de cifrado rotativo y una arquitectura modular basada en plugins que le permite extender sus funcionalidades tras la infección inicial.
1. Fase inicial y ejecución condicional
Al ser ejecutado, RotaJakiro verifica el nivel de privilegios del proceso para decidir qué rutas de persistencia y ejecución utilizar. Si detecta que tiene acceso como root, utiliza ubicaciones privilegiadas del sistema; si se ejecuta como usuario sin privilegios, opta por rutas dentro del directorio $HOME
.
Durante esta fase también inicia una rutina de descubrimiento del entorno, recopilando información del sistema operativo con comandos como uname
y cat /etc/*release | uniq
. Esta información es almacenada para su posterior envío al servidor C2.
2. Persistencia según nivel de privilegios
RotaJakiro implementa múltiples mecanismos de persistencia según los permisos disponibles:
- Con privilegios de root:
- Crea archivos
.conf
en/etc/init/
(T1037). - Instala servicios
.service
bajo/lib/systemd/system/
(T1543.002), permitiendo ejecución automática al iniciar el sistema.
- Crea archivos
- Sin privilegios de root:
- Coloca archivos
.desktop
en$HOME/.config/autostart/
para iniciar con la sesión gráfica (T1547.013). - Modifica el archivo
.bashrc
añadiendo comandos que ejecutan el malware desde directorios ocultos como${HOME}/.gvfsd/.profile/
(T1546.004).
- Coloca archivos
Estos métodos aseguran que RotaJakiro se ejecute de forma automática tras cada reinicio o apertura de sesión.
3. Ofuscación, cifrado y arquitectura modular
Una de las principales defensas del malware es el uso de un sistema de cifrado rotativo. Utiliza una combinación de algoritmos:
- AES (Advanced Encryption Standard),
- XOR,
- ROTATE (funciones de desplazamiento de bits),
- ZLIB para la compresión de datos.
Estos mecanismos se aplican tanto a los recursos internos del binario como a las comunicaciones de red, dificultando el análisis estático y dinámico del código. Además, las cadenas de texto y estructuras de red son cifradas en tiempo de ejecución, incluyendo información crítica como rutas, comandos o nombres de archivo.
El malware opera bajo una arquitectura de plugins, permitiéndole ejecutar funcionalidades adicionales cargadas dinámicamente mediante dlopen()
y dlsym()
, aprovechando librerías compartidas (.so files). Esto facilita la modularidad y evasión, ya que nuevas capacidades pueden ser introducidas sin alterar el binario principal.
4. Comunicación C2 y exfiltración de datos
RotaJakiro se conecta con un servidor de comando y control (C2) utilizando un protocolo binario personalizado estructurado bajo el esquema Type-Length-Value (TLV), que viaja sobre TCP, generalmente a través del puerto 443 (T1571), simulando tráfico HTTPS para evitar ser detectado fácilmente.
La información enviada al C2 incluye:
- Datos del sistema recolectados automáticamente (T1119, T1082).
- Información de procesos activos (T1057).
- Estado de persistencia.
- Identificadores de sesión.
El contenido de las comunicaciones es cifrado y comprimido (T1132.001, T1573.001), garantizando confidencialidad y reducción del tamaño del tráfico para evadir sistemas de detección de anomalías.
5. Autoprotección y comunicación entre procesos
RotaJakiro implementa un sistema de autoprotección y "resurrección" de procesos. Para ello:
- Utiliza el API
shmget()
para establecer memoria compartida entre procesos maliciosos conocidos (T1559). - Monitoriza constantemente el directorio
/proc/[PID]
y/proc/locks
para verificar el estado de sus procesos. - Si detecta que un proceso ha sido terminado, ejecuta una rutina de auto-resurrección con
execvp()
para reactivar el malware.
Además, el malware utiliza técnicas de enmascaramiento como el uso del nombre systemd-daemon
para parecer legítimo dentro del sistema (T1036.005).
Impacto y consecuencias
RotaJakiro representa una amenaza avanzada y persistente para sistemas operativos Linux de 64 bits, especialmente en entornos donde la supervisión de procesos, la gestión de integridad y los controles de red no son rigurosos. Su arquitectura modular, sus técnicas de evasión y su capacidad de persistencia escalable según los privilegios disponibles permiten una amplia gama de consecuencias técnicas y operativas, que pueden tener un impacto crítico en la seguridad, privacidad y disponibilidad de los activos comprometidos.
1. Compromiso completo y control remoto persistente
Uno de los principales impactos de RotaJakiro es que establece un backdoor funcional y permanente, permitiendo a los atacantes un control remoto completo del sistema afectado. A través de su canal C2 cifrado y modular, los operadores pueden:
- Ejecutar comandos arbitrarios.
- Descargar y ejecutar payloads adicionales.
- Subir o extraer información confidencial.
- Instalar herramientas de espionaje o movimiento lateral. Este control se mantiene incluso tras reinicios del sistema, gracias a los múltiples mecanismos de persistencia implementados, lo que prolonga su presencia sin detección.
2. Evasión y resistencia a mecanismos de detección
RotaJakiro está diseñado para evadir detección durante largos periodos:
- Utiliza nombres de proceso legítimos (
systemd-daemon
) y ubicaciones comunes para parecer benigno. - Todas sus cadenas internas y comunicaciones están cifradas y comprimidas dinámicamente.
- Implementa persistencia que varía según el contexto, evitando patrones fijos. Esto lo hace difícil de detectar por antivirus convencionales, EDRs sin reglas específicas para Linux o entornos con baja visibilidad de procesos de bajo nivel.
3. Riesgo de espionaje y fuga de información
Una de las funciones principales de RotaJakiro es la exfiltración de datos del sistema:
- Información del sistema operativo y arquitectura.
- Procesos en ejecución.
- Rutas de archivos y configuraciones de red.
- Credenciales almacenadas en texto plano o configuraciones de usuario. Dado que la comunicación con el C2 está cifrada (AES + ROTATE + XOR) y viaja por el puerto 443, estos datos pueden ser extraídos silenciosamente, representando una amenaza directa a la confidencialidad y privacidad de la organización o usuario comprometido.
4. Uso de plugins maliciosos y escalabilidad funcional
La arquitectura de RotaJakiro permite que el malware cargue librerías compartidas (.so) dinámicamente, lo cual representa un riesgo de escalabilidad:
- El atacante puede desplegar nuevos módulos sin alterar el ejecutable principal.
- Puede agregar funciones específicas como keyloggers, sniffer de tráfico, módulos de proxy inverso o puertas traseras adicionales.
- Esta modularidad convierte el sistema comprometido en una plataforma flexible para futuras campañas, incluso después del primer acceso.
Esto permite que un compromiso inicial pase de ser un vector de reconocimiento a una plataforma de staging para operaciones más complejas como ataques internos o despliegue de ransomware orientado a Linux.
5. Interrupción operativa y consecuencias indirectas
Aunque RotaJakiro no tiene como objetivo el sabotaje directo ni la destrucción de archivos, su presencia puede derivar en:
- Inestabilidad del sistema al ejecutarse múltiples procesos ocultos en segundo plano.
- Consumo de recursos debido a vigilancia pasiva, extracción de datos o ejecución de tareas persistentes.
- Riesgo de que los atacantes manipulen configuraciones críticas o habiliten accesos secundarios.
- Pérdida de integridad del sistema al modificar archivos
.bashrc
,.desktop
,.conf
y servicios del sistema (systemd
), lo que puede provocar comportamientos erráticos o fallas en servicios dependientes.
Origen y motivación
RotaJakiro es un malware que se atribuye al grupo de amenazas persistentes avanzadas APT32 (también conocido como OceanLotus), una entidad vinculada al gobierno de Vietnam y conocida por realizar operaciones de ciberespionaje dirigidas a objetivos políticos, económicos y tecnológicos en Asia y otras regiones; la motivación detrás de RotaJakiro parece centrarse en el espionaje silencioso y persistente en sistemas Linux, facilitando el acceso remoto, la recolección de información sensible y la instalación de módulos maliciosos adicionales, todo ello sin levantar alertas, lo que refleja un enfoque estratégico y de largo plazo en campañas de inteligencia cibernética.