C0XMO: Una Nueva Variante de Gafgyt con Propagación Multiplataforma
Detection stack
- AIDR
- Alert
- ETL
- Query
Resumen
FortiGuard Labs identificó una nueva variante del botnet Gafgyt llamado C0XMO que se propaga explotando una vulnerabilidad de desbordamiento de búfer en enrutadores DD-WRT identificada como CVE-2021-27137. El malware utiliza un escáner separado basado en Python para ampliar las infecciones a través de diferentes arquitecturas de CPU, al mismo tiempo que confía en ataques de credenciales débiles, varias capacidades de DDoS y rutinas para eliminar malware competitivo. Después de la infección, establece persistencia mediante archivos ocultos, trabajos cron y cambios en el perfil del shell antes de comunicarse con su servidor de comando y control. El informe también incluye indicadores y orientación defensiva para organizaciones que operan con dispositivos IoT expuestos.
Investigación
El análisis muestra que C0XMO abusa de CVE-2021-27137 en el servicio UPnP de DD-WRT para obtener acceso inicial, luego recupera un escáner de Python desde 217.160.125.125:15527. Ese escáner lleva a cabo intentos de fuerza bruta de Telnet y SSH, lanza múltiples solicitudes de explotación basadas en HTTP y despliega binarios específicos de arquitectura dependiendo del entorno del objetivo. Se mantiene la persistencia a través de archivos ocultos colocados en ubicaciones como /tmp, /var/tmp, /dev/shm, y directorios de inicio de usuario, junto con entradas de trabajos cron y ediciones de perfil de shell. Luego, el malware se comunica con su infraestructura de C2 en 85.215.131.70 utilizando una secuencia de saludo personalizada.
Mitigación
Las organizaciones deben actualizar el firmware de DD-WRT a una versión posterior al cambio 45723 y aplicar correcciones para todas las CVE relacionadas. Los servicios remotos innecesarios, como UPnP, Telnet y SSH, deben deshabilitarse en dispositivos expuestos a Internet siempre que sea posible. Se deben imponer credenciales fuertes y únicas en todos los dispositivos perimetrales, y los servicios expuestos deben revisarse con regularidad. También deben implementarse detecciones basadas en red para las direcciones IP, puertos y patrones de comandos maliciosos asociados con la campaña.
Respuesta
Los defensores deben monitorear el tráfico saliente en busca de conexiones a la conocida infraestructura de C2 y el puerto de descarga del escáner. Se deben configurar alertas para archivos ocultos nombrados .sys, cambios en cron que se ejecutan cada 15 minutos y ejecución del script del escáner. Las IPs y dominios maliciosos identificados deben ser bloqueados en el firewall, y cualquier dispositivo comprometido debe ser aislado para revisión forense y limpieza completa.
Flujo de Ataque
Detecciones
Posible Uso de Crontab para Ejecución Directa (a través de cmdline)
Ver
Subida/Bajada Remota de Archivos vía Herramientas Estándar (a través de cmdline)
Ver
Se Creó un Archivo Oculto en Host Linux (a través de file_event)
Ver
IOCs (HashSha256) para detectar: Dentro de la Propagación Multiplataforma de una Nueva Variante de Gafgyt C0XMO
Ver
IOCs (IP de origen) para detectar: Dentro de la Propagación Multiplataforma de una Nueva Variante de Gafgyt C0XMO
Ver
IOCs (IP de destino) para detectar: Dentro de la Propagación Multiplataforma de una Nueva Variante de Gafgyt C0XMO
Ver
Detección de Comunicación C2 del Botnet C0XMO [Cortafuegos]
Ver
Detección de Descarga de Payload de la Variante Gafgyt C0XMO [Creación de Procesos en Linux]
Ver
Detección de Operaciones de Archivos de Malware C0XMO [Evento de Archivo en Linux]
Ver
Comprobación de Escaneo y Persistencia de Proceso C0XMO [Creación de Procesos en Linux]
Ver
Ejecución de Simulación
Prerrequisito: La Verificación de Prevuelo de la Telemetría y la Línea Base debe haber pasado.
Justificación: Esta sección detalla la ejecución precisa de la técnica del adversario (TTP) diseñada para activar la regla de detección. Los comandos y la narrativa DEBEN reflejar directamente los TTPs identificados y apuntar a generar la telemetría exacta esperada por la lógica de detección.
-
Narrativa y Comandos del Ataque:
El bot del adversario, ya instalado en el host comprometido a través de la ejecución de servicios (T1546.007), inicia un saludo de C2 con el servidor codificado 217.160.125.125 en el puerto 15527. La conexión utiliza un socket TCP simple para extraer comandos, cumpliendo exactamente con los criterios de la regla. Esta actividad es típica del comportamiento de “phone-home” del botnet C0XMO. -
Script de Prueba de Regresión:
# Simulación de comunicación C2 de C0XMO – activa la regla Sigma $c2Ip = "217.160.125.125" $c2Port = 15527 # Abre una conexión TCP, envía una carga útil mínima, luego cierra $client = New-Object System.Net.Sockets.TcpClient $client.Connect($c2Ip, $c2Port) $stream = $client.GetStream() $payload = [System.Text.Encoding]::ASCII.GetBytes("PING`n") $stream.Write($payload, 0, $payload.Length) # Espera brevemente para imitar la latencia realista Start-Sleep -Seconds 2 $stream.Close() $client.Close() -
Comandos de Limpieza:
# No se realizaron cambios persistentes; solo asegúrese de que los sockets abiertos estén cerrados # (El script ya cierra el socket; esto es una red de seguridad.) Get-Process -Name "powershell" | Where-Object { $_.MainWindowTitle -eq "" } | Stop-Process -Force