En este artículo, resumiremos los hallazgos publicados de forma completa en nuestro white paper “Okrum and Ketrican: An overview of recent Ke3chang group activity”.

El grupo Ke3chang también conocido como APT15, es un grupo de amenazas que se cree está operando desde China. Sus actividades se remontan a 2010 en el reporte del año 2013 de FireEye llamado operation Ke3chang – una campaña de ciberespionaje dirigida a organizaciones diplomáticas en Europa.

Hemos estado rastreando las actividades maliciosas relacionadas con este actor malicioso y descubrimos una familia de malware que no había sido documentada anteriormente y que presenta fuertes vínculos con el grupo Ke3chang: un backdoor que llamamos Okrum. Según la telemetría de ESET, Okrum fue detectado por primera vez en diciembre de 2016 y durante 2017 tuvo como blanco misiones diplomáticas en Eslovaquia, Bélgica, Chile, Guatemala y Brasil a lo largo de 2017.

Además, desde 2015 hasta 2019, detectamos nuevas versiones de familias de malware conocidas atribuidas al grupo Ke3chang: backdoors BS2005 de la operación Ke3chang y el malware RoyalDNS, reportado por el Grupo NCC en 2018.

Nota: Nuevas versiones del malware de operación Ke3chang del período 2015-2019 son detectadas por los productos de ESET como Win32/Ketrican y se hace referencia a estos de manera colectiva como backdoors/muestras Ketrican, y son marcados según el año en nuestro white paper y en este artículo.

Línea de tiempo de la investigación

2015: Ketrican

En 2015, identificamos nuevas actividades sospechosas en países europeos. El grupo detrás de los ataques parecía tener un interés particular en Eslovaquia, donde se detectó una gran parte de las muestras de malware descubiertas; Croacia, República Checa y otros países también se vieron afectados.

Nuestro análisis técnico del malware utilizado en estos ataques reveló vínculos estrechos con los backdoors BS2005 de operación Ke3chang y con una familia relacionada al malware TidePool descubierta por Palo Alto Networks en 2016 que tenía como blanco de ataque a embajadas de la India en todo el mundo.

2016-2017: Okrum

La historia continuó a finales de 2016, cuando descubrimos un nuevo backdoor, previamente desconocido, al que llamamos Okrum. Los actores maliciosos detrás del malware Okrum estaban enfocados en los mismos blancos de Eslovaquia que fueron atacados previamente por los backdoors Ketrican 2015.

2017: Ketrican y RoyalDNS

Comenzamos a conectar los puntos cuando descubrimos que el backdoor Okrum era utilizado para droppear un backdoor Ketrican, cuya fecha de compilación data de 2017.

En 2017, las mismas entidades que fueron afectadas por el malware Okrum (y por los backdoors Ketrican en 2015) se convirtieron nuevamente en objetivos de los actores maliciosos. Esta vez, los atacantes utilizaron nuevas versiones del malware RoyalDNS y un backdoor Ketrican de 2017.

2018: Ketrican

En 2018, descubrimos una nueva versión del backdoor Ketrican que presentaba algunas mejoras en el código.

2019: Ketrican

El grupo continúa activo en 2019: en marzo de 2019 detectamos una nueva muestra de Ketrican, que presenta una evolución con respecto al backdoor Ketrican de 2018, la cual se utilizó para atacar los mismos objetivos que el backdoor de 2018.

Esta línea de tiempo de los eventos muestra que, si bien los atacantes se han enfocado en el mismo tipo de objetivos, han estado utilizando diferentes conjuntos de herramientas maliciosas para comprometerlos. En el proceso, expusieron Okrum, un proyecto anteriormente desconocido. La Figura 1 muestra las detecciones de ESET relacionadas a nuestra investigación en el contexto de la actividad Ke3chang previamente documentada.

Figura 1. Línea de tiempo de la actividad previamente documentada del grupo Ke3chang y las detecciones de ESET relacionadas con nuestra investigación

Vínculos con el grupo Ke3chang

Nuestra investigación ha demostrado que los backdoors Ketrican, Okrum y RoyalDNS detectados por ESET después de 2015 están vinculados a la actividad del grupo Ke3chang previamente documentada, y de varias maneras. Estas son las conexiones más importantes:

  • Los backdoors Ketrican de 2015, 2017, 2018 y 2019 evolucionaron con respect al malware utilizado en Operation Ke3chang
  • El backdoor RoyalDNS detectado por ESET en 2017 es similar al backdoor RoyalDNS utilizado en ataques reportados previamente
  • Okrum está vinculado a los backdoors Ketrican al haber sido fue utilizado para droppear un backdoor Ketrican compilado en 2017
  • Okrum, Ketrican y RoyalDNS apuntaban al mismo tipo de organizaciones. Algunas de las entidades afectadas por Okrum fueron también atacadas con uno o más de los backdoors Ketrican/RoyalDNS
  • Okrum tiene un modus operandi similar a los previamente documentados malware de Ke3chang (está equipado con una serie de comandos de backdoor básicos y se apoya en comandos shell escritos de forma manual).

Okrum

Distribución y blancos

Según nuestra telemetría, Okrum se utilizó para atacar misiones diplomáticas en Eslovaquia, Bélgica, Chile, Guatemala y Brasil, y los atacantes mostraron un interés particular en Eslovaquia.

Los operadores del malware intentaron ocultar el tráfico malicioso con su servidor de C&C dentro del tráfico de red regular registrando nombres de dominio aparentemente legítimos. Por ejemplo, las muestras utilizadas contra objetivos eslovacos se comunicaron con un nombre de dominio que simula un portal de mapas eslovaco (support.slovakmaps [.] Com). Un método de enmascaramiento similar se utilizó en una muestra detectada en un país de habla hispana en América del Sur: los operadores utilizaron un nombre de dominio que se traduce como "soporte de misiones" en español (misiones.soportesisco [.] Com).

La forma en que se distribuyó el malware Okrum a las máquinas apuntadas como blanco es una pregunta que queda por responder.

Detalles técnicos

El backdoor Okrum es una biblioteca de enlace dinámico que se instala y carga a través de dos componentes de la etapa anterior. Durante nuestra investigación, la implementación de estos dos componentes fue cambiada con frecuencia. Cada pocos meses, los autores cambiaron de forma activa la implementación de los componentes del instalador y del loader de Okrum para evitar la detección. En el momento de la publicación de este artículo, los sistemas de ESET han detectado siete versiones diferentes del componente del loader y dos versiones del instalador, aunque la funcionalidad sigue siendo la misma.

El payload de Okrum está oculto en un archivo PNG. Cuando se ve el archivo en un visor de imágenes, se muestra una imagen familiar, como se puede ver en la Figura 2, pero los loaders de Okrum pueden localizar un archivo cifrado adicional que el usuario no puede ver. Esta técnica de esteganografía es un intento de los actores maliciosos para pasar desapercibido y evadir la detección.

Figura 2. Una imagen PNG inocua con una DLL maliciosa cifrada embebida en su interior

En cuanto a la funcionalidad, Okrum solo está equipado con comandos de backdoor básicos, como descargar y cargar archivos, ejecutar archivos y comandos de shell. La mayor parte de la actividad maliciosa se debe realizar escribiendo comandos de shell manualmente o mediante la ejecución de otras herramientas y software. Esta es una práctica común del grupo Ke3chang, que también fue señalada anteriormente en los informes de Intezer y NCC Group que monitorean la actividad del grupo Ke3chang.

De hecho, hemos detectado que Okrum abusa de varias herramientas externas, como un keylogger, herramientas para volcar contraseñas o enumerar sesiones de red. Los backdoor de Ketrican que detectamos desde 2015 hasta 2019 utilizaban utilidades similares. Solo podemos adivinar por qué el actor Ke3chang usa esta técnica -tal vez la combinación de un backdoor simple y herramientas externas se adapte completamente a sus necesidades, ya que si bien puede que sean fáciles de desarrollar; puede que también sea para intentar evadir la detección de comportamiento.

Las técnicas de evasión de detección que observamos en el malware Okrum incluyen incrustar la carga maliciosa dentro de una imagen PNG legítima, emplear varios trucos anti-emulación y anti-sandbox, así como realizar cambios frecuentes en la implementación.

Conclusión

Nuestro análisis de los vínculos entre el malware Ke3chang previamente documentado y la puerta trasera Okrum recién descubierta nos permite afirmar con total confianza que Okrum es operado por el grupo Ke3chang. Tras documentar la actividad del grupo Ke3chang desde 2015 hasta 2019, llegamos a la conclusión de que el grupo continúa activo y trabaja para mejorar su código a lo largo del tiempo.

Los nombres de detección de ESET y otros indicadores de compromiso para estas campañas se pueden encontrar en el informe completo: “Okrum and Ketrican: An overview of recent Ke3chang group activity”.

Técnicas de MITRE ATT&CK

Tactic ID Name Description
Execution T1059 Command-Line Interface Okrum’s backdoor uses cmd.exe to execute arbitrary commands.
T1064 Scripting The backdoor uses batch scripts to update itself to a newer version.
T1035 Service Execution The Stage 1 loader creates a new service named NtmsSvc to execute the payload.
Persistence T1050 New Service To establish persistence, Okrum installs itself as a new service named NtmSsvc.
T1060 Registry Run Keys / Startup Folder Okrum establishes persistence by creating a .lnk shortcut to itself in the Startup folder.
T1053 Scheduled Task The installer component tries to achieve persistence by creating a scheduled task.
T1023 Shortcut Modification Okrum establishes persistence by creating a .lnk shortcut to itself in the Startup folder.
Privilege Escalation T1134 Access Token Manipulation Okrum can impersonate a logged on user's security context using a call to the ImpersonateLoggedOnUser API.
Defense Evasion T1140 Deobfuscate/Decode Files or Information The Stage 1 loader decrypts the backdoor code, embedded within the loader or within a legitimate PNG file. A custom XOR cipher or RC4 is used for decryption.
T1107 File Deletion Okrum’s backdoor deletes files after they have been successfully uploaded to C&C servers.
T1158 Hidden Files and Directories Before exfiltration, Okrum’s backdoor uses hidden files to store logs and outputs from backdoor commands.
T1066 Indicator Removal from Tools Okrum underwent regular technical improvements to evade antivirus detection.
T1036 Masquerading Okrum establishes persistence by adding a new service NtmsSvc with the display name Removable Storage in an attempt to masquerade as a legitimate Removable Storage Manager.
T1027 Obfuscated Files or Information Okrum's payload is encrypted and embedded within the Stage 1 loader, or within a legitimate PNG file.
T1497 Virtualization/Sandbox Evasion The Stage 1 loader performs several checks on the victim's machine to avoid being emulated or executed in a sandbox.
Credential Access T1003 Credential Dumping Okrum was seen using MimikatzLite and modified Quarks PwDump to perform credential dumping.
Discovery T1083 File and Directory Discovery Okrum was seen using DriveLetterView to enumerate drive information.
T1082 System Information Discovery Okrum collects computer name, locale information, and information about the OS and architecture.
T1016 System Network Configuration Discovery Okrum collects network information, including host IP address, DNS and proxy information.
T1049 System Network Connections Discovery Okrum used NetSess to discover NetBIOS sessions.
T1033 System Owner/User Discovery Okrum collects the victim user name.
T1124 System Time Discovery Okrum can obtain the date and time of the compromised system.
Collection T1056 Input Capture Okrum was seen using a keylogger tool to capture keystrokes.
Exfiltration T1002 Data Compressed Okrum was seen using a RAR archiver tool to compress data.
T1022 Data Encrypted Okrum uses AES encryption and base64 encoding of files before exfiltration.
T1041 Exfiltration Over Command and Control Channel Data exfiltration is done using the already opened channel with the C&C server.
Command And Control T1043 Commonly Used Port Okrum uses port 80 for C&C.
T1090 Connection Proxy Okrum identifies a proxy server if it exists and uses it to make HTTP requests.
T1132 Data Encoding The communication with the C&C server is base64 encoded.
T1001 Data Obfuscation The communication with the C&C server is hidden in the Cookie and Set-Cookie headers of HTTP requests.
T1071 Standard Application Layer Protocol Okrum uses HTTP for communication with its C&C.
T1032 Standard Cryptographic Protocol Okrum uses AES to encrypt network traffic. The key can be hardcoded or negotiated with the C&C server in the registration phase.