Recientemente, el equipo Unit 42 de Palo Alto Networks informó de una nueva plataforma de creación de exploits que denominamos “DealersChoice” y que está utilizando el grupo Sofacy (también conocido como APT28, Fancy Bear, STRONTIUM, Pawn Storm y Sednit).  Como destacamos en nuestra publicación original, la plataforma de creación de exploits DealersChoice genera documentos RTF maliciosos que, a su vez, utilizan documentos de Word con objetos OLE incrustados. Estos documentos de Word con objetos OLE incrustados contienen archivos de Adobe Flash (.SWF) integrados, que están diseñados para aprovechar las vulnerabilidades de Adobe Flash.

En el momento del informe inicial, encontramos dos variantes:

  1. Variante A: una variante independiente que incluía código de explotación de Flash empaquetado con una carga.
  2. Variante B: una variante modular que cargaba código de explotación a petición y aparecía no operativa en ese momento.

Desde entonces, hemos podido recopilar muestras adicionales de los documentos convertidos en armas que genera la plataforma de creación de exploits DealersChoice. Estas últimas muestras adicionales son todas de la variante B. Se detectó que dos de estas muestras contenían servidores de comando y control operativos que nos permitieron recopilar y analizar elementos adicionales asociados con el ataque.

A finales de octubre de 2016, Adobe publicó el boletín de seguridad de Adobe APSB16-36 para hacer frente a la vulnerabilidad CVE-2016-7855. A principios de noviembre de 2016, Microsoft publicó el boletín de seguridad de Microsoft MS16-135 para hacer frente a la vulnerabilidad CVE-2016-7255.

Ambos se crearon como respuesta al aprovechamiento activo de las vulnerabilidades de día cero que otros investigadores pensaban que estaban asociadas al grupo Sofacy. Otros informes y nuestro propio análisis indican que el código de explotación para la vulnerabilidad de Adobe Flash CVE-2016-7855 se estaba entregando efectivamente mediante la plataforma DealersChoice. Las pruebas internas también revelan que los clientes de Traps, el agente del endpoint de Palo Alto Networks, están protegidos contra el nuevo código de explotación.

Repárteme cartas: búsqueda de servidores C2 activos

En nuestra anterior publicación de blog en la que analizamos la plataforma DealersChoice, identificamos los pasos que la variante B seguiría una vez ejecutada en el host víctima, pero no pudimos interactuar con el servidor de comando y control (C2) identificado en ese momento.

Desde entonces, hemos descubierto dos servidores C2 totalmente operativos y activos (versiontask[.]com y postlkwarn[.]com) que seguían los pasos exactos que describimos en el blog: se carga el código de explotación de Flash adicional en la memoria y luego se carga la carga asociada también en la memoria. En la figura 1 se detalla el flujo de trabajo de las comunicaciones de la víctima al servidor C2.

dealerschoice2_1

Figura 1. Flujo de trabajo de la plataforma DealersChoice.

El lenguaje ActionScript de la variante B interactuará con el servidor C2, específicamente para obtener un archivo SWF malicioso y una carga. Este proceso comienza con una baliza inicial al servidor C2 que contiene información del sistema y la versión de Adobe Flash Player de la víctima. En la figura 2 se muestra la baliza enviada por el ActionScript al servidor C2.

dealerschoice2_2

Figura 2. Baliza inicial de la plataforma DealersChoice a su servidor C2.

El servidor C2 responde a la baliza inicial con cadenas que el ActionScript de la plataforma DealersChoice utiliza como variables en próximas acciones, como solicitudes HTTP adicionales y el descifrado de las respuestas a dichas solicitudes. En la figura 3 se muestra la respuesta del servidor C2 a la baliza, específicamente con los valores k1, k2, k3 y k4.

dealerschoice2_3

Figura 3. La respuesta del servidor C2 a la baliza proporciona tokens y claves de la plataforma DealersChoice necesarios para descifrar datos.

Luego, el ActionScript utiliza la variable k1 de los datos de respuesta del servidor C2 como un token dentro de la solicitud HTTP enviada de vuelta a dicho servidor para obtener el archivo SWF malicioso, como se puede observar en la figura 4.

El servidor C2 responderá a esta solicitud con datos que el ActionScript descifrará usando el valor de la variable k3.

