Skip to content

Latest commit

 

History

History
 
 

Graylog

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 

GRAYLOG INTEGRATION

L'integrazione con Graylog è stata eseguita sfruttando le funzionalità pipeline e lookup tables integrate in graylog stesso. Per questioni di semplicità e rapidità di esecuzione si è scelto di effettuare il download localmente del file CSV esposto da minemeld (N.B. in installazione cluster di graylog tale file deve essere presente su tutti i nodi nella medesima directory) ed effettuare dei lookup puntuali in fase di ricezione del messaggio.
Di seguito viene riportato uno schema dell'architettura.

l'architettura della pipeline

Per il download del CSV è utilizzato uno script bask originariamente sviluppato da Giovanni Mellini LINK e leggermente riadattato LINK, lo script effettua il download del file CSV in una directory temporanea con il nome indicato nella variabile filename e poi lo sposta nella directory indicata nella variabile dir, entrambe le fariabili sono da customizzare in base al contesto di installazione. Una volta effettuato il download del file CSV occorre creare una funzione in una pipeline che crea un nuovo campo in caso di match tra l'indirizzo ip (sorgente o destinazione) e un'entry nel CSV appena scaricato. (N.B. in questo use case è stata applicata la pipeline ad uno stream contenente i messaggi provenienti da firewall)

l'architettura della pipeline

La pipeline deve essere connessa allo stream contenete i messaggi che si vogliono arricchire (ad esempio firewall)

l'architettura della pipeline

Il lookup avviene tramite l'apposita funzione nella pipeline, è necessario definire prima la tabella di lookup e il relativo data adapter. Di seguito vengono mostrati entrambi:

l'architettura della pipeline

l'architettura della pipeline

A questo punto basta creare le regole da inserire nella pipeline, QUI è riportato un esempio. Il dettaglio della pipeine mostra come vengono applicate le rules (rispettivamente per IP sorgete e destinazione) all'interno della pipeline. N.B. I campi $message.dstip e $message.srcip presenti nelle rules vanno adattati allo scenario operativo, è pertanto importante verificare prima il nome dei field contenenti ip sorgente e destinazione.