
AzureGoat : Un'infrastruttura Azure Dannatamente Vulnerabile

Compromettere l'infrastruttura cloud di un'organizzazione è come sedersi su una miniera d'oro per gli attaccanti. E a volte, una semplice errata configurazione o una vulnerabilità nelle applicazioni web è tutto ciò di cui un attaccante ha bisogno per compromettere l'intera infrastruttura. Poiché il cloud è relativamente nuovo, molti sviluppatori non sono pienamente consapevoli del panorama delle minacce e finiscono per distribuire un'infrastruttura cloud vulnerabile. Il cloud Microsoft Azure è diventato il secondo fornitore per quota di mercato tra i provider di infrastrutture cloud (secondo numerosi report), subito dopo AWS. Esistono numerosi strumenti e applicazioni vulnerabili per AWS per permettere ai professionisti della sicurezza di esercitarsi in attacco/difesa, ma non è lo stesso per Azure. Ci sono molte meno opzioni disponibili per la community.
AzureGoat è un'infrastruttura vulnerabile per progettazione su Azure che include i rischi di sicurezza delle applicazioni web OWASP Top 10 più recenti (2021) e altre configurazioni errate basate su servizi come App Functions, CosmosDB, Storage Accounts, Automation e Identità. AzureGoat simula un'infrastruttura reale ma con vulnerabilità aggiunte. Presenta molteplici percorsi di escalation ed è focalizzato su un approccio black-box.
AzureGoat utilizza IaC (Terraform) per distribuire l'infrastruttura cloud vulnerabile sull'account Azure dell'utente. Questo dà all'utente il controllo completo sul codice, l'infrastruttura e l'ambiente. Utilizzando AzureGoat, l'utente può imparare/esercitarsi in:
Il progetto è suddiviso in moduli e ogni modulo è un'applicazione web separata, basata su stack tecnologici diversi e pratiche di sviluppo differenti.
Presentato a
Il progetto è programmato per includere tutte le principali vulnerabilità, inclusi OWASP TOP 10 2021 e le comuni configurazioni errate del cloud. Attualmente, il progetto contiene le seguenti vulnerabilità/configurazioni errate.
Per semplificare il processo di distribuzione, l'utente deve solo clonare questo repository, accedere all'Azure CLI e quindi inizializzare e applicare il file Terraform. Questo workflow distribuirà l'intera infrastruttura e restituirà l'URL dell'applicazione hostata.
Ecco i passaggi da seguire:
Passo 1. Clona il repository
git clone https://github.com/ine-labs/AzureGoat
Passo 2. Accedi all'Azure CLI
az login
E segui i passaggi per accedere.
Passo 3. Crea un gruppo di risorse con il nome "azuregoat_app".
Passo 4. Usa Terraform per distribuire AzureGoat
terraform init
terraform apply --auto-approve
Il primo modulo presenta un'applicazione blog serverless che utilizza Azure App Functions, Storage Accounts, CosmosDB e Azure Automation. Consiste in varie vulnerabilità delle applicazioni web e facilita lo sfruttamento di risorse Azure configurate male.
Panoramica dei percorsi di escalation per il modulo 1

Nishant Sharma, Director, Lab Platform, INE [email protected]
Jeswin Mathai, Chief Architect, Lab Platform, INE [email protected]
Rachna Umaraniya, Cloud Developer, INE [email protected]
Sherin Stephen, Software Engineer (Cloud), INE [email protected]
Shantanu Kale, Cloud Developer, INE [email protected]
Sanjeev Mahunta, Software Engineer (Cloud), INE [email protected]
D Yashwanth Babu, Software Engineer (Cloud), INE [email protected]
I manuali offensivi sono disponibili nella directory attack-manuals, e i manuali difensivi sono disponibili nella directory defence-manuals.
Video di sfruttamento del Modulo 1: https://www.youtube.com/playlist?list=PLcIpBb4raSZGdYHKpqIu5Boc2ziga4oGY
Per maggiori dettagli, fai riferimento al file PDF "AzureGoat.pdf". Questo file contiene la presentazione utilizzata per le esposizioni.
Homepage dell'applicazione blog

Portale di login dell'applicazione blog

Pagina di registrazione dell'applicazione blog

Dashboard dopo il login dell'applicazione blog

Profilo utente dell'applicazione blog

modules/module-<Number>/src; può essere utilizzato per modificare il codice dell'applicazione esistente.Questo programma è software libero: puoi ridistribuirlo e/o modificarlo secondo i termini della GNU General Public License v2 pubblicata dalla Free Software Foundation.
Questo programma è distribuito nella speranza che possa essere utile, ma SENZA ALCUNA GARANZIA; senza nemmeno la garanzia implicita di COMMERCIABILITÀ o IDONEITÀ PER UN PARTICOLARE SCOPO. Vedi la GNU General Public License per maggiori dettagli.
Dovresti aver ricevuto una copia della GNU General Public License insieme a questo programma. In caso contrario, visita http://www.gnu.org/licenses/.