Resumen

Un grupo de APT al que denominamos BackdoorDiplomacy, debido a sus principales blancos de ataque, ha estado apuntando a Ministerios de Relaciones Exteriores y empresas de telecomunicaciones de África y Oriente Medio desde al menos 2017. Como vectores de infección inicial, el grupo ha estado aprovechando la explotación de dispositivos vulnerables expuestos a Internet, como servidores web e interfaces de gestión para equipos de red. Una vez dentro de un sistema, sus operadores utilizan herramientas de código abierto para escanear el entorno y realizar movimiento lateral. El acceso interactivo se logra de dos maneras: (1) a través de un backdoor personalizado que llamamos Turian que deriva del backdoor Quarian; y (2) en menos casos, cuando se requiere un acceso más directo e interactivo, se implementan ciertas herramientas de acceso remoto de código abierto. En varios casos, se ha observado que el grupo tiene como objetivo los medios extraíbles para la recopilación y exfiltración de datos. Finalmente, tanto los sistemas operativos Windows como Linux han sido blancos de ataque.

Vínculos con grupos conocidos

BackdoorDiplomacy comparte puntos en común con varios otros grupos asiáticos. El más obvio de ellos es la conexión entre el backdoor Turian y el backdoor Quarian. Detalles sobre la conexión Turian-Quarian pueden verse en la sección Turian de este mismo artículo. Creemos que este grupo también está relacionado con un grupo al que Kaspersky se refirió como "CloudComputating" que también fue analizado por Sophos.

Varias víctimas se vieron comprometidas a través de mecanismos que coinciden estrechamente con las campañas Rehashed Rat y MirageFox-APT15 documentada por Fortinet en 2017 e Intezer en 2018, respectivamente. Los operadores de BackdoorDiplomacy hicieron uso su propia forma implementar la técnica DLL Search-Order Hijacking.

Finalmente, el método de cifrado de red que utiliza BackdoorDiplomacy es bastante similar a un backdoor que Dr.Web llama Backdoor.Whitebird.1. Whitebird se utilizó en ataques contra instituciones gubernamentales en Kazajstán y Kirguistán (ambos vecinos de una víctima de BackdoorDiplomacy en Uzbekistán) durante el mismo período (de 2017 hasta el presente) en el que BackdoorDiplomacy ha estado activo.

Victimología

Quarian se utilizó para atacar al Ministerio de Relaciones Exteriores de Siria en 2012, así como al Departamento de Estado de EE. UU. en 2013. Esta tendencia de apuntar a los Ministerios de Relaciones Exteriores continúa con Turian.

Se han descubierto víctimas en los Ministerios de Relaciones Exteriores de varios países africanos, así como en Europa, Oriente Medio y Asia. Otros blancos adicionales incluyen empresas de telecomunicaciones en África y al menos una organización benéfica en Oriente Medio. En cada caso, los operadores emplearon tácticas, técnicas y procedimientos (TTP) similares, pero modificaron las herramientas utilizadas, incluso en regiones geográficas cercanas. Esto probablemente haya sido para dificultar el seguimiento del grupo. Consulte la Figura 1 para ver un mapa de víctimas por país.

Figura 1. Víctimas por país

Vectores de ataque

BackdoorDiplomacy apuntó a servidores con puertos expuestos a Internet, probablemente explotando vulnerabilidades sin parchear o la pobre implementación de la seguridad de carga de archivos. En un caso específico, observamos a los operadores explotar una vulnerabilidad en F5 BIG-IP (CVE-2020-5902) para droppear un backdoor para Linux. En otro caso vimos que un servidor de Microsoft Exchange fue explotado a través de un dropper en PowerShell que instaló China Chopper, un conocido webshell que desde 2013 ha estado en uso por varios grupos. En un tercer caso observamos un servidor Plesk con una débil configuración de la seguridad de carga de archivos ejecutar otra webshell similar a China Chopper. Observe la Figura 2 para obtener una descripción general de la cadena de explotación.

Figura 2. Cadena de explotación desde el compromiso inicial hasta el backdoor con comunicaciones con el C&C

