Enumerazione Account Cloud: Cloud Account (T1087.004)

La tecnica T1087.004 - Cloud Account rientra nella tattica TA0007 (Discovery) del framework MITRE ATT&CK e descrive l'attività con cui un attaccante, dopo aver ottenuto credenziali valide o token di accesso, enumera gli account presenti in un tenant cloud o in un'applicazione SaaS. L'obiettivo è mappare identità umane, service principal, ruoli IAM e gruppi privilegiati per pianificare movimento laterale, escalation e persistenza.

Si tratta di una fase post-compromise che segue tipicamente l'Initial Access via phishing, token theft o SIM swapping, e precede Privilege Escalation o Lateral Movement nella kill chain. Gli ambienti bersaglio più frequenti sono Microsoft Entra ID (Azure AD), AWS IAM, Google Cloud IAM e suite SaaS come Microsoft 365, Okta e Google Workspace.

I numeri MITRE associati a questa tecnica includono 2 gruppi APT tracciati (APT29 e Storm-0501), 3 tool offensivi documentati (AADInternals, ROADTools, Pacu) e 1 campagna finanziariamente motivata (C0027 di Scattered Spider). L'impatto principale non è distruttivo ma abilitante: la conoscenza precisa della topologia delle identità consente di selezionare bersagli ad alto valore come Global Administrator o account con permessi AssignableToRole, riducendo drasticamente il rumore generato dall'attaccante nelle fasi successive.

Nel contesto di un red team autorizzato, l'enumerazione degli account cloud parte sempre da un set di credenziali o token già acquisito. In ambiente Microsoft Entra ID, il primo passo è tipicamente l'uso di AzureAD PowerShell o Microsoft Graph PowerShell (open source, moduli Microsoft ufficiali). Il cmdlet legacy Get-MsolRoleMember elenca i membri di un ruolo, mentre con Graph si usa Get-MgDirectoryRole seguito da Get-MgDirectoryRoleMember. Con Azure CLI (open source) il comando az ad user list restituisce l'intera anagrafica utenti, e az ad group list mappa i gruppi.

Per un'enumerazione più stealth e strutturata, i tool di riferimento sono:

  • ROADTools (open source) di Dirk-jan Mollema: roadrecon auth per autenticarsi, roadrecon gather per estrarre l'intero grafo del tenant in un database SQLite, e roadrecon gui per navigare relazioni utente-ruolo-applicazione.
  • AADInternals (open source): modulo PowerShell che espone funzioni come Get-AADIntUsers e Get-AADIntGlobalAdmins, utile anche in fase di reconnaissance non autenticata.
  • AzureHound (open source), il collector di BloodHound per Azure, usato dal gruppo Storm-0501: raccoglie utenti, gruppi, ruoli e applicazioni e li carica in Neo4j per identificare percorsi di attacco verso Global Admin.

In ambiente AWS, l'enumerazione si effettua con AWS CLI (open source): aws iam list-users, aws iam list-roles, aws iam list-groups e aws iam get-account-authorization-details per un dump completo delle policy. Il framework offensivo di riferimento è Pacu (open source) di Rhino Security Labs, che con il modulo iam__enum_users_roles_policies_groups automatizza l'intero processo e con iam__privesc_scan individua percorsi di privilege escalation.

Su Google Cloud, i comandi chiave sono gcloud iam service-accounts list e gcloud projects get-iam-policy --format=json, che restituiscono i binding ruolo-identità. Per Workspace, gcloud identity groups memberships list enumera i gruppi.

Buona norma operativa: usare token OAuth con scope minimo, ruotare gli user-agent, distribuire le chiamate nel tempo per evitare pattern burst, e preferire l'API Graph a chiamate multiple del portale web che generano più eventi. In laboratorio, ambienti come Azure Tenant Attack Simulator o CloudGoat (open source) di Rhino Security Labs permettono di testare queste catene in modo sicuro.

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

Accedi alle lezioni gratuite e segui il percorso corretto fin dal primo passo

TEST GRATUITO
2 minuti · 7 domande Che professionista cyber sei? Scopri il profilo più vicino al tuo modo di pensare e inizia dal percorso giusto.