Los servidores C2 activos proporcionaron a la variante B un archivo SWF malicioso que se trataba del mismo archivo SWF encontrado en las muestras de la variante A que aprovechaba la vulnerabilidad CVE-2015-7645 (abordada en octubre de 2016, en el boletín de seguridad de Adobe APSA15-05).

c42a0d50eac9399914090f1edc2bda9ac1079edff4528078549c824c4d023ff9
45a4a376cb7a36f8c7851713c7541cb7e347dafb08980509069a078d3bcb1405

dealerschoice2_4

Figura 4. Solicitud HTTP de la plataforma DealersChoice para obtener un archivo SWF malicioso con el que usar exploits en Adobe Flash Player.

Tras recibir el archivo SWF malicioso, la variante B emitirá una solicitud HTTP usando la variable k2 como token para obtener su carga, como se puede ver en la figura 5. El servidor C2 responderá a esta solicitud con datos que la variante B descifrará usando el valor de la variable k4 como clave. Los datos descifrados resultantes contienen shellcode y una carga que el shellcode descifra y ejecuta.

dealerschoice2_5

Figura 5. Solicitud HTTP de la plataforma DealersChoice para obtener shellcode y una carga que ejecutar tras crear correctamente los exploits.

Los servidores C2 activos versiontask[.]com y postlkwarn[.]com proporcionaron el shellcode que descifra y ejecuta una carga que, en ambos casos, se trataba de un troyano cargador que extrae y descifra un DLL incrustado que guarda en el sistema.

5dd3066a8ee3ab5b380eb7781c85e4253683cd7e3eee1c29013a7a62cd9bef8c fa8b4f64bff799524f6059c3a4ed5d169e9e7ef730f946ac7ad8f173e8294ed8

En ambos casos, el DLL guardado en el sistema es una variante de la herramienta de Sofacy que utiliza el código fuente Carberp.

82213713cf442716eac3f8c95da8d631aab2072ba44b17dda86873e462e10421 3ff1332a84d615a242a454e5b29f08143b1a89ac9bd7bfaa55ba0c546db10e4b

Las dos variantes de la herramienta Seduploader comparten un dominio C2 común de apptaskserver[.]com, con diferentes dominios C2 de reserva de appservicegroup[.]com y joshel[.]com.

As en la manga: análisis de la huella digital de la víctima

En el proceso de análisis del servidor C2 activo de la variante B, quisimos probar nuestra hipótesis de que el servidor C2 carga un código de explotación distinto en función de la huella digital de la víctima.  Para ello, hemos proporcionado diferentes respuestas al servidor C2.

En primer lugar, emitimos solicitudes al servidor C2 desde una VPN situada en California, EE. UU., y el servidor no respondió a ellas. A continuación, nos conectamos a otra VPN situada en Oriente Medio y emitimos las mismas solicitudes, a las que el servidor C2 respondió con un SWF malicioso y una carga. Esto indica que el grupo Sofacy utiliza la geolocalización para desechar solicitudes que se originan en ubicaciones que no coinciden con la ubicación de su objetivo.

Luego emitimos varias solicitudes para probar el servidor C2 y en cada una de ellas este respondió con distintas variables k1, k2, k3 y k4, lo que sugiere que el servidor elige aleatoriamente estos valores para cada solicitud entrante.

Para analizar aún más la lógica del servidor C2, creamos solicitudes que contenían distintos valores para el sistema operativo y la versión de Flash Player. Cuando enviamos solicitudes HTTP al servidor C2 con la versión de Adobe Flash Player 23.0.0.185, la versión de Flash más reciente vulnerable a CVE-2016-7855, el servidor respondió con un archivo SWF comprimido (SHA256: c993c1e10299162357196de33e4953ab9ab9e9359fa1aea00d92e97e7d8c5f2c) que se aprovechaba de esa vulnerabilidad.

Por último, cuando emitimos solicitudes al servidor C2 indicando que la víctima era un sistema macOS, este respondió con el mismo archivo SWF malicioso y carga de Windows que antes, lo que sugiere que el grupo Sofacy no está utilizando la plataforma DealersChoice para comprobar el tipo de sistema operativo de sus víctimas en este momento.

En todos los casos, la carga entregada por el servidor C2 se trataba de un troyano cargador (SHA256: 3bb47f37e16d09a7b9ba718d93cfe4d5ebbaecd254486d5192057c77c4a25363) que instala una variante de Seduploader (SHA256: 4cbb0e3601242732d3ea7c89b4c0fd1074fae4a6d20e5f3afc3bc153b6968d6e), que utiliza un servidor C2 de akamaisoftupdate[.]com.

