Los investigadores de ESET han descubierto un ataque a la cadena de suministro en el sitio web de un gobierno en el sudeste asiático.
Solo unas semanas después de la ataque a la cadena de suministro en el software Able Desktop, otro ataque similar ocurrió en el sitio web de la Autoridad de Certificación del Gobierno de Vietnam (VGCA): ca.gov.vn. Los atacantes modificaron dos de los instaladores de software disponibles para descargar en este sitio web y agregaron una puerta trasera para comprometer a los usuarios de la aplicación legítima.
Los investigadores de ESET descubrieron este nuevo ataque a la cadena de suministro a principios de diciembre de 2020 y notificaron a la organización comprometida y al VNCERT. Creemos que el sitio web no ha estado entregando instaladores de software comprometidos a finales de agosto de 2020 y los datos de telemetría de ESET no indican que los instaladores comprometidos se distribuyan en ningún otro lugar. La Autoridad de Certificación del Gobierno de Vietnam confirmó que estaban al tanto del ataque antes de nuestra notificación y que notificaron a los usuarios que descargaron el software troyanizado.
Ataque a la cadena de suministro en Vietnam
En Vietnam, las firmas digitales son muy comunes, ya que los documentos firmados digitalmente tienen el mismo nivel de exigibilidad como firmas "húmedas". De acuerdo a Decreto No. 130/2018, los certificados criptográficos utilizados para firmar documentos deben ser otorgados por uno de los proveedores de certificados autorizados que incluyen la VGCA, que forma parte del Comité de Cifrado del Gobierno. Ese comité, a su vez, depende del Ministerio de Información y Comunicación.
Además de emitir certificados, la VGCA desarrolla y distribuye un conjunto de herramientas de firma digital. Es utilizado por el gobierno vietnamita, y probablemente por empresas privadas, para firmar documentos digitales. El compromiso de un sitio web de una autoridad de certificación es una buena oportunidad para los grupos de APT, ya que es probable que los visitantes tengan un alto nivel de confianza en una organización estatal responsable de las firmas digitales.
Como se muestra en la Figura 1, parece que estos programas se implementan en las agencias del Partido y del Estado.

Figura 1. Captura de pantalla de ca.gov.vn
Según la telemetría de ESET, ca.gov.vn se vio comprometido desde al menos 23rd de julio al 16th de agosto de 2020. Dos de los instaladores disponibles para descargar, gca01-client-v2-x32-8.3.msi y gca01-client-v2-x64-8.3.msi, se modificaron para incluir un malware conocido como PhantomNet o SManager y recientemente analizado por Seguridad NTT. Pudimos confirmar que esos instaladores se descargaron de ca.gov.vn sobre el protocolo HTTPS, por lo que creemos que es poco probable que sea un ataque man-in-the-middle. Las URL que apuntan a instaladores maliciosos fueron:
- https://ca.gov (.) vn / documents / 20182/6768590 / gca01-client-v2-x64-8.3.msi
- https://ca.gov (.) vn / documents / 20182/6768590 / gca01-client-v2-x32-8.3.msi
Esto también se confirma con los datos de VirusTotal como se muestra en la Figura 2.

Figura 2. Captura de pantalla de VirusTotal. Muestra la URL de donde se descargó el instalador troyano.
Los instaladores troyanizados no están debidamente firmados, pero notamos que los instaladores limpios de GCA también están firmados incorrectamente (La firma digital del objeto no verificó). Tanto el MSI oficial como el troyano utilizan un certificado asignado a la empresa Safenet.
La Figura 3 es un resumen del ataque a la cadena de suministro. Para verse comprometido, un usuario tendría que descargar y ejecutar manualmente el software comprometido alojado en el sitio web oficial.

