
PyExfil — toolkit Python 3 per ricercare e stress-testare tecniche di esfiltrazione dati attraverso canali di rete, fisici e steganografici. Per simulazione red team e test di rilevamento DLP.
Test di Stress per Rilevamento e Creatività

PyExfil è nato come PoC e una sorta di parco giochi e si è trasformato in qualcosa di più. Ai miei occhi è ancora un PoC disordinato che ha bisogno di molto più lavoro e test per diventare stabile. Lo scopo di PyExfil è quello di mettere a disposizione quante più tecniche di esfiltrazione, e ora anche di comunicazione, che POSSONO essere utilizzate da vari attori malintenzionati/malware per aggirare vari strumenti e tecniche di rilevamento e mitigazione. Puoi seguire le modifiche nella pagina GitHub ufficiale.
In parole semplici, è pensato per essere usato come uno strumento di test piuttosto che come un vero e proprio strumento di Red Teaming. Sebbene la maggior parte delle tecniche e dei metodi dovrebbe essere facilmente portata e compilata per vari sistemi operativi, alcuni stabili, altri sperimentali, il meccanismo di trasmissione dovrebbe essere stabile per tutte le tecniche. Clonalo, distribuiscilo su un nodo della tua organizzazione e verifica quali sistemi riescono a intercettare quali tecniche.
Per usare pip (non necessariamente la versione più aggiornata):
pip install --user PyExfil
Per il codice sorgente:
git clone https://www.github.com/ytisf/PyExfil
cd PyExfil
pip install --user -r requirements.txt
Consigliamo di installare anche py2exe in modo da poter cross-compilare vari moduli in un binario per un trasporto più semplice. Puoi farlo con:
pip install py2exe
Vai nella stessa cartella in cui è stato clonato PyExfil e:
pip setup.py --user install
Per l'utilizzo dei singoli moduli, consulta il file USAGE.
Sebbene questo strumento sia stato inizialmente creato come un gioco e successivamente trasformato in uno strumento orientato al Red Team, alla fine della giornata un utilizzo principale di PyExfil è testare vari sistemi DLP (Data Leakage Protection) e il rilevamento delle intrusioni. Per semplificare quest'ultima missione abbiamo creato un piccolo modulo per generare dati fittizi con una struttura che corrisponde sia a set di dati PII che PCI. Questi hanno lo scopo di attivare avvisi mentre vengono trasmessi all'esterno della rete.
Ecco come usarlo:
from pyexfil.includes import CreateTestData
c = CreateTestData(rows=1000, output_location="/tmp/list.csv")
c.Run()
Dopo puoi usare qualsiasi modulo di PyExfil che desideri per tentare di esfiltrare il set di dati creato. In questo modo puoi testare il tuo rilevamento senza rischiare di esfiltrare dati preziosi.
Accogliamo con favore i contributi — dai test e correzioni di bug a nuovi canali nascosti.
NetworkModule, CommModule, PhysicalModule, StegaModule) con dettagli API ed esempi.Se vuoi aiutare, inizia con CALL_TO_ACTION.md — ogni elemento lì ha un percorso file e istruzioni chiare.
Per i dettagli sulla versione consulta i tag in questo repository.
DOCUMENTATION.md e README.md in due file diversi.CALL_TO_ACTION.md per l'assistenza della community.tests per alcuni test di fumo di base. In futuro verranno aggiunti più test orientati ai moduli.names.braille.