Ricognizione dell'Infrastruttura Cloud: Cloud Infrastructure Discovery (T1580)

Quando un avversario ottiene un punto d'appoggio in un ambiente cloud IaaS, una delle prime attività consiste nel mappare tutto ciò che lo circonda: istanze di calcolo, snapshot, bucket di storage, database, volumi e policy di accesso. Questa tecnica, inquadrata nella tattica Discovery (TA0007), rappresenta il momento in cui l'attaccante costruisce la propria mappa operativa dell'ambiente compromesso, decidendo quali risorse hanno valore e quali percorsi laterali sono disponibili.

Il meccanismo è semplice nella sua essenza: i cloud provider espongono API e CLI progettate per la gestione legittima dell'infrastruttura — DescribeInstances, ListBuckets, az vm list, gcloud compute instances list — e un avversario con credenziali valide può invocarle esattamente come farebbe un amministratore. La differenza sta nell'intento e nel contesto: un'identità appena compromessa che enumera decine di servizi diversi in pochi minuti non è un pattern normale.

L'impatto operativo è significativo. La discovery non è distruttiva in sé, ma abilita ogni fase successiva: persistenza, movimento laterale, esfiltrazione. Con 2 gruppi APT documentati, 1 tool offensivo e 1 mitigazione focalizzata sulla gestione degli account, il perimetro di questa tecnica è contenuto ma in rapida espansione, parallelo alla crescita dell'adozione cloud nelle organizzazioni.


La simulazione di questa tecnica in laboratorio è un esercizio fondamentale per qualsiasi red team che operi su ambienti cloud. Il prerequisito è disporre di credenziali valide — tipicamente una coppia access key/secret key AWS, un service account GCP o un service principal Azure — ottenute in una fase precedente dell'engagement.

Su AWS, il punto di partenza è l'enumerazione delle istanze EC2. Con la CLI ufficiale, il comando è diretto:

aws ec2 describe-instances --region us-east-1 --output json

Questo restituisce l'intero inventario di istanze nella regione specificata, inclusi security group, subnet e ruoli IAM associati. Per ampliare la ricognizione allo storage, si passa ai bucket S3:

aws s3api list-buckets

Seguito da un controllo delle policy di accesso pubblico su ciascun bucket individuato:

aws s3api get-public-access-block --bucket

L'enumerazione dei database RDS completa il quadro:

aws rds describe-db-instances --output table

Su Azure, la CLI nativa offre comandi equivalenti. Per le macchine virtuali:

az vm list --output table

Per gli account di storage e i relativi container:

az storage account list --output table

Su GCP, il Cloud SDK espone comandi analoghi:

gcloud compute instances list

gcloud storage ls

Per un approccio più strutturato e automatizzato, Pacu (open source) è il framework di riferimento per il pentesting AWS. Dopo l'installazione via pip e la configurazione delle credenziali con il comando set_keys, il modulo di enumerazione EC2 si lancia così:

run ec2__enum

Pacu dispone di decine di moduli che enumerano progressivamente IAM, S3, Lambda, RDS e altri servizi, costruendo un inventario completo dell'ambiente target. L'equivalente multi-cloud è ScoutSuite (open source), che esegue audit automatizzati su AWS, Azure e GCP generando report HTML navigabili con evidenza di misconfiguration.

Un aspetto cruciale della simulazione: documentate ogni chiamata API effettuata, perché il blue team dovrà essere in grado di ricostruirle in CloudTrail o nei log equivalenti. Se la detection non scatta, avete trovato un gap da colmare.


Vuoi diventare un Ethical Hacker ma non sai da dove iniziare?

Scarica la guida gratuita e segui il percorso corretto fin dal primo passo