BONDUPDATER

De CiberWiki
Revisión del 16:26 29 jul 2026 de Fernando.VH (discusión | contribs.) (Descripción de BONDUPDATER)
(difs.) ← Revisión anterior | Revisión actual (difs.) | Revisión siguiente → (difs.)

BONDUPDATER es una puerta trasera (backdoor) basada en PowerShell utilizada por el grupo de ciberespionaje iraní OilRig (también conocido como APT34). Fue descubierto por primera vez en noviembre de 2017 durante una campaña contra una organización gubernamental de Oriente Medio, y una versión actualizada fue observada en agosto de 2018 en ataques contra otra entidad gubernamental mediante correos de spear-phishing . Su principal característica distintiva es el uso de túneles DNS como canal de Comando y Control (C2), una técnica que permite que las comunicaciones maliciosas se oculten en consultas DNS legítimas, dificultando su detección por firewalls y soluciones de seguridad perimetral . La variante de agosto de 2018 introdujo una innovación significativa: la capacidad de utilizar registros TXT de DNS además de los registros A tradicionales, ampliando las opciones de exfiltración de datos y comandos .

Técnicamente, BONDUPDATER se distribuye mediante documentos de Microsoft Word con macros maliciosas que, al ser habilitadas, crean dos archivos en C:\ProgramData\WindowsAppPool\: un script VBS (AppPool.vbs) y el payload PowerShell (AppPool.ps1). El VBScript establece una tarea programada que se ejecuta cada minuto (schtasks /create /sc minute /mo 1), garantizando la persistencia y ejecución continua del malware . El script PowerShell genera un identificador único para la víctima (una combinación de número aleatorio y GUID), crea directorios para almacenar archivos recibidos y enviados (receivebox, sendbox, done), y se comunica con el C2 mediante un algoritmo de generación de dominios (DGA) . Para evitar múltiples ejecuciones, utiliza un archivo de bloqueo (lock) que contiene el PID del proceso PowerShell y verifica que no haya estado ejecutándose por más de 10 minutos .

El backdoor soporta un conjunto básico de tres comandos, determinados por el carácter final del nombre de archivo recibido del C2: 0 ejecuta comandos a través de cmd.exe y envía la salida al servidor, 1 descarga archivos del sistema, y cualquier otro carácter almacena el archivo recibido para uso futuro . La comunicación C2 se realiza mediante subdominios cuidadosamente construidos que incluyen el identificador de la víctima, números de secuencia y caracteres de acción (M para beacon inicial, 0 y W para proporcionar nombres de archivo, 1 y D para enviar datos, y P para cambiar de TXT a A records si falla el primer método) . La variante de 2018 utiliza un proceso mejorado de transferencia de datos donde el C2 puede iniciar la comunicación respondiendo con una dirección IP específica (99.250.250.199) y luego utilizando registros TXT con instrucciones (N para inactividad, S para recibir datos codificados en Base64, S000s para establecer el nombre de archivo, E para escribir los datos, y C para cancelar), lo que demuestra una evolución continua de las capacidades del malware .

Funcionamiento de BONDUPDATER (técnico y extenso)

Cadena de infección y distribución

BONDUPDATER se distribuye mediante correos de spear-phishing altamente dirigidos que contienen documentos de Microsoft Word maliciosos . En la campaña de agosto de 2018, el correo no tenía asunto y se envió a una oficina de alto rango en una nación de Oriente Medio. El documento adjunto, denominado N56.15.doc (SHA256: 7cbad6b3f505a199d6766a86b41ed23786bbb99dab9cae6c18936afdc2512f00), contenía una macro que iniciaba el proceso de instalación del malware .

Instalación y persistencia

La macro realiza las siguientes acciones:

  1. Creación de archivos: Escribe dos archivos en C:\ProgramData\WindowsAppPool\:
    • AppPool.vbs (SHA256: c0018a2e36c7ef8aa15b81001a19c4127ad7cd21ae410c1f854e5dadfa98b322)
    • AppPool.ps1 (SHA256: d5c1822a36f2e7107d0d4c005c26978d00bcb34a587bd9ccf11ae7761ec73fb7)
  2. Ejecución del VBScript: La macro ejecuta wscript C:\ProgramData\WindowsAppPool\AppPool.vbs.
  3. Creación de tarea programada: El VBScript establece una tarea programada que se ejecuta cada minuto:

cmd.exe /C schtasks /create /F /sc minute /mo 1 /tn "\WindowsAppPool\AppPool" /tr "wscript /b "C:\ProgramData\WindowsAppPool\AppPool.vbs""

  1. Ejecución del payload PowerShell: El VBScript ejecuta PowerShell.exe -exec bypass -file C:\ProgramData\WindowsAppPool\AppPool.ps1.

