
Motore di correlazione degli eventi di sicurezza per stack ELK
Dsiem è un motore di correlazione degli eventi di sicurezza per lo stack ELK, che consente alla piattaforma di essere utilizzata come sistema SIEM dedicato e completo.
Dsiem fornisce correlazione in stile OSSIM per log/eventi normalizzati, esegue interrogazioni/ricerche verso fonti di intelligence sulle minacce e vulnerabilità, e produce allarmi calibrati sul rischio.

flowchart TB
l1 --> |Log/Eventi Normalizzati| e1
l1 --> |Allarmi|e1
l1 --> |Log/Eventi Normalizzati| d1
f1 --> |Log| l1
s1 --> |Log| f1
s2 --> |Log| f1
s3 --> |Log| f1
d1 --> |Allarmi| d2
d2 --> |Allarmi| l1
d1 --> |Query| d3
subgraph Elasticsearch
e1[Elasticsearch]
end
subgraph Logstash
l1[Logstash]
end
subgraph Filebeat
f1[Syslog/Filebeat]
end
subgraph Fonti di Log
s1[IDS]
s2[Firewall]
s3[SO]
end
subgraph Dsiem
d1[Dsiem]
d2[Dsiem-filebeat]
d3[Fonti di Intelligence sulle Minacce/Informazioni sulle Vulnerabilità]
end
Nel diagramma sopra:
Le fonti di log inviano i loro log a Syslog/Filebeat, che li invia a Logstash con un campo identificativo univoco. Logstash analizza quindi i log utilizzando filtri diversi in base al tipo di fonte del log, e invia i risultati a Elasticsearch, creando tipicamente un singolo pattern di indice per ogni tipo di log (es. suricata-* per i log ricevuti da Suricata IDS, ssh-* per i log SSH, ecc.).
Dsiem utilizza un file di configurazione Logstash speciale per clonare l'evento in arrivo dalla fonte di log, subito dopo che Logstash lo ha analizzato. Attraverso lo stesso file di configurazione, il nuovo evento clonato viene utilizzato (indipendentemente dall'evento originale) per raccogliere i campi richiesti da Dsiem come Titolo, IP Sorgente, IP Destinazione, e così via.
L'output del passaggio precedente è chiamato Evento Normalizzato perché rappresenta log provenienti da molteplici fonti diverse in un formato unico con un insieme di campi comuni. Questi eventi vengono poi inviati a Dsiem tramite il plugin HTTP output di Logstash, e a Elasticsearch con il nome del pattern di indice siem_events-*.
Dsiem correla gli eventi normalizzati in arrivo in base alle regole delle direttive configurate, esegue ricerche di intelligence sulle minacce e di vulnerabilità, e genera un allarme se le condizioni delle regole sono soddisfatte. L'allarme viene quindi scritto in un file di log locale, che viene raccolto da un Filebeat locale configurato per inviare il suo contenuto a Logstash.
All'estremità di Logstash, c'è un altro file di configurazione speciale di Dsiem che legge questi allarmi inviati e li inserisce nell'indice finale degli allarmi SIEM in Elasticsearch.
Il risultato finale dei processi sopra descritti è che ora possiamo monitorare nuovi allarmi e aggiornamenti a quelli esistenti semplicemente osservando un singolo indice Elasticsearch.
È possibile utilizzare Docker Compose o i binari rilasciati per installare Dsiem. Fare riferimento alla Guida all'installazione per i dettagli.
In alternativa, è disponibile anche un ambiente demo basato su Docker Compose o macchina virtuale, che consente di valutare tutte le integrazioni di Dsiem da un'unica semplice interfaccia web.
I documenti attualmente disponibili si trovano qui.
Si prega di inviare segnalazioni di bug e problemi aprendo una nuova issue su Github. Informazioni sensibili per la sicurezza, come i dettagli di un potenziale bug di sicurezza, possono anche essere inviate a [email protected]. La chiave pubblica GPG per quell'indirizzo può essere trovata qui.
I contributi sono molto benvenuti! Invia PR per correzioni di bug e test aggiuntivi, gist per file di configurazione Logstash per analizzare eventi di device, regole di direttive SIEM, o un nuovo plugin di intelligence sulle minacce/ricerca di vulnerabilità.
Se non sei sicuro su cosa fare per un argomento particolare, sentiti libero di aprire una issue e discutere prima.
Il progetto è concesso in licenza sotto GPLv3. I collaboratori non sono tenuti a firmare alcuna forma di CAA/CLA o simili: Consideriamo sufficiente la loro accettazione di questa clausola dei termini di servizio di Github.