Figura 3. Esquema simplificado del ataque a la cadena de suministro.
Una vez descargado y ejecutado, el instalador inicia el programa GCA genuino y el archivo malicioso. El archivo malicioso se escribe en C: Archivos de programa VGCA Authentication SAC x32 eToken.exe. Al instalar también el programa legítimo, los atacantes se aseguran de que los usuarios finales no noten fácilmente este compromiso.
Este archivo malicioso es un simple cuentagotas que extrae un archivo contenedor de Windows (.taxi) llamado 7z.cab y eso contiene la puerta trasera.
Si el cuentagotas se ejecuta como administrador, la puerta trasera se escribe en C: Windows apppatch netapi32.dll y para la persistencia, el cuentagotas registra la DLL maliciosa como un servicio.
Si se ejecuta como un usuario normal, la puerta trasera se escribe en % TEMP% Wmedia
PhantomNet
La puerta trasera fue nombrada Smanager_ssl.DLL por sus desarrolladores pero usamos PhantomNet, ya que ese era el nombre del proyecto utilizado en una versión anterior de esta puerta trasera. Esta versión más reciente fue compilada el 26th de abril de 2020, casi dos meses antes del ataque a la cadena de suministro. Además de Vietnam, hemos visto víctimas en Filipinas, pero lamentablemente no descubrimos el mecanismo de entrega en esos casos.
Esta puerta trasera es bastante simple y la mayoría de las capacidades maliciosas probablemente se implementen a través de complementos adicionales. Puede recuperar la configuración del proxy de la víctima y usarla para comunicarse con el servidor de comando y control (C&C). Esto muestra que es probable que los objetivos estén trabajando en una red corporativa.
PhantomNet utiliza el protocolo HTTPS para comunicarse con sus servidores C&C codificados: vgca.homeunix (.) org y office365.blogdns (.) com. Para evitar un ataque man-in-the-middle, PhantomNet implementa la fijación de certificados, utilizando funciones del SSPI biblioteca. El certificado se descarga durante la primera conexión con el servidor C&C y luego se almacena en el Almacén de certificados de Windows.
Además del uso de proveedores de DNS dinámicos, es interesante notar que el nombre del primer subdominio, vgca, fue elegido para imitar el nombre de la Autoridad de Certificación del Gobierno de Vietnam.
Los atacantes pueden controlar el implante mediante estos cinco comandos:
ID de comando | Descripción |
---|---|
0x00110020 | Obtenga información de la víctima (nombre de la computadora, nombre de host, nombre de usuario, versión del sistema operativo, privilegios de usuario (administrador o no) y la dirección IP pública consultando ipinfo.io). |
0x00110030 | Llame a la exportación DeletePluginObject de todos los complementos instalados. |
0x00110040 | Gestión de complementos (instalar, eliminar, actualizar). Los complementos tienen las siguientes exportaciones (incluido el error tipográfico en el primero): GetPluginInfomation, GetRegisterCode, GetPluginObject, DeletePluginObject. |
0x00110070 | Establezca un valor de un campo determinado en la estructura principal de la puerta trasera. |
0x547CBA78 | Genere y establezca una contraseña usando las funciones SSPI. Se desconoce el propósito final. |
En VirusTotal, encontramos un complemento que coincide con las exportaciones anteriores. Es una compilación de depuración y se denomina SnowballS de acuerdo con su ruta de PDB y otras rutas de depuración:
- E: WorkCode AD_Attacker Server EXE_DEBUG SnowballS.pdb
- e: código de trabajo ad_attacker server plugins plugins snowballs cdomainquery.cpp
Un análisis inicial y superficial sugiere que esta herramienta podría usarse para el movimiento lateral, ya que incorpora Invocar-Mimikatz. También puede recopilar información sobre la máquina víctima y las cuentas de usuario. Esto muestra que PhantomNet puede recibir complementos adicionales y complejos que probablemente solo se implementan en máquinas de particular interés para los operadores de malware.
En el caso del ataque en Vietnam, no pudimos recuperar datos sobre la actividad posterior al compromiso y, por lo tanto, no tenemos visibilidad del objetivo final de los atacantes.
Conclusión
Con el compromiso de Escritorio capaz, el ataque a WIZVERA VeraPort por Lazarus y el reciente ataque a la cadena de suministro SolarWinds Orion, vemos que los ataques a la cadena de suministro son un vector de compromiso bastante común para los grupos de ciberespionaje. En este caso específico, comprometieron el sitio web de una autoridad certificadora vietnamita, en la que es probable que los usuarios tengan un alto nivel de confianza.
Los ataques a la cadena de suministro suelen ser difíciles de encontrar, ya que el código malicioso generalmente está oculto entre una gran cantidad de código legítimo, lo que dificulta mucho su descubrimiento.
Para cualquier consulta, comuníquese con nosotros a través de Threatintel@eset.com. Los indicadores de compromiso también se pueden encontrar en nuestro GitHub repositorio.
Archivos
SHA-1 | Nombre de detección de ESET | Descripción |
---|---|---|
5C77A18880CF58DF9FBA102DD8267C3F369DF449 | Win32 / TrojanDropper.Agent.SJQ | Instalador troyano (gca01-client-v2-x64-8.3.msi) |
B0E4E9BB6EF8AA7A9FCB9C9E571D8162B1B2443A | Win32 / TrojanDropper.Agent.SJQ | Instalador troyano (gca01-client-v2-x32-8.3.msi) |
9522F369AC109B03E6C16511D49D1C5B42E12A44 | Win32 / TrojanDropper.Agent.SJQ | Gotero PhantomNet |
989334094EC5BA8E0E8F2238CDF34D5C57C283F2 | Win32 / PhantomNet.B | PhantomNet |
5DFC07BB6034B4FDA217D96441FB86F5D43B6C62 | Win32 / PhantomNet.A | Complemento PhantomNet |
Servidores C&C
office365.blogdns (.) com
vgca.homeunix (.) org
MITRE ATT & CK
Nota: esta tabla fue construida usando versión 8 del marco MITRE ATT & CK.
Táctica | CARNÉ DE IDENTIDAD | Nombre | Descripción |
---|---|---|---|
Acceso inicial | T1195.002 | Compromiso de la cadena de suministro: Compromiso de la cadena de suministro del software | Los atacantes modificaron el instalador del software GCA01 que está alojado en ca.gov.vn y agregaron una puerta trasera al instalador de MSI. |
Ejecución | T1204.002 | Ejecución del usuario: archivo malicioso | La víctima debe ejecutar manualmente el instalador troyanizado. |
Persistencia | T1053.005 | Tarea / Trabajo programado: Tarea programada | Si el usuario no tiene privilegios de administrador, PhantomNet persiste mediante una tarea programada. |
T1543.003 | Crear o modificar el proceso del sistema: servicio de Windows | Si el usuario tiene privilegios de administrador, PhantomNet persiste a través de un servicio de Windows. | |
Descubrimiento | T1033 | Descubrimiento de propietario / usuario del sistema | PhantomNet implementa una función para recuperar el nombre de usuario. |
T1082 | Descubrimiento de información del sistema | PhantomNet implementa una función para recuperar la versión del sistema operativo. | |
Comando y control | T1090.001 | Proxy: Proxy interno | PhantomNet puede recuperar la configuración de proxy del navegador predeterminado y usarla para conectarse al servidor C&C. |
T1071.001 | Protocolo de capa de aplicación: protocolos web | PhantomNet usa HTTPS. | |
T1573.002 | Canal cifrado: criptografía asimétrica | PhantomNet puede agregar un certificado a la tienda de Windows y usarlo para la fijación de certificados para sus comunicaciones HTTPS. |