Los expertos en seguridad de Netlab 360 informaron el miércoles que se ha detectado una botnet muy sofisticada. Registraron hasta 100,000 fuentes de escaneo provenientes del puerto TCP 5431 y el puerto UDP 1900. El malware, denominado BCMUPnP_Hunter, abusa de una vulnerabilidad de cinco años en UPnP de BroadCom para propagarse. El fallo fue descubierto en 2013 por investigadores de DefenseCode y es bien conocido en el mundo de la ciberseguridad. UPnP SDK se usó en millones de dispositivos enrutadores fabricados por diferentes proveedores en todo el mundo. Las marcas incluyen Linksys, D-Link, TP-Link, ZTE, NetComm, entre los cuales los expertos de Netlab 360 enumeraron 116 modelos.

router

La red de bots usa una red de proxy de construcción propia que se comunica activamente con los proveedores de correo electrónico más populares como Outlook, Yahoo!, Hotmail y muchos otros. Los investigadores especulan que las conexiones se utilizan para enviar spam. Los dispositivos infectados se extienden por todo el mundo, pero los países más afectados son India, EE. UU. y China. Los expertos de Netlab 360 también informaron que la cantidad de infecciones podría llegar a 400,000 en un futuro cercano.

El funcionamiento del malware BCMUPnP_Hunter

El proceso de infección es de varias etapas y bastante complejo, como lo explicaron Hui Wang y RootKiter en Netlab 306:

“La interacción entre la botnet y el objetivo potencial toma varios pasos, comienza con el escaneo de destino del puerto tcp 5431, luego pasa a verificar el puerto UDP 1900 del destino y espera a que el destino envíe la URL vulnerable adecuada. Después de obtener la URL correcta, se necesitan otros 4 intercambios de paquetes para que el atacante descubra dónde está la dirección de inicio de ejecución del shellcode en la memoria, de modo que una carga útil de exploit correcta se pueda crear y enviar al destino.”

 

Tan pronto como el escáner localiza un dispositivo que utiliza el conjunto de chips producidos por BroadCom con la función UPnP, el malware instruye al servidor C2 en 109 [.] 248 [.] 9 [.] 17: 8738, controlado por ciberdelincuentes, para explotar errores del dispositivo e infecta la pasarela. Luego, el enrutador se escanea para obtener el diseño de memoria del sistema y luego se aprovecha utilizando los datos recopilados por el exploit. Después de eso, BCMUPnP_Hunter contacta con 14 direcciones IP diferentes que están vinculadas a los proveedores de correo electrónico antes mencionados a través del puerto TCP 25.

“El código de shell tiene una longitud total de 432 bytes, muy bien organizados y escritos, algunas pruebas a continuación (No encontramos un código similar utilizando motores de búsqueda). Parece que el autor tiene habilidades profundas y no es un niño típico de guión:

  • Código básico: el código tiene múltiples llamadas de syscall para redes, procesos, archivos, etc.

  • Algunos detalles: syscall 0x40404 (en lugar de syscall 0) y se usaron múltiples operaciones de inversión para evitar los caracteres malos (\\ x00); las variables de la pila en el código también tienen diferentes grados de multiplexación para optimizar la estructura de la pila en tiempo de ejecución;

  • Lógica de código: al llamar al Loop en varias secciones, se evita razonablemente la posibilidad de muchas llamadas fallidas y se garantiza la validez de la ejecución del código de shell.”

Para evitar una infección de malware, asegúrate de actualizar tus dispositivos IoT con el último parche de software o instala el firmware más reciente. Además, la desactivación de UPnP también puede salvarte de las infecciones de tipo BCMUPnP_Hunter.