Mecanismo de control de ejecución única

El script PowerShell implementa un sofisticado mecanismo de control para evitar múltiples instancias:

  • Archivo de bloqueo (lock): Crea C:\ProgramData\WindowsAppPool\lock y escribe el PID del proceso PowerShell actual.
  • Verificación de tiempo de ejecución: Comprueba la hora de creación del archivo de bloqueo y la compara con la hora actual. Si el proceso ha estado ejecutándose más de 10 minutos, termina el proceso basado en el PID almacenado y elimina el archivo de bloqueo.
  • Archivo de identificación (quid): Genera un identificador único para la víctima mediante un número aleatorio entre 10 y 99 concatenado con los primeros 8 caracteres de un GUID.

Estructura de directorios

BONDUPDATER crea los siguientes directorios para almacenar archivos:

  • C:\ProgramData\WindowsAppPool\files (creado pero no utilizado aparentemente)
  • C:\ProgramData\WindowsAppPool\<unique ID>\receivebox (archivos recibidos del C2)
  • C:\ProgramData\WindowsAppPool\<unique ID>\sendbox (archivos a enviar al C2)
  • C:\ProgramData\WindowsAppPool\<unique ID>\done (archivos procesados)

Comandos y procesamiento de archivos

BONDUPDATER utiliza el carácter final del nombre de archivo recibido del C2 como indicador de comando:

Carácter Comando Descripción
0 Ejecutar comando Lee el contenido del archivo y lo ejecuta con cmd.exe. La salida se guarda en sendbox con nombre proc* y se envía al C2.
1 Descargar archivo Lee el contenido del archivo para obtener la ruta del archivo a descargar. Copia el archivo especificado a sendbox para su envío al C2.
Otro Subir archivo Almacena el archivo en el sistema moviéndolo a la carpeta done. Escribe 200<>[ruta del archivo almacenado] en un archivo en sendbox para notificar al C2 que la descarga fue exitosa.

Túneles DNS y protocolo de C2

BONDUPDATER utiliza túneles DNS para comunicarse con su servidor C2, empleando tanto registros A como registros TXT. El dominio C2 identificado en la muestra analizada fue withyourface[.]com.

Formato de generación de subdominios

El malware genera subdominios con el siguiente formato:

Envío de datos:

<GUID con número de parte y carácter de acción><número de secuencia><1-7 caracteres aleatorios>C<índice del número de parte><índice de la acción>T.<chunk de datos>.<nombre de archivo>.<dominio C2>

Recepción de datos:

<GUID con número de parte y carácter de acción><número de secuencia><1-7 caracteres aleatorios>C<índice del número de parte><índice de la acción>T.<dominio C2>

Tipos de acción

Tipo de acción Comunicación A/TXT Propósito
M A/TXT Beacon inicial
0 A Proporcionar nombre de archivo
1 A Proporcionar datos
W TXT Proporcionar nombre de archivo
D TXT Proporcionar datos
P TXT Método TXT falló, notificar al C2 para cambiar a registros A

Método original de transferencia de datos (registros A)

El método original procesaba registros A específicos en las respuestas DNS:

Dirección IP Descripción
24.125.\d.\d Establece el nombre de archivo rcvd\d\d en receivebox para almacenar datos
\d.\d.\d.\d Los primeros tres octetos son datos, el cuarto es un contador de secuencia
1.2.3.\d Instruye al Trojan a escribir los datos en el archivo y comenzar a procesarlo

Método mejorado de transferencia de datos (registros TXT)

La variante de agosto de 2018 introdujo un nuevo método que utiliza registros TXT para transmitir datos. El proceso comienza cuando el C2 responde al beacon inicial con el registro A 99.250.250.199. El Trojan entra en un bucle intentando comunicarse cada 50 milisegundos, procesando las respuestas TXT dividiéndolas por el carácter >:

Instrucción Descripción
N Inactividad. Establece el tipo de acción de la próxima consulta a W.
S Recibir datos del C2. Decodifica los datos como Base64. Establece el tipo de acción a D.
S000s Utiliza los datos como parte del nombre de archivo para guardar datos. Establece el tipo de acción a D.
E Escribe los bytes proporcionados por el comando S en el archivo resultante del comando S000s. Rompe el bucle para procesar el archivo descargado.
C Cancela las comunicaciones saliendo del bucle.

Impacto y consecuencias de BONDUPDATER (técnico y extenso)

Espionaje gubernamental y filtración de información estratégica