Reconocimiento y movimiento lateral

Tras el compromiso inicial, en muchos casos el grupo BackdoorDiplomacy empleó herramientas red team y de reconocimiento de código abierto para evaluar posibles oportunidades de objetivos adicionales y para realizar movimiento lateral. Entre las herramientas documentadas se encuentran las siguientes:

  • EarthWorm, un simple túnel de red con servidor SOCKS v5 y funcionalidades de transferencia de puertos
  • Mimikatz y varias versiones, incluido SafetyKatz
  • Nbtscan, un escáner de NetBIOS de línea de comandos para Windows
  • NetCat, una utilidad de red que lee y escribe datos a través de conexiones de red.
  • PortQry, una herramienta para mostrar el estado de los puertos TCP y UDP en sistemas remotos
  • SMBTouch, utilizado para determinar si un blanco de ataque es vulnerable a EternalBlue
  • Varias de las herramientas filtradas de la NSA por ShadowBrokers que incluyen, entre otras:
    • DoublePulsar
    • EternalBlue
    • EternalRocks
    • EternalSynergy

Los directorios de uso común para las herramientas de reconocimiento de etapas y movimiento lateral incluyen:

  • C:\Program Files\Windows Mail\en-US\
  • %LOCALAPPDATA%\Microsoft\InstallAgent\Checkpoints\
  • C:\ProgramData\ESET\ESET Security\Logs\eScan\
  • %USERPROFILE%\ESET\ESET Security\Logs\eScan\
  • C:\Program Files\hp\hponcfg\
  • C:\Program Files\hp\hpssa\
  • C:\hp\hpsmh\
  • C:\ProgramData\Mozilla\updates\

De las herramientas enumeradas anteriormente, muchas estaban ofuscadas con VMProtect (v1.60-2.05).

Windows

Droppers de backdoor

En algunos casos, se observó a los operadores cargar droppers de backdoors. Los operadores intentaron disfrazar sus droppers de backdoor y evadir la detección de varias maneras.

  • Mediante convenciones de nombres diseñadas para integrarse en operaciones normales (por ejemplo  amsc.exe, msvsvr.dll, alg.exe)
  • Liberando implantes en carpetas con nombres de software legítimo (p. Ej., C:\Program Files\hp, C:\ProgramData\ESET, C:\ProgramData\Mozilla)
  • DLL search order hijacking

En uno de esos casos, los operadores cargaron a través de un webshell, tanto ScnCfg.exe (SHA-1: 573C35AB1F243D6806DEDBDD7E3265BC5CBD5B9A), un ejecutable legítimo de McAfee, y vsodscpl.dll, una DLL maliciosa que lleva el nombre de una DLL legítima de McAfee que es llamada por ScnCfg.exe. La versión de vsodscpl.dll (SHA-1: FCD8129EA56C8C406D1461CE9DB3E02E616D2AA9) implementada fue llamada por ScnCfg.exe, y en un momento vsodscpl.dll extrajo Turian (embebido en su código), lo escribió en memoria y lo ejecutó.

En un sistema diferente, los operadores droppearon en el disco una copia legítima de credwize.exe, el Asistente para copia de seguridad y restauración de credenciales de Microsoft, y lo usaron para ejecutar la biblioteca maliciosa New.dll, otra variante de Turian.

Turian

Aproximadamente la mitad de las muestras que recolectamos fueron ofuscadas con VMProtect. En la sección Comandos del operador se incluye una compilación de los comandos del operador que observamos. También se discuten de manera individual los esquemas de cifrado de red.

Similitudes con Quarian

El informe inicial de Kaspersky señala que las víctimas de Quarian estaban en el Ministerio de Relaciones Exteriores de Siria, un objetivo similar de Turian.

En muchas de las muestras que recolectamos de Turian observamos similitudes obvias con Quarian. Ambos utilizan los mutex para verificar que solo se está ejecutando una instancia, aunque los nombres de los mutex utilizados son diferentes. Observamos los siguientes mutex utilizados por Turian:

  • winsupdatetw
  • clientsix
  • client
  • updatethres
  • Otros: generados dinámicamente según el nombre de host del sistema, limitado a ocho caracteres hexadecimales, minúsculas y precedidos de un cero a la izquierda

