Poco RAT es una puerta trasera diseñada para dar a los atacantes el control total de un sistema infectado. Les permite navegar por el sistema de archivos, ejecutar comandos del sistema operativo, lanzar archivos ejecutables y realizar capturas de pantalla. Cada versión analizada de Poco RAT ha sido empaquetada con UPX (Ultimate Packer for Executables), lo que reduce el tamaño promedio del archivo de 24 MB a 13 MB. El aumento de tamaño se debe al uso de POCO, un conjunto de bibliotecas C++ de código abierto creadas para aplicaciones de red e Internet.
El malware se vigila a sí mismo al ejecutar un hilo de monitoreo independiente. Su actividad se divide en dos estados distintos:
- Comprobando el tiempo se refiere a supervisar cuánto tiempo ha estado activo el malware, recopilando marcas de tiempo y evaluando el entorno del sistema.
- Desconectándolo ahora es el estado en el que se corta la conexión con el sistema de la víctima. Esto podría indicar que el malware se está desconectando o intentando evitar ser detectado.
Una vez desplegado, Poco RAT determina a qué servidor de mando y control (C2) conectarse. Una vez establecido el enlace, el servidor envía regularmente al malware mensajes de alerta para mantener su persistencia. Poco RAT extrae entonces información del sistema WinAPI mediante funciones WinAPI estándar, y recopila lo siguiente:
- Nombre de usuario
- Nombre de la computadora
- Versión de SO Windows
- Espacio libre en disco
- Memoria física disponible (RAM)
- Hora actual del sistema
Antes de informar a su servidor C2, el malware comprueba si se está ejecutando en un entorno virtualizado. Busca VirtualBox escaneando la ruta del registro SOFTWARE\Oracle\VirtualBox y sondea el puerto 0×5658, un signo revelador de VMware. Si nada hace saltar las alarmas, envía todos los datos recopilados al servidor.
La información recopilada se empaqueta en un búfer estructurado, separado por el delimitador @&). A continuación, se muestra un ejemplo de formato:
N35*@&)username*@&)pc_name*@&)win_ver*@&)free_disk_space*@&)ram*@&)time*@&)
La siguiente tabla muestra el conjunto completo de comandos que Poco RAT puede ejecutar.