Muestra tus cartas: documentos señuelo

En esta oleada de ataques de la plataforma DealersChoice, se recopilaron seis documentos, todos aparentemente de la variante B y que utilizaban señuelos similares a los observados en la oleada anterior. Los seis nombres de archivos que descubrimos fueron los siguientes:

  • Operation_in_Mosul.rtf: un artículo sobre las tropas turcas en Mosul.
  • NASAMS.doc: un documento que consiste en una copia de un artículo sobre la compra de un sistema de defensa con misiles noruego por el Ministerio de Defensa Nacional de Lituania.
  • Programm_Details.doc: un documento que es una copia del programa de una conferencia de información sobre ciberamenazas en Londres, dirigido al Ministerio de Defensa de un país de Europa.
  • DGI2017.doc: un documento dirigido al Ministerio de Asuntos Exteriores de un país de Asia Central sobre el programa de la reunión de Defence Geospatial Intelligence en Londres.
  • Olympic-Agenda-2020-20-20-Recommendations.doc: un documento que contiene detalles de los acuerdos para las Olimpiadas de 2020.
  • ARM-NATO_ENGLISH_30_NOV_2016.doc: un documento en el que se describe un acuerdo entre la República de Armenia y la OTAN.

dealers-choice-figure-6

Figura 6. Documentos señuelo recopilados para la oleada actual de ataques.

A diferencia de los primeros ataques de la plataforma DealersChoice, estos documentos utilizaban metadatos eliminados o falsificados para añadir una capa adicional de camuflaje. Dos de los documentos, NASAMS.doc y Programm_Details.doc, compartían un nombre de usuario único común, pain, en el campo Guardado por. Además, cada uno de los documentos convertidos en arma seguía usando la técnica OfficeTestSideloading sobre la que habíamos informado previamente. Esta era la técnica que descubrimos que el grupo Sofacy empezó a utilizar este último verano como una forma de transferir localmente archivos DLL usando un módulo de prueba de rendimiento integrado en el conjunto de aplicaciones de Microsoft Office, así como para mantener la persistencia en el host víctima.

Nombre de archivo Autor Guardado por Asunto SHA256
Operation_in_Mosul.rtf Robert Tasevski —- Tropas turcas en Mosul f5d3e827…
NASAMS.doc Антон Гладнишки pain Sistema de defensa con misiles noruego 1f81609d…
Programm_Details.doc Laci Bonivart pain Programa de conferencia 1579c7a1…
DGI2017.doc Невена Гамизов Невена Гамизов Programa de conferencia c5a389fa…
Olympic-Agenda-2020-20-20-Recommendations.doc admin User Recomendaciones para las Olimpiadas de 2020 13718586…
ARM-NATO_ENGLISH_30_NOV_2016.doc User User Acuerdo de la OTAN 73ea2cce…

Los seis dominios C2 de primera fase para los documentos convertidos en arma se registraron todos mediante correos electrónicos inscritos únicos. Versiontask[.]com y Uniquecorpind[.]com parecen ser infraestructuras totalmente nuevas que no comparten ningún elemento con otras campañas del grupo Sofacy analizadas anteriormente.

Tipo Dominio Fecha de registro Correo electrónico inscrito
C2 de primera fase Versiontask[.]com 24-10-2016 dalchi0@europe.com
C2 de primera fase Uniquecorpind[.]com 25-10-2016 yasiner@myself.com
C2 de primera fase Securityprotectingcorp[.]com 19-08-2016 ottis.davis@openmailbox.org
C2 de primera fase Postlkwarn[.]com 11-11-2016 fradblec@centrum.cz
C2 de primera fase adobeupgradeflash[.]com 22-11-2016 nuevomensaje@centrum.cz
C2 de primera fase globalresearching[.]org 18-11-2016 carroz.g@mail.com

Se identificaron seis dominios C2 de segunda fase para las cargas Seduploader entregadas por la plataforma DealersChoice.

