Evooo1Bot Linux Botnet: Capacidades y Técnicas de Ataque
Detection stack
- AIDR
- Alert
- ETL
- Query
Resumen
Evooo1Bot es un botnet de Linux basado en Mirai recientemente identificado que compromete los dispositivos de borde para establecer una infraestructura proxy persistente. El malware incluye capacidades avanzadas como comunicación C2 cifrada, un módulo de relay SOCKS y un arsenal de exploits integrado. Apunta a numerosas vulnerabilidades que afectan a dispositivos IoT y hardware de red.
Investigación
FortiGuard Labs descubrió el botnet a través de la telemetría de IPS que capturó intentos activos de explotación. La investigación reveló una arquitectura modular en la que un script cargador recupera binarios adaptados a la arquitectura del sistema objetivo. Los analistas también identificaron varias técnicas de evasión, incluyendo desencriptación de cadenas en múltiples capas y verificaciones de herramientas de análisis.
Mitigación
Las organizaciones deberían priorizar el parcheo oportuno de todos los dispositivos y aparatos de red expuestos a internet. Las actualizaciones regulares de firmware y la monitorización continua de conexiones salientes sospechosas son esenciales para reducir la exposición. Deshabilitar servicios innecesarios en dispositivos de borde puede minimizar aún más la superficie de ataque disponible.
Respuesta
Si se detecta actividad de Evooo1Bot, se deben aislar inmediatamente los dispositivos de borde afectados de la red para detener el movimiento lateral y el abuso de proxy. Los investigadores deben determinar el alcance del compromiso y buscar mecanismos de persistencia como trabajos cron o servicios systemd. Cualquier credencial potencialmente expuesta a través del escáner de credenciales del botnet también debería ser rotada.
Flujo de Ataque
Todavía estamos actualizando esta parte.
Detecciones
Se establecieron Permisos Peligrosos para un Binario/Script/Carpeta (vía línea de comandos)
Carga/Descarga de Archivos Remotos a través de Herramientas Estándar (vía línea de comandos)
Se Creó un Archivo Oculto en el Host Linux (vía evento de archivo)
IOCs (HashSha256) para detectar: Botnet Multifuncional de Linux “Evooo1Bot”
IOCs (SourceIP) para detectar: Botnet Multifuncional de Linux «Evooo1Bot»
IOCs (DestinationIP) para detectar: Botnet Multifuncional de Linux «Evooo1Bot»
Uso Repetido de wget o curl y Ajustes en /proc/self/oom_score_adj para Persistencia por Evooo1Bot [Sistema Linux]
Detección de Inicialización del Proceso Evooo1Bot y Presencia de Herramientas de Depuración [Creación de Procesos de Linux]
Detectar Ejecución del Script wget.sh para Evooo1Bot [Evento de Archivo en Linux]
Ejecución de Simulación
Prerequisito: El Chequeo de Prevuelo de Telemetría y Línea Base debe haber pasado.
Racional: 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. Ejemplos abstractos o no relacionados conducirán a un diagnóstico erróneo.
-
Narrativa de Ataque & Comandos: Un adversario ha obtenido acceso inicial a un servidor Linux. Para asegurar que su agente de botnet permanezca activo durante un uso intensivo de recursos, ejecutan un comando que descarga una carga útil desde un servidor C2 remoto usando
curl -sL(silencioso, seguir redirecciones). Inmediatamente después de la descarga, el proceso intenta manipular su propia prioridad de kernel haciendo eco-17en/proc/self/oom_score_adj. Esta combinación específica de una descarga «furtiva» y «protección de proceso» es la firma de Evooo1Bot. -
Script de Prueba de Regresión:
#!/bin/bash # Simulación del comportamiento de Evooo1Bot # Objetivo: Activar la regla de detección cumpliendo ambas condiciones de la línea de comandos echo "[+] Iniciando Simulación de Evooo1Bot..." # Paso 1: Simular la descarga furtiva usando exactamente los flags en la regla # Usamos un loopback local o una URL falsa para evitar tráfico externo real si es necesario # pero la línea de comandos debe coincidir con la cadena de la regla. echo "[+] Ejecutando curl -sL para imitar la descarga de carga útil..." curl -sL http://localhost:8080/payload > /tmp/payload_test 2>/dev/null || echo "[!] Nota: URL no accesible, pero el comando fue ejecutado." # Paso 2: Simular el ajuste de la puntuación OOM para la persistencia echo "[+] Ajustando oom_score_adj para prevenir la terminación..." echo -17 > /proc/self/oom_score_adj echo "[+] Simulación Completa. Revisar SIEM para alertas." -
Comandos de Limpieza:
# Eliminar el archivo de carga falsa rm -f /tmp/payload_test # Restablecer la puntuación OOM (aunque solo afecta al shell/proceso actual) echo 0 > /proc/self/oom_score_adj