Los dominios del servidor C&C y las direcciones IP se extraen con rutinas XOR similares, donde Quarian usa una clave de descifrado de 0x44, Turian usa 0xA9.

Turian y Quarian leen los primeros cuatro bytes del archivo cf en el mismo directorio que el ejecutable del malware, y luego utilizan esto como la duración de suspensión como parte de la rutina de beacon del C&C.

El proceso de conexión a la red de Turian sigue un patrón similar al de Quarian, intentando establecer una conexión directa. Si eso falla debido a un proxy local con una respuesta de 407 (autorización requerida), ambos intentan usar credenciales almacenadas en caché local. Sin embargo, la solicitud enviada al proxy por Turian no contiene ninguno de los errores gramaticales que envió Quarian. Observe la Figura 3 para ver una comparación de los intentos de conexión del proxy.

Figura 3. Comparación de intentos de conexión de proxy, Turian (izquierda) y Quarian (derecha)

Finalmente, tanto Turian como Quarian crean una shell remota copiando cmd.exe a alg.exe.

Persistencia

Después de la ejecución inicial, Turian establece la persistencia creando el archivo tmp.bat en el directorio de trabajo actual, escribiendo las siguientes líneas en el archivo y luego ejecutando el archivo:

ReG aDd HKEY_CURRENT_USER\sOFtWArE\MIcrOsOft\WindOwS\CurRentVeRsiOn\RuN /v Turian_filename> /t REG_SZ /d “<location_of_Turian_on_disk>\<Turian_fiilename>” /f

ReG aDd HKEY_LOCAL_MACHINE\sOFtWArE\MIcrOsOft\WindOwS\CurRentVeRsiOn\RuN /v <Turian_filename> /t REG_SZ /d “<location_of_Turian_on_disk>\<Turian_fiilename>” /f

del %0

Turian luego verifica la presencia del archivo Sharedaccess.ini en su directorio de trabajo. Si ese archivo está presente, Turian intenta cargar la IP del C&C o el dominio desde allí, si está presente. Si bien no observamos que Turian pasara IP o dominios de esta manera, las pruebas confirmaron que Turian busca cargar primero la dirección C&C desde aquí. Después de comprobar Sharedaccess.ini, Turian intenta conectarse con una IP o dominio hardcodeada y configura su protocolo de cifrado de red.

Cifrado de red

Se sabe que Quarian ha utilizado tanto una clave XOR de ocho bytes (ver Quarian: Reversing the C&C Protocol} de Talos) y un nonce de ocho bytes para crear una clave de sesión (ver el análisis de ThreatConnect del protocolo de red de Quarian en Divide and Conquer: Unmasking China’s ‘Quarian’ Campaigns Through Community). Turian tiene un método distinto para intercambiar claves de cifrado de red. Consulte la Figura 4 para ver un desglose de la configuración de cifrado de red de Turian.

Figura 4. Configuración de cifrado de red de Turian

Después de recibir el último paquete de 56 bytes, Turian llama a la función de inicialización de cifrado de red en la Figura 5 y acepta los 56 bytes de datos del último paquete C&C como único argumento.

Figura 5. Vista descompilada con Hex-Rays de la función de inicialización de la clave de cifrado

También se observó una segunda configuración de cifrado de red, como se muestra en la Figura 6.

Figura 6. Segundo protocolo de configuración de cifrado de red de Turian

La última iteración del loop de cuatro iteraciones (byte QWORD [5]) se utiliza como seed para la clave de la función de inicialización, como se muestra a continuación en la Figura 7.

Figura 7. Segunda clave de la función de inicialización

Comandos del operador

La lista completa de comandos de operador de Turian se muestra en la Tabla 1 (en inglés).