Tipo Dominio Fecha de registro Correo electrónico inscrito
C2 de Seduploader Joshel[.]com 11-11-2016 germsuz86@centrum.cz
C2 de Seduploader Appservicegroup[.]com 19-10-2016 olivier_servgr@mail.com
C2 de Seduploader Apptaskserver[.]com 22-10-2016 partanencomp@mail.com
C2 de Seduploader Akamaisoftupdate[.]com 26-10-2016 mahuudd@centrum.cz
C2 de Seduploader globaltechresearch[.]org 21-11-2016 morata_al@mail.com
C2 de Seduploader researchcontinental[.]org 02-12-2016 Aislado en sinkhole

De forma muy similar a los dominios C2 de primera fase, los cinco dominios C2 de segunda fase no aislados en sinkholes se registraron recientemente y utilizaban direcciones de correo electrónico únicas inscritas que el grupo Sofacy no había usado anteriormente. Sin embargo, todos estos dominios usaban los servidores de nombres comúnmente asociados con el grupo Sofacy ns*.carbon2u[.]com y ns*.ititch[.]com. El dominio akamaisoftupdate[.]com reveló elementos adicionales que lo vinculaban con las campañas anteriores del grupo Sofacy. Basado en datos DNS pasivos, descubrimos akamaisoftupdate[.]com, que se resuelve en 89.45.67.20. En la misma subred de clase C, descubrimos 89.45.67.189, que se había resuelto anteriormente en updmanager[.]net, un dominio debidamente documentado que utiliza el grupo Sofacy.

También descubrimos que el dominio securityprotectingcorp[.]com tenía vínculos con la anterior infraestructura del grupo Sofacy. Se registró un par de meses antes, pero el análisis de la dirección de correo electrónico inscrita reveló que también había sido utilizado para registrar microsoftsecurepolicy[.]org, que, mediante el uso de datos DNS pasivos, descubrimos que se había resuelto en 40.112.210.240, un sinkhole con otros dominios asociados del grupo Sofacy. El grupo Sofacy había utilizado a lo largo de varios años los correspondientes dominios a los que se les habían aplicado técnicas de sinkhole para varios fines, como servidores C2 para varias herramientas, como Azzy o XAgent, o para alojar sitios de phishing para recopilar credenciales de objetivos.

dealerschoice2_7

Figura 7. Gráfico de la infraestructura de la plataforma DealersChoice.

Conclusión

Parece evidente en estos momentos que el grupo Sofacy está usando de forma activa la herramienta DealersChoice, específicamente la variante B, para atacar objetivos de interés. Como queda demostrado por la entrega de código de explotación para una vulnerabilidad de Flash a la que se ha aplicado un parche recientemente (que se utilizaba en ataques de día cero), podemos ver cómo el malware proporciona flexibilidad en la metodología de explotación y constituye una plataforma en sí mismo. La nueva infraestructura parece haberse creado para la plataforma DealersChoice, pero, como hemos visto en el pasado, el grupo Sofacy tiende a reutilizar elementos de campañas anteriores y esta no es una excepción. Los clientes de Palo Alto Networks pueden obtener más información y están protegidos mediante las siguientes ventajas:

Tenga en cuenta que, aunque CVE-2016-7855 era una vulnerabilidad de día cero, los clientes de Palo Alto Networks habrían estado protegidos por nuestro agente del endpoint Traps, como se puede observar en la figura 8.

dealers-choice-2-8

Figura 8. Traps de Palo Alto Networks bloqueando la explotación de la vulnerabilidad CVE-2016-7855.

Indicadores de compromiso

Hashes de los documentos:

f5d3e827c3a312d018ef4fcbfc7cb5205c9e827391bfe6eab697cc96412d938e
1f81609d9bbdc7f1d2c8846dcfc4292b3e2642301d9c59130f58e21abb0001be
1579c7a1e42f9e1857a4d1ac966a195a010e1f3d714d68c598a64d1c83aa36e4
c5a389fa702a4223aa2c2318f38d5fe6eba68c645bc0c41c3d8b6f935eab3f64
137185866649888b7b5b6554d6d5789f7b510acd7aff3070ac55e2250eb88dab
73ea2ccec2cbf22d524f55b101d324d89077e5718922c6734fef95787121ff22

Servidores C2 de la plataforma DealersChoice:

Versiontask[.]com
Uniquecorpind[.]com
Securityprotectingcorp[.]com
postlkwarn[.]com
adobeupgradeflash[.]com
researchcontinental[.]org

Servidores C2 de Seduploader:

Appservicegroup[.]com
Apptaskserver[.]com
Akamaisoftupdate[.]com
Joshel[.]com
globaltechresearch[.]org
researchcontinental[.]org