Modular Python3 attack framework for automating exploitation of SIEM platforms (Splunk, Graylog, OSSIM, QRadar, McAfee) via credential theft, payload deployment, and post-exploitation modules. Traduzione: Framework d'attacco modulare in Python3 per automatizzare lo sfruttamento di piattaforme SIEM (Splunk, Graylog, OSSIM, QRadar, McAfee) tramite furto di credenziali, distribuzione di payload e moduli di post-exploitation.
MultiSIEM Modular Python3 Attack Framework
Di ElevenPaths https://www.elevenpaths.com/
Utilizzo: python3 ./siemsframework.py
I SIEM sono strumenti difensivi sempre più utilizzati nel campo della cybersecurity, specialmente da grandi aziende e da società che intendono monitorare sistemi e reti altamente critici. Tuttavia, dal punto di vista di un attaccante, le autorizzazioni concesse ai SIEM su sistemi e account delle reti aziendali sono elevate. Inoltre, l'accesso amministrativo ai SIEM può essere utilizzato per ottenere l'esecuzione di codice sul server in cui tale SIEM è installato, e talvolta anche sui client, considerando che un SIEM raccoglie eventi come server Active Directory, server AWS, database e dispositivi di rete (ad esempio firewall e router).
Durante la nostra indagine, abbiamo rilevato una grande quantità di vettori d'attacco che potrebbero essere utilizzati contro vari SIEM per comprometterli, ad esempio:
• Ottenere account utente e password memorizzate nel SIEM da sistemi critici (server LDAP/AD, database, dispositivi di rete, server AWS).
• Sviluppare e installare applicazioni malevole come reverse shell Windows/Linux, bind shell Windows/Linux o script malevoli con l'obiettivo di compromettere il server in cui è installato il SIEM.
• Sviluppare e installare applicazioni malevole come reverse shell Windows/Linux, bind shell Windows/Linux o script malevoli con l'obiettivo di compromettere le macchine da cui il SIEM raccoglie eventi.
• Creare e applicare azioni o notifiche malevole che consentono di eseguire comandi al verificarsi di un determinato evento, ad esempio con lo scopo di ottenere una reverse shell sul server in cui è installato il SIEM.
• Sfruttare password predefinite e debolezze del SIEM nella configurazione delle immagini OVA per ottenere credenziali di amministratore del server, del database o persino dell'interfaccia web del SIEM stesso.
• Eseguire attacchi di dizionario o attacchi brute-force contro l'interfaccia web o amministrativa, o contro il software client del SIEM, per ottenere credenziali di amministratore.
• Leggere file arbitrari dal server in cui è installato il SIEM.
• Ottenere informazioni sulla configurazione del SIEM e altri parametri rilevanti per eseguire ulteriori attacchi.
Sulla base dei risultati dell'indagine, è stato sviluppato lo strumento Open Source SIEMs Framework. Si tratta di uno strumento modulare sviluppato in Python3 dal team Innovation and Laboratory di ElevenPaths. Permette di automatizzare potenziali attacchi a vari SIEM presenti sul mercato (sia commerciali che open source).
SIEMs Framework supporta molteplici payload di attacco che possono essere selezionati in base al SIEM da attaccare e al suo sistema operativo. Sono disponibili payload in formato PowerShell, Python, Bash, Exe e altri. Una volta eseguito l'attacco selezionato, lo strumento mostra i risultati a schermo ed è possibile tornare indietro ed eseguire qualsiasi altro attacco sullo stesso SIEM o selezionare un altro SIEM da compromettere. Ha un'interfaccia semplice, facile da usare e intuitiva. Attualmente può essere utilizzato con i seguenti SIEM: Splunk, Graylog, OSSIM, QRadar, McAfee e SIEMonster.
SIEMs Framework può essere scaricato dal nostro Github scaricando il file .zip o clonando il repository, e presenta i seguenti requisiti che possono essere installati tramite pip3 install -r requirements.txt:
• splunk-sdk
• requests
• python-nmap
• colorama
• pandas
• paramiko
• pymongo
• qradar4py
• requests_mock
• urllib3
Una volta installati i requisiti, lo strumento può essere utilizzato come segue: python3 ./siemsframework.py
Quando lo strumento viene eseguito, viene visualizzato il menu principale, in cui è necessario selezionare se si desidera scansionare un IP specifico dove potrebbe essere presente un SIEM o una rete per rilevare i SIEM al suo interno. Per scansionare e rilevare il SIEM all'interno di un indirizzo IP specifico, utilizzare l'opzione 1; per scansionare la rete, utilizzare l'opzione 2.
Selezionando l'opzione 1 "Scan and Detect SIEM", lo strumento richiede l'indirizzo IP per poter scansionare le porte specifiche dei SIEM supportati e connettersi all'interfaccia web o di gestione per verificare che si tratti effettivamente di un SIEM.
Una volta rilevato il SIEM tramite i metodi sopra descritti, lo strumento mostra il SIEM rilevato in rosso e offre la possibilità di avviare il modulo d'attacco di quel SIEM.
Selezionando l'opzione 2 "Find SIEMs on the network", lo strumento richiede la rete da scansionare in notazione CIDR, ad esempio: 192.168.137.0/24. Una volta inserite le informazioni, SIEMs Framework esegue prima una discovery per rilevare i sistemi attivi; poi scansiona le porte predefinite dei SIEM supportati e infine si connette all'interfaccia web o di gestione di ciascuno di questi sistemi per verificare che si tratti effettivamente di un SIEM.
Una volta rilevati i SIEM tramite i metodi sopra descritti, lo strumento mostra i SIEM rilevati in rosso e richiede l'indirizzo IP del SIEM da attaccare.
Inserendo "y" e selezionando l'avvio dei moduli d'attacco Splunk, lo strumento mostra tutti i possibili attacchi da eseguire contro questo SIEM. Per i primi due attacchi non sono necessarie credenziali, ma per il quinto sono necessari privilegi di amministratore Splunk.