Análisis de malware
Malware MOOSE: análisis
julio 6, por Ninja de seguridad
La primera parte de esta serie era un nivel muy básico y solo había arrojado luz sobre lo que realmente es Moose Malware, así como sus componentes y los IoC relacionados. En esta y la última parte de esta serie sobre Moose Malware, intentaremos centrarnos más en analizar el malware.
Proceso de infección
Como aprendimos en la primera parte , el malware Moose se compone de varios componentes que además tienen muchos subprocesos donde cada subproceso está configurado para una función diferente. Uno de los principales actores del malware Moose es el escáner, cuya función principal es buscar sistemas vulnerables. El componente Scanner tiene principalmente tres subprocesos:
- Un hilo escanea solo direcciones IP aleatorias para buscar sistemas vulnerables.
- Luego, después de encontrar algunos enrutadores vulnerables, un segundo subproceso escaneará las IP estrechamente relacionadas con la IP externa identificada por el primer subproceso. La aproximación de este subproceso se establece en /15 (CIDR).
- El tercer hilo buscará direcciones IP en la dirección de transmisión de la interfaz de la IP encontrada por el segundo hilo de forma incremental.
El tercer hilo, después de identificar los sistemas internos, intentará conectarse en el puerto TCP 10073. Si puede conectarse, significa que el servidor ya está infectado. Tan pronto como descubre que se está estableciendo la conexión, se desconecta y lo informa al servidor CC. Sin embargo, si no se establece la conexión, intentará conectarse al servicio telnet (puerto TCP 23) y forzará bruscamente el mensaje de inicio de sesión con un nombre de usuario y contraseña. Esta combinación de nombre de usuario y contraseña la proporciona el servidor CC al hilo. Recuerde que Moose se propaga a través de enrutadores que tienen nombres de usuario y contraseñas débiles (Resumen de la primera parte).
Nota: el puerto TCP 10073 es el puerto en el que se propaga Moose. Esta información ya se compartió en la primera parte.
Cuando la fuerza bruta tiene éxito, el malware Moose responderá a su servidor CC sobre el éxito. A continuación se muestran los campos interesantes utilizados:
Una observación importante en este informe al servidor C7C es que mientras los otros campos se mantienen en little endian, la dirección IP se mantiene en big endian.
En respuesta, el servidor CC responde con los siguientes campos:
A continuación se detallan los puntos que indican cómo el servidor C7C ejecutará comandos en el host remoto infectado:
- Después de un inicio de sesión telnet exitoso con la víctima, el servidor CC comenzará a emitir comandos a la víctima remota. Sin embargo, antes de que el servidor CC emita cualquier comando a la víctima, el malware Moose en el enrutador infectado recopilará información sobre el host y la enviará al servidor CC. A continuación se muestran los campos utilizados por Moose:
- Tipo de mensaje: este valor se establece en 15 para indicar al servidor CC que el inicio de sesión se realizó correctamente.
- Dirección: Esta es la dirección IP de la víctima.
- Credenciales: Conjunto de nombre de usuario y contraseña utilizados para obtener el acceso.
- Detalles: contiene información sobre la víctima, como qué tipo de comandos se pueden ejecutar en el sistema.
- Después de recibir la información de la víctima, el servidor CC devolverá los comandos ofuscados al enrutador Moose Infected. A continuación se muestran los campos devueltos por el servidor CC:
- Comando: contiene el comando ofuscado del CC.
- Tamaño: Tamaño del comando.
- Steam: si hay un flujo de comandos enviados por el servidor.
- Fin: este valor se establece en 0 para indicar el final de los comandos.
- Moose Malware, a su vez, convertirá el comando en un comando significativo y lo enviará al host remoto para su ejecución. Lo primero que hace el servidor C7C es reunir el shell para ejecutar los comandos.
Moose tiene características muy interesantes: aquellas que pueden actuar como proxy HTTP (con soporte de HTTPS), secuestro de DNS, pueden actuar como Sniffer, pero también hay otra muy interesante de Moose: no le gusta la competencia, por lo que los mata. ¡Sí, lo has adivinado! En realidad, elimina otros programas maliciosos presentes en el dispositivo/sistema, ya que no le gusta compartir recursos subyacentes. Cada hora, Moose comprobará los procesos en /proc/pid y buscará en el archivo cmdline. Este archivo contendrá todos los detalles del proceso junto con los argumentos que se les pasan al inicio. Moose eliminará todos estos procesos que cree que pertenecen a la familia de malware. La pregunta es cómo llega Moose a saber qué procesos son maliciosos y cuáles no. Bueno, Moose tiene una cadena de lista negra codificada con la que coincide con el archivo cmdline.
Erradicación
A continuación se detallan los pasos que se deben seguir para deshacerse de Moose:
- La manera fácil y rápida es cambiar la contraseña y reiniciar el sistema.
- Sin embargo, la forma recomendada es realizar un restablecimiento de fábrica, reinstalar y cambiar la contraseña.
Prevención
A continuación se detallan los pasos que se deben seguir para evitar la infección por el malware Moose:
¡Conviértete en un ingeniero inverso certificado!
Obtenga capacitación práctica en vivo sobre análisis de malware desde cualquier lugar y conviértase en un analista certificado de ingeniería inversa. Comienza a aprender
- Lo primero es cambiar el nombre de usuario/contraseña predeterminado en el equipo de red.
- Dado que el malware Moose inicia sesión a través de Telnet, desactive el protocolo inseguro. En su lugar, utilice SSH.
- Asegúrese de que no se pueda acceder al enrutador en los puertos a los que se dirige Moose, es decir, SSH, Telnet, HTTP, HTTPS.
- Actualice siempre el firmware tal como lo lanzó el proveedor.
Este artículo, junto con la primera parte de la serie, ofrece una buena visión del Moose Malware. También se deben adoptar las mejores prácticas indicadas anteriormente para una mejor protección.