
Un marco de botnet súper portátil con un servidor C2 basado en Django. El cliente está escrito en C++, con clientes alternativos escritos en Rust, Bash y Powershell.
El servidor C2 del botnet utiliza el framework Django como backend. Está lejos de ser el servidor web más eficiente, pero esto se compensa con lo siguiente:
aura-server.El sitio de administración ubicado en http://your_server:server_port/admin se puede acceder después de configurar un superusuario (ver más abajo).
El servidor C2 está actualmente configurado para usar una base de datos SQLite3, bots.sqlite3. La configuración actual se puede cambiar en aura-server/aura/settings.py. Puede que desee usar MySQL, o incluso PostgreSQL en su lugar; esto es fácil de hacer gracias a la API de base de datos portátil de Django.
El cliente principal está escrito en C++ y puede compilarse tanto para Linux como para Windows usando CMake. Los clientes alternativos están escritos en Rust, Bash y Powershell, pero pueden carecer de cierta funcionalidad ya que en su mayoría no tienen soporte. Arreglaré cualquier error importante que llegue a mi atención, pero seguirán careciendo de ciertas características por el momento, como ejecutar comandos en diferentes shells.
El cliente recopilará información relevante del sistema y la enviará al servidor C2 para registrar el nuevo bot. La identificación se realiza creando inicialmente un archivo que contiene datos aleatorios — referido como el archivo de autenticación en todo el código — que luego se hashea cada vez que el cliente se ejecuta para identificar al cliente y autenticarse con el servidor C2. Luego instalará todos los archivos en la carpeta especificada en el código, e inicializará el servicio del sistema o programará una tarea con los mismos privilegios con los que se ejecutó el cliente. La configuración predeterminada hace que el cliente y otros archivos se hagan pasar por archivos de configuración.
Debido a que esto es con fines de prueba, el servidor C2 debe estar codificado de forma fija en los archivos de entrega del cliente y web. Actualmente está configurado en localhost en todos los archivos. Esto se debe a que un botnet real usaría algo como un algoritmo de generación de dominios (DGA) para sincronizar un flujo de dominios cambiantes en el lado del cliente con un flujo de dominios desechables que se registran — o simplemente un hosting realmente a prueba de balas como el botnet Mirai original.
El código tampoco está ofuscado ni se ha hecho ningún esfuerzo para evitar la ingeniería inversa; esto iría en contra del propósito de ser un botnet para pruebas y demostraciones.
La carpeta killswitch contiene scripts para la fácil eliminación del cliente al hacer pruebas en sus dispositivos.