Plurox: puerta trasera modular

 

Un análisis mostró que el malware puede extenderse a través de una red local a través de un exploit, proporcionar acceso a la red atacada e instalar mineros y otro software malicioso en las computadoras víctimas. Además, la puerta trasera es modular, lo que significa que su funcionalidad se puede ampliar con la ayuda de complementos, según sea necesario. Después del análisis, el malware se llamó Backdoor.Win32.Plurox.

Características clave

Plurox está escrito en C y cumplido con Mingw GCC, y a juzgar por la presencia de líneas de depuración, el malware estaba en la etapa de prueba cuando se detectó.

Líneas de depuración en las muestras que encontramos.

La puerta trasera utiliza el protocolo TCP para comunicarse con el servidor C&C; los complementos se cargan y se interconectan directamente a través de dos puertos diferentes, que se cosen en el cuerpo de Plurox; las direcciones C&C también están codificadas en el bot. Al monitorear la actividad del malware, detectamos dos “subredes”. En una, Plurox recibe solo mineros (auto_proc, auto_cuda, auto_gpu_nvidia) desde el centro de C&C, mientras que en la otra, además de miners (auto_opencl_amd, auto_miner), se pasa varias plugins, que se discutirán más adelante.

La familia Plurox prácticamente no tiene cifrado, solo se aplican unas pocas claves de 4 bytes para el cifrado XOR normal. El paquete para llamar al servidor de C&C tiene el siguiente aspecto:

El búfer contiene una cadena XORed con la clave al comienzo del paquete. La respuesta del centro de C&C contiene el comando que se ejecutará, más los datos para su ejecución, que se cifran utilizando XOR. Cuando se carga el complemento, el propio bot selecciona el bitness requerido y solicita tanto auto_proc como auto_proc64. En respuesta, llega un paquete con un complemento cifrado, el habitual MZ-PE.

Comandos soportados

La versión de Plurox que encontramos admite un total de siete comandos:

  • Descarga y ejecuta archivos utilizando WinAPI CreateProcess
  • Bot bot actualizacion
  • Eliminar y detener (eliminar el servicio propio, eliminar de la carga automática, eliminar archivos, eliminar artefactos del registro)
  • Descargar y ejecutar el plugin
  • Deja de conectar
  • Actualizar el complemento (detener el proceso y eliminar el archivo de la versión anterior, cargar e iniciar uno nuevo)
  • Detener y eliminar plugin

Complementos

Durante el monitoreo, logramos detectar varios complementos de Plurox y estudiarlos todos.

Mineros plugin

El malware puede instalar en la computadora víctima uno de varios mineros de criptomonedas, dependiendo de la configuración del sistema en particular. El bot envía el paquete con la configuración del sistema al servidor de C&C y, en respuesta, recibe información sobre qué complemento descargar. Contamos con ocho módulos de minería en total, cuyas características se pueden adivinar a partir de sus nombres:

  • auto_proc
  • auto_cuda
  • auto_miner
  • auto_opencl_amd
  • auto_gpu_intel
  • auto_gpu_nvidia
  • auto_gpu_cuda
  • auto_gpu_amd

Complemento UPnP

El módulo recibe de C&C una subred con máscara / 24, recupera todas las direcciones IP e intenta reenviar los puertos 135 (MS-RPC) y 445 (SMB) para la dirección IP seleccionada actualmente en el enrutador mediante el protocolo UPnP. Si tiene éxito, informa del resultado al centro de C&C, espera 300 segundos (5 minutos) y luego elimina los puertos reenviados. Suponemos que este complemento se puede utilizar para atacar una red local. Un atacante tardaría solo cinco minutos en clasificar todos los exploits existentes para los servicios que se ejecutan en estos puertos. Si los administradores notan el ataque en el host, verán que el ataque se produce directamente desde el enrutador, no desde una máquina local. Un ataque exitoso ayudará a los delincuentes cibernéticos a afianzarse en la red.

De acuerdo con su descripción, el complemento es muy similar a EternalSilence, excepto que el puerto 135 se reenvía en lugar de 139. Consulte este artículo de Akamai para obtener detalles sobre EternalSilence:

{“NewProtocol”: “TCP”, “NewInternalPort”: “445”, “NewInternalClient”: “192.168.10.165”,

“NewPortMappingDescription”: “galleta silenciosa”, “NewExternalPort”: “47622”}

Y aquí está la plantilla del plugin Plurox:

<NewProtocol> TCP </NewProtocol>
<NewInternalPort>% d </NewInternalPort>
<NewInternalClient>% s </NewInternalClient>
<NewEnabled> 1 </NewEnabled>
<NewPortMappingDescription> galleta silosa </NewPortPackPackPack

En los dos ejemplos, se resalta una línea coincidente: una descripción del reenvío de puertos.

Plugin SMB

Este módulo es responsable de propagar el malware a través de la red utilizando el exploit de EternalBlue . Es idéntico al módulo wormDll32 de Trojan.Win32.Trickster , pero sin líneas de depuración en el código, más la carga útil en el exploit se carga mediante sockets.

Izquierda: Código inyectado del plugin Plurox SMB, derecha: Código inyectado WormDll

 

Izquierda: Plurox SMB plugin NetServerEnum, derecha: Trickster WormDll NetServerEnum

Como puede verse en estas muestras, no solo el código inyectado es similar, sino también el código para los procedimientos estándar. Sobre esta base, podemos suponer que las muestras analizadas se tomaron del mismo código fuente (faltan líneas comentadas en el complemento de Trickster en el complemento de Plurox), lo que significa que los creadores respectivos de Plurox y Trickster pueden estar vinculados.

Las soluciones de seguridad de Kaspersky detectan el bot y sus complementos con los veredictos Backdoor.Win32.Plurox y HEUR: Trojan.Win32.Generic.

IoC

Servidores de C&C

  • 178.21 [.] 11.90
  • 185.146 [.] 157.143
  • 37.140 [.] 199.65
  • 194.58 [.] 92.63
  • obuhov2k [.] engendra [.] tecnología
  • nombre webdynamic [.] com
  • 37.46 [.] 131.250
  • 188.93 [.] 210.42

MD5

  • Cuerpo principal
  • 59523DD8F5CE128B68EA44ED2EDD5FCA
  • C4A74D79030336A0C3CF60DE2CFAE9E9
  • CECFD6BCFDD56B5CC1C129740EA2C524
  • BE591AA0E48E496B781004D0E833E261
  • Módulo gusano tramposo
  • f233dd609821c896a4cb342cf0afe7b2
  • auto_proc32
  • 2e55ae88c67b1d871049af022cc22aac
  • auto_proc64
  • b2d76d715a81862db84f216112fb6930
  • auto_opencl_amd32
  • a24fd434ffc7d3157272189753118fbf
  • auto_opencl_amd64
  • 117f978f07a658bce0b5751617e9d465
  • auto_miner32
  • 768857d6792ee7be1e1c5b60636501e5
  • auto_miner64
  • e8aed94c43c8c6f8218e0f2e9b57f083
  • upnp32
  • 8cf5c72217c1bb48902da2c83c9ccd4e
  • upnp64
  • b2824d2007c5a1077856ae6d8192f523
  • smb32
  • 6915dd5186c65891503f90e91d8716c6
  • smb64
  • cd68adc0fbd78117521b7995570333b2

 

 

 

Fuente: securelist

Follow me:

También te puede interesar

Deja un comentario

error: Content is protected !!