ID Description
0x01 Get system information including OS version, memory usage, local hostname, system adapter info, internal IP, current username, state of the directory service installation and domain data.
0x02 Interactive shell – copy %WINDIR%\system32\cmd.exe to %WINDIR%\alg.exe and spawn alg.exe in a new thread.
0x03 Spawn a new thread, acknowledge the command and wait for one of the three-digit commands below.
0x04 Take screenshot.
0x103/203 Write file.
0x403 List directory.
0x503 Move file.
0x603 Delete file.
0x703 Get startup info.

Tabla 1. Comandos del C&C de Turian (en inglés)

Apuntando a medios extraíbles

Un subconjunto de víctimas fue atacado con ejecutables de recopilación de datos que fueron diseñados para buscar medios extraíbles (probablemente unidades flash USB). El implante busca de forma rutinaria dichos medios extraíbles (el valor de retorno de GetDriveType es 2). Si encuentra, el implante utiliza una versión integrada de WinRAR para ejecutar estos comandos hardcodeados:

  • CMD.exe /C %s a -m5 -hp1qaz@WSX3edc -r %s %s\\*.*
  • CMD.exe /C %s a -m5 -hpMyHost-1 -r %s %s\\*.*
  • CMD.exe /C rd /s /q \"%s"\

Los parámetros del comando se dividen en:

  • a == añadir ficheros al archivo
  • -m[0:5] == nivel de compresión
  • -hp<password>
  • -r == recurrir a los subdirectorios
  • rd == remover directorio
  • /s == borrar árbol de directorio
  • /q == modo silencioso
  • \"%s"\ == directorio en el cual actuar

El implante, al detectar que se está insertando un medio extraíble, intenta copiar todos los archivos en la unidad a un archivo protegido con contraseña y coloca el archivo en el siguiente directorio, que está codificado y, por lo tanto, es el mismo para todas las víctimas:

  • C:\RECYCLER\S-1-3-33-854245398-2067806209-0000980848-2003\

El implante también tiene la capacidad de eliminar archivos, según el tercer comando mencionado anteriormente.

Herramientas de acceso remoto

Ocasionalmente, los operadores de BackdoorDiplomacy requieren un mayor grado de acceso o más interactividad que el proporcionado por Turian. En esas ocasiones, emplean herramientas de acceso remoto de código abierto como Quasar, que ofrece una amplia variedad de capacidades y se ejecuta en prácticamente todas las versiones de Windows.

Linux

