Recientemente, se descubrió una campaña de la botnet VOlk que usa un grupo de Facebook e infecta a usuarios de Chile. Debido a la fuerte presencia de esta botnet en la región, se realizó un análisis para conocer en profundidad sus características.
Funcionamiento
Cuando un equipo se infecta con este código malicioso, se establece una conexión desde el propio sistema infectado con el panel de control. Asimismo, cuando el ciberdelincuente envía una orden a través del panel, el equipo infectado responderá a las mismas. Además, VOlk fue diseñado para poder extenderse a lo largo del tiempo a partir de la incorporación de nuevos módulos que provean nuevas funcionalidades. Actualmente, algunas de las funcionalidades que provee VOlk son:
- Robo de credenciales de MSN Messenger.
- Robo de credenciales FTP como aquellas utilizadas mediante Filezilla.
- Realización de pharming local sobre la víctima a través de la modificación del archivo hosts.
- Modificación de la página de inicio del navegador.
- Descarga de archivos desde el sistema de la víctima.
Asimismo, VOlk posee una particularidad a la hora de comprobar que la conexión proveniente se realiza desde un equipo infectado. La validación se establece sobre el campo user agent en el paquete HTTP enviado. En otras palabras, cuando el ciberdelincuente establece la botnet, constituye una cadena especial tanto en el constructor del propio archivo malicioso como en el panel de control. De esa forma, cuando el sistema se infecta, envía una petición al panel de control modificando el user agent con la clave secreta. Desde el panel de control, se realiza una verificación de que la cadena sea correcta y de esa forma se valida si la conexión proviene realmente de un equipo zombi perteneciente a esa botnet. A continuación puede visualizarse una captura de la sección de código en el panel de control que realiza la validación:
¿Cómo envía la información al panel de control?
El sistema infectado reporta al panel del control de forma periódica (el tiempo se establece en el constructor del malware) a través del archivo bots.php. Mediante diferentes parámetros, envía información sobre el sistema infectado tal como la versión del sistema operativo, el nombre, contraseñas, entre otros datos. Esta información puede variar de acuerdo a la versión de VOlk. A continuación puede observarse una captura de cómo envía los datos:
El panel de control recibe la información de la víctima, y luego de validar el user agent, procede a insertar dicha información en una base de datos. Asimismo, si el bot (sistema de la víctima) se había reportado anteriormente, el panel detecta que ya está presente en la base de datos y procede a actualizar la información.
¿Cómo realiza VOlk las operaciones en su base de datos?
Analizando el código fuente del panel de control, se pudo determinar que existe una clase en código PHP desarrollada específicamente para realizar consultas sobre la base de datos. Las funciones implementadas permiten realizar las operaciones básicas sobre el motor, pero además cuenta con algunas funciones adicionales. Esas funciones están destinadas a sanear las consultas que se realizan sobre la base de datos. La finalidad de esto es prevenir las inyecciones SQL dentro del panel y evitar su compromiso por parte de otros ciberdelincuentes. Es importante recordar que el panel de control es el que dispone de toda la botnet, por lo que si alguien toma control del mismo, dispondrá de todas las funcionalidades que brinda la misma.
A continuación puede visualizarse una sección de código con una de las correspondientes funciones de saneado de consultas:
Todas las funciones implementadas dentro de la clase, ya sean operaciones de select, insert, delete u otra, previamente realizan el chequeo de las consultas a través de la función AntiHack.
Es importante recordar que este código malicioso tiene una fuerte presencia en Latinoamérica. En análisis previos de la botnet VOlk, se determinó que Perú era el más afectado. Sin embargo, en la actualidad hemos observado la presencia de este malware en diferentes países de la región. Debido a esto, es recomendable utilizar un software antivirus con capacidad de detección proactiva para estar protegido frente a estos códigos maliciosos. Asimismo las buenas prácticas complementan el uso de tecnologías. Para ello recomendamos la lectura de nuestros 10 consejos para no infectarse.
Fernando Catoira
Analista de Seguridad