Comunicazione Unidirezionale via Web Service: One-Way Communication (T1102.003)
La tecnica T1102.003 - One-Way Communication descrive l'uso di servizi web legittimi come canale monodirezionale per recapitare istruzioni a sistemi compromessi, senza attendere risposta sullo stesso canale. L'output dei comandi, se esiste, viene esfiltrato altrove: un secondo servizio web, un canale DNS, un endpoint HTTP diverso. In molti scenari l'attaccante non desidera nemmeno una risposta, riducendo drasticamente la superficie osservabile.
Inserita nella tattica TA0011 (Command and Control), la tecnica sfrutta piattaforme popolari come Twitter, GitHub, GitLab, Telegram o Google per nascondere il traffico C2 dentro flussi legittimi già presenti nel perimetro. La cifratura TLS offerta nativamente da questi provider aggiunge un ulteriore strato di occultamento, rendendo inefficaci le ispezioni superficiali.
L'impatto operativo è notevole: 2 gruppi APT documentati (Gamaredon, Leviathan), 6 famiglie malware tra cui HAMMERTOSS, OnionDuke, EVILNUM e Sagerunex, e la campagna ArcaneDoor (C0046) contro apparati di rete Cisco tra luglio 2023 e aprile 2024. La difficoltà di rilevamento nasce dal fatto che il dominio di destinazione (github.com, twitter.com, googleapis.com) è già in whitelist nella maggior parte delle policy proxy. Bloccare a monte è impraticabile; occorre spostare l'analisi sui pattern comportamentali del traffico e sui processi che lo generano.
In un ingaggio red team, la simulazione di One-Way Communication parte dalla scelta del "dead drop": un profilo pubblico su servizio legittimo dove pubblicare istruzioni codificate. GitHub Gist, un repository con file README aggiornato periodicamente, un profilo Twitter/X con post steganografici, o una pagina wiki su piattaforme come TechNet-simili sono candidati classici.
Su Windows, un implant minimale può essere costruito in PowerShell che effettua polling HTTPS verso un raw gist. Un esempio di logica base:
Invoke-WebRequest -Uri
Il contenuto restituito viene decodificato (Base64, XOR, o steganografia in immagini via System.Drawing) ed eseguito con iex. Per emulare HAMMERTOSS, si implementa un algoritmo che genera dinamicamente l'handle di destinazione basato su data corrente, così da ruotare il dead drop ogni 24 ore.
Su Linux/macOS, curl e wget coprono la fase di fetch. Un cron job che esegue ogni 15 minuti:
curl -س -A "Mozilla/5.0"
simula un beacon silenzioso. Per operazioni più stealth, si può usare la libreria requests in Python con header User-Agent clonati da browser reali e jitter randomizzato tra 60 e 900 secondi.
Su ESXi, dove la campagna ArcaneDoor ha dimostrato attività reale, si sfrutta la shell BusyBox per scheduler task via crontab che invocano wget verso CDN pubbliche. L'assenza di EDR nativi sull'hypervisor rende l'operazione particolarmente efficace in laboratorio.
Framework utili per il red team:
- Mythic (open source) — supporta agent custom con profili C2 su GitHub e Slack
- Merlin (open source) — implant Go con supporto HTTPS beaconing configurabile
- Sliver (open source) — framework C2 con profili di traffico personalizzabili
- Covenant (open source) — .NET C2 utile per emulare TTP APT su Windows
Per la parte di canale di ritorno (l'exfil, separato dal canale di comando come da definizione della tecnica) si può appoggiare l'output su un secondo servizio: un pastebin alternativo, un bucket S3 pubblico controllato, o una gist writable via token OAuth. La documentazione dell'operazione deve tracciare frequenza di beacon, dimensione media dei payload e handle usati, così da fornire al blue team un pacchetto di IoC utile per la fase di lessons learned.
Vuoi diventare un Ethical Hacker ma non sai da dove iniziare?
Accedi alle lezioni gratuite e segui il percorso corretto fin dal primo passo