
Um framework de botnet super portátil com um servidor C2 baseado em Django. O cliente é escrito em C++, com clientes alternativos escritos em Rust, Bash e Powershell.
O servidor C2 do botnet utiliza o framework Django como backend. Está longe de ser o servidor web mais eficiente, mas isso é compensado pelos seguintes pontos:
aura-server.O site administrativo localizado em http://your_server:server_port/admin pode ser
acessado após configurar um superusuário (veja abaixo).
O servidor C2 está atualmente configurado para usar um banco de dados SQLite3,
bots.sqlite3. A configuração atual pode ser alterada em aura-server/aura/settings.py.
Você pode desejar usar MySQL, ou até mesmo PostgreSQL; isso é fácil de fazer graças
à API portável de banco de dados do Django.
O cliente principal é escrito em C++, e pode ser compilado para Linux ou Windows usando CMake. Clientes alternativos são escritos em Rust, Bash e Powershell, mas podem carecer de certa funcionalidade, pois são em grande parte não suportados. Eu corrigirei quaisquer bugs importantes que chegarem ao meu conhecimento, mas eles continuarão sem algumas funcionalidades por enquanto, como executar comandos em diferentes shells.
O cliente reunirá informações relevantes do sistema e as enviará ao servidor C2 para registrar o novo bot. A identificação é feita inicialmente criando um arquivo contendo dados aleatórios — referido como arquivo de autenticação em todo o código — que será então hashado cada vez que o cliente for executado para identificar o cliente e autenticar com o servidor C2. Ele então instalará todos os arquivos na pasta especificada no código e inicializará o serviço do sistema ou agendará uma tarefa com os mesmos privilégios com os quais o cliente foi executado. As configurações padrão fazem com que o cliente e outros arquivos se disfarcem como arquivos de configuração.
Por se tratar de fins de teste, o servidor C2 precisa ser hard-coded nos arquivos de entrega do cliente e web. Atualmente está definido como localhost em todos os arquivos. Isso ocorre porque um botnet real usaria algo como um algoritmo de geração de domínios (DGA) para sincronizar um fluxo de domínios em mudança no lado do cliente com um fluxo de domínios descartáveis sendo registrados — ou apenas hospedagem realmente à prova de balas como o botnet Mirai original.
O código também não é ofuscado, nem há qualquer esforço para impedir engenharia reversa; isso anularia o propósito de ser um botnet para testes e demonstrações.
A pasta killswitch contém scripts para fácil remoção do cliente ao testar em seus dispositivos.