BONDUPDATER ha sido utilizado por OilRig para atacar organizaciones gubernamentales de Oriente Medio desde al menos noviembre de 2017, con víctimas documentadas en campañas de agosto de 2018 . El malware permite a los operadores ejecutar comandos remotos, descargar archivos del sistema comprometido y almacenar datos exfiltrados, lo que facilita la recolección de información diplomática, documentos estratégicos y credenciales de acceso . La capacidad del malware para exfiltrar cualquier archivo del sistema mediante el comando 1 (descargar archivo) y la ejecución de comandos arbitrarios con 0 significa que los atacantes pueden acceder a correos electrónicos, bases de datos, planos y otras comunicaciones sensibles de las entidades gubernamentales objetivo.

Evasión de defensas mediante túneles DNS

El uso de túneles DNS como canal C2 representa una amenaza significativa para las defensas tradicionales:

  • Detección eludida: Las consultas DNS son rutinariamente permitidas a través de firewalls y no son inspeccionadas en profundidad por la mayoría de las soluciones de seguridad . El malware aprovecha esta confianza para ocultar sus comunicaciones maliciosas en tráfico legítimo, haciendo que BONDUPDATER sea difícil de detectar mediante análisis de red convencionales.
  • Comunicaciones encubiertas: La capacidad de utilizar tanto registros A como TXT proporciona redundancia y flexibilidad. Si un método falla, el malware puede cambiar al otro (usando el tipo de acción P para notificar al C2 que cambie a registros A), asegurando la continuidad operativa incluso en entornos donde ciertos registros DNS están bloqueados.
  • DGA para evasión de listas negras: El uso de un algoritmo de generación de dominios (DGA) permite a OilRig rotar dominios C2 dinámicamente, dificultando que los defensores mantengan listas negras actualizadas .

Impacto en la seguridad de las organizaciones

Para las organizaciones objetivo, las consecuencias incluyen:

  • Compromiso a largo plazo: La tarea programada que se ejecuta cada minuto asegura que BONDUPDATER permanezca activo incluso después de reinicios del sistema, permitiendo a los atacantes mantener acceso persistente y sigiloso durante períodos prolongados.
  • Pérdida de información y daño reputacional: La exfiltración de documentos gubernamentales sensibles puede llevar a la filtración de información diplomática y estratégica, con consecuencias geopolíticas y daños reputacionales para las entidades afectadas.
  • Punto de entrada para ataques secundarios: BONDUPDATER puede ser utilizado como puerta de entrada para desplegar malware adicional o para movimientos laterales dentro de la red de la organización, expandiendo el alcance del compromiso más allá del sistema inicialmente infectado.

Implicaciones para los defensores

El análisis de BONDUPDATER ofrece varias lecciones para equipos de seguridad:

  • Monitoreo de tráfico DNS: Es crucial implementar soluciones que inspeccionen el tráfico DNS en busca de patrones anómalos, como consultas a dominios generados por DGA o respuestas DNS que contienen datos codificados en registros TXT o A.
  • Detección de macros maliciosas: La distribución a través de documentos de Word con macros destaca la importancia de deshabilitar macros por defecto y educar a los usuarios sobre los riesgos de habilitarlas en documentos no solicitados.
  • Auditoría de tareas programadas: La creación de tareas programadas para persistencia debe ser monitoreada y auditada regularmente, especialmente aquellas que ejecutan scripts en ubicaciones no estándar como C:\ProgramData\WindowsAppPool\.
  • Análisis de scripts PowerShell: La ejecución de PowerShell debe ser monitoreada, especialmente cuando se ejecuta con la bandera -exec bypass y cuando se originan desde directorios de perfil de usuario o de aplicación.

Origen y motivación de BONDUPDATER (un solo párrafo)

BONDUPDATER es una puerta trasera basada en PowerShell desarrollada y utilizada por el grupo de ciberespionaje OilRig (también conocido como APT34) , un actor de amenazas persistente con presuntos vínculos con el gobierno de Irán, activo desde al menos mediados de 2016 y que ha centrado sus operaciones en organizaciones gubernamentales y empresariales de Oriente Medio. La motivación principal de OilRig es el espionaje y la recolección de inteligencia estratégica para apoyar los intereses geopolíticos y de seguridad nacional de Irán, obteniendo acceso a información diplomática, militar y económica de países de la región, especialmente aquellos considerados adversarios o competidores regionales. El grupo ha demostrado una capacidad de adaptación continua, desarrollando y actualizando sus herramientas (como BONDUPDATER) basándose en lo que ha funcionado en el pasado, lo que sugiere que sus operaciones de espionaje son sostenidas, metodológicas y cuentan con el respaldo de recursos significativos .