Serverless Compromesso: Serverless (T1584.007)
La tecnica T1584.007 - Serverless appartiene alla tattica TA0042 (Resource Development) e descrive l'appropriazione da parte dell'attaccante di infrastruttura cloud serverless già esistente — funzioni AWS Lambda, Cloudflare Workers, Google Apps Script — per costruire il proprio impianto operativo senza doverlo acquistare o registrare a proprio nome.
Il serverless è un modello in cui il codice viene eseguito su runtime effimeri gestiti dal provider, senza server persistenti sotto il controllo diretto dell'utente. Compromettendo account cloud legittimi o abusando di configurazioni deboli, l'avversario ottiene endpoint che rispondono da sottodomini dei grandi provider, rendendo il traffico difficile da distinguere da quello lecito.
Questa scelta serve due scopi. Da un lato complica l'attribuzione, perché l'infrastruttura non è collegabile a domini o VPS riconducibili all'attore. Dall'altro consente di occultare l'infrastruttura (Hide Infrastructure), poiché le comunicazioni verso i domini del cloud provider sono spesso già presenti nel traffico aziendale ordinario.
Una volta ottenuto il controllo, la funzione serverless può rispondere direttamente alle macchine infette o agire da proxy verso un server di comando e controllo di proprietà dell'avversario. Sul piano dell'impatto, i dati MITRE associano a questa tecnica 1 mitigazione e nessun gruppo, software o campagna documentati, a conferma di una superficie ancora in maturazione ma strategicamente rilevante per le fasi successive del ciclo d'attacco.
Trattandosi di una tecnica di Resource Development pre-compromissione, l'obiettivo in un esercizio red team non è "bucare" un provider ma simulare in laboratorio un canale C2 che sfrutti infrastruttura serverless, in modo lab-safe e su account di proprietà del team.
Uno scenario tipico prevede il deploy di una funzione che faccia da relay verso un listener controllato. Con AWS SAM CLI (open source) si può inizializzare e distribuire una Lambda minimale tramite sam init e sam deploy --guided, esponendola dietro un API Gateway. Su Cloudflare l'equivalente è Wrangler (open source), la CLI ufficiale dei Workers, con cui si crea e pubblica un Worker via wrangler init e wrangler deploy. Per Google, clasp (open source) permette di gestire Apps Script da riga di comando con clasp create e clasp push.
La logica del redirector è banale: la funzione riceve una richiesta HTTPS, la inoltra all'endpoint del team operator e restituisce la risposta. Questo pattern di domain/serverless fronting fa apparire il traffico come diretto a un sottodominio del provider.
Sul lato framework C2, molti team usano Cobalt Strike (a pagamento) con i suoi Malleable C2 profile per modellare i beacon, oppure alternative open source come Sliver (open source), Mythic (open source) e Havoc (open source), tutte in grado di lavorare dietro redirector HTTP/S. La catena tipica in lab è: implant sull'endpoint → funzione serverless come proxy → team server.
Una sequenza operativa realistica per la simulazione:
- Registrare un account cloud dedicato all'esercizio, mai riutilizzare produzione.
- Distribuire la funzione proxy con la CLI del provider (SAM, Wrangler o clasp).
- Configurare il listener del framework C2 dietro l'endpoint serverless.
- Generare un implant che punti al sottodominio del provider.
- Documentare gli IOC prodotti per il successivo hand-off al blue team.
Su Windows l'implant può essere testato con un semplice Invoke-WebRequest PowerShell verso l'endpoint per validare il canale; su Linux/macOS l'equivalente è curl -s
Vuoi diventare un Ethical Hacker ma non sai da dove iniziare?
Accedi alle lezioni gratuite e segui il percorso corretto fin dal primo passo