Descubrimos, a través de un dominio de servidor C&C compartido, un backdoor de Linux que usaba una infraestructura de red similar y que se implementó después de explotar una vulnerabilidad conocida en la Traffic Management User Interface (TMUI de los balanceadores de carga F5 BIG-IP, que permite la ejecución remota de código (RCE). La variante de Linux intenta persistir escribiéndose en /etc/init.d/rc.local.

A continuación, se ejecuta a través de un loop para extraer strings de la memoria:

  • bash -version
  • echo $PWD
  • /bin/sh
  • /tmp/AntiVirtmp
  • eth0
  • /proc/%d/exe

Luego, llama a su función daemon y crea un proceso hijo que luego comienza el trabajo de descifrar la dirección IP del C&C y/o el nombre de dominio y luego inicia un loop que llega al C&C usando Mozilla/5.0 (X11; Linux i686; rv:22.0) Firefox/22.0 como su agente de usuario. Este loop del C&C continúa hasta que se realiza una conexión exitosa. Una vez que se establece una conexión, el agente de Linux pasa por una configuración de cifrado de red similar a la que realiza la versión de Windows de Turian. Consulte la Figura 8 para ver el protocolo de cifrado de red utilizado por la variante Linux de Turian.

Figura 8. Variante para Linux de Turian: rutina de configuración del protocolo de cifrado de red

Después de recibir el último paquete de 56 bytes, el agente de Linux llama a la función de inicialización de la clave de cifrado de red que se muestra en la Figura 9.

Figura 9. Función de inicialización de clave de cifrado de red descompilada con Hex-Rays

Una vez completada con éxito la configuración del protocolo de red, se bifurca otro proceso secundario e intenta generar una shell TTY inversa:

  • python -c 'import pty; pty.spawn("/bin/sh")'

Conclusión

BackdoorDiplomacy es un grupo que apunta principalmente a organizaciones diplomáticas en Oriente Medio y África y, con menor frecuencia, a empresas de telecomunicaciones. Su metodología de ataque inicial consiste en explotar aplicaciones vulnerables expuestas a Internet en servidores web, con el fin de droppear y ejecutar un webshell. Después del compromiso, a través del webshell, BackdoorDiplomacy utiliza software de código abierto para el reconocimiento y la recopilación de información, y hace uso de la técnica DLL search order hijacking para instalar su backdoor: Turian. Finalmente, BackdoorDiplomacy emplea de manera separada un ejecutable para detectar medios extraíbles, probablemente unidades flash USB, y copiar su contenido en la papelera de reciclaje de la unidad principal.

BackdoorDiplomacy comparte tácticas, técnicas y procedimientos con otros actores de amenazas asiáticos. Turian probablemente representa una próxima etapa de evolución de Quarian, el backdoor que se observó por última vez en uso en 2013 contra objetivos diplomáticos en Siria y Estados Unidos. El protocolo de cifrado de red de Turian es casi idéntico al protocolo de cifrado de red utilizado por Whitebird, un backdoor operado por Calypso, otro grupo asiático. Whitebird se desplegó en organizaciones diplomáticas en Kazajstán y Kirguistán durante el mismo período de tiempo que BackdoorDiplomacy (2017-2020). Además, BackdoorDiplomacy y APT15 usan las mismas técnicas y tácticas para droppear sus backdoors en los sistemas, la anteriormente mencionada DLL search order hijacking.

BackdoorDiplomacy también es un grupo multiplataforma dirigido a sistemas Windows y Linux. La variante Linux de Turian comparte las mismas características del protocolo de cifrado de red e intenta devolver una shell TTY inversa al operador.

IoCs

Muestras

SHA-1 Filename ESET Detection Name Description
3C0DB3A5194E1568E8E2164149F30763B7F3043D logout.aspx ASP/Webshell.H BackdoorDiplomacy webshell – variant N2
32EF3F67E06C43C18E34FB56E6E62A6534D1D694 current.aspx ASP/Webshell.O BackdoorDiplomacy webshell – variant S1
8C4D2ED23958919FE10334CCFBE8D78CD0D991A8 errorEE.aspx ASP/Webshell.J BackdoorDiplomacy webshell – variant N1
C0A3F78CF7F0B592EF813B15FC0F1D28D94C9604 App_Web_xcg2dubs.dll MSIL/Webshell.C BackdoorDiplomacy webshell – variant N3
CDD583BB6333644472733617B6DCEE2681238A11 N/A Linux/Agent.KD Linux Turian backdoor
FA6C20F00F3C57643F312E84CC7E46A0C7BABE75 N/A Linux/Agent.KD Linux Turian backdoor
5F87FBFE30CA5D6347F4462D02685B6E1E90E464 ScnCfg.exe Win32/Agent.TGO Windows Turian backdoor
B6936BD6F36A48DD1460EEB4AB8473C7626142AC VMSvc.exe Win32/Agent.QKK Windows Turian backdoor
B16393DFFB130304AD627E6872403C67DD4C0AF3 svchost.exe Win32/Agent.TZI Windows Turian backdoor
9DBBEBEBBA20B1014830B9DE4EC9331E66A159DF nvsvc.exe Win32/Agent.UJH Windows Turian backdoor
564F1C32F2A2501C3C7B51A13A08969CDC3B0390 AppleVersions.dll Win64/Agent.HA Windows Turian backdoor
6E1BB476EE964FFF26A86E4966D7B82E7BACBF47 MozillaUpdate.exe Win32/Agent.UJH Windows Turian backdoor
FBB0A4F4C90B513C4E51F0D0903C525360FAF3B7 nvsvc.exe Win32/Agent.QAY Windows Turian backdoor
2183AE45ADEF97500A26DBBF69D910B82BFE721A nvsvcv.exe Win32/Agent.UFX Windows Turian backdoor
849B970652678748CEBF3C4D90F435AE1680601F efsw.exe Win32/Agent.UFX Windows Turian backdoor
C176F36A7FC273C9C98EA74A34B8BAB0F490E19E iexplore32.exe Win32/Agent.QAY Windows Turian backdoor
626EFB29B0C58461D831858825765C05E1098786 iexplore32.exe Win32/Agent.UFX Windows Turian backdoor
40E73BF21E31EE99B910809B3B4715AF017DB061 explorer32.exe Win32/Agent.QAY Windows Turian backdoor
255F54DE241A3D12DEBAD2DF47BAC5601895E458 Duser.dll Win32/Agent.URH Windows Turian backdoor
A99CF07FBA62A63A44C6D5EF6B780411CF1B1073 Duser.dll Win64/Agent.HA Windows Turian backdoor
934B3934FDB4CD55DC4EA1577F9A394E9D74D660 Duser.dll Win32/Agent.TQI Windows Turian backdoor
EF4DF176916CE5882F88059011072755E1ECC482 iexplore32.exe Win32/Agent.QAY Windows Turian backdoor

Red

C&C

AS Hoster IP address Domain
AS20473 AS-CHOOPA 199.247.9[.]67 bill.microsoftbuys[.]com
AS132839 POWER LINE DATACENTER 43.251.105[.]218 dnsupdate.dns2[.]us
#rowspan# 43.251.105[.]222 #rowspan#
AS40065 Cnservers LLC 162.209.167[.]154 #rowspan#
AS132839 POWER LINE DATACENTER 43.225.126[.]179 www.intelupdate.dns1[.]us
AS46573 LAYER-HOST 23.247.47[.]252 www.intelupdate.dns1[.]us
AS132839 POWER LINE DATACENTER 43.251.105[.]222 winupdate.ns02[.]us
AS40065 Cnservers LLC 162.209.167[.]189 #rowspan#
AS25820 IT7NET 23.83.224[.]178 winupdate.ns02[.]us
#rowspan# 23.106.140[.]207 #rowspan#
AS132839 POWER LINE DATACENTER 43.251.105[.]218 #rowspan#
AS20473 AS-CHOOPA 45.76.120[.]84 icta.worldmessg[.]com
AS20473 AS-CHOOPA 78.141.243[.]45 #rowspan#
#rowspan# 78.141.196[.]159 Infoafrica[.]top
#rowspan# 45.77.215[.]53 szsz.pmdskm[.]top
#rowspan# 207.148.8[.]82 pmdskm[.]top
AS132839 POWER LINE DATACENTER 43.251.105[.]139 www.freedns02.dns2[.]us
#rowspan# 43.251.105[.]139 web.vpnkerio[.]com
AS20473 AS-CHOOPA 45.77.215[.]53
AS135377 UCloud (HK) Holdings Group Limited 152.32.180[.]34
AS132839 POWER LINE DATACENTER 43.251.105[.]218 officeupdates.cleansite[.]us
AS25820 IT7NET 23.106.140[.]207 dynsystem.imbbs[.]in
#rowspan# #rowspan# officeupdate.ns01[.]us
#rowspan# #rowspan# systeminfo.oicp[.]net
AS40676 Psychz Networks 23.228.203[.]130 systeminfo.myftp[.]name
#rowspan# #rowspan# systeminfo.cleansite[.]info
#rowspan# #rowspan# updateip.onmypc[.]net
#rowspan# #rowspan# buffetfactory.oicp[.]io

Proveedores DDNS 

Registrar Domain
expdns[.]net update.officenews365[.]com
ezdnscenter[.]com bill.microsoftbuys[.]com
changeip[.]org dnsupdate.dns2[.]us
dnsupdate.dns1[.]us
www.intelupdate.dns1[.]us
winupdate.ns02[.]us
www.freedns02.dns2[.]us
officeupdates.cleansite[.]us
officeupdate.ns01[.]us
systeminfo.cleansite[.]info
updateip.onmypc[.]net
hichina[.]com Infoafrica[.]top
domaincontrol[.]com web.vpnkerio[.]com
exhera[.]com dynsystem.imbbs[.]in
systeminfo.oicp[.]net