
Modelli Elastic Common Schema di Corelight o Zeek
Questo repository contiene tutto il necessario per convertire i log Corelight o Zeek nello standard di denominazione Elastic Common Schema (ECS) e archiviarli in un deployment Elastic Stack. Rilasciato originariamente nel 2019, lo stesso anno dell'Elastic Common Schema, questo repository è ancora attivamente mantenuto e aggiornato.
Supporta oltre 200 log e metriche diversi ed è progettato per supportare tutti gli ambienti, consentendo al contempo di personalizzare le opzioni necessarie e desiderate per supportare ogni ambiente specifico.
È stato investito uno sforzo significativo per garantire il supporto in tutti gli ambienti, consentendo allo stesso tempo la personalizzazione delle opzioni necessarie e desiderate per adattarsi a ogni deployment unico e rispettivo.
Il repository è principalmente composto da due cose:
I file e lo script di automazione sono open-source sotto licenza BSD. Vedere COPYING per i dettagli.
Leggere tutte le sezioni prima di eseguire lo script.
corelight_ecs.py da questo repository. L'installazione manuale dei modelli e delle pipeline non è supportata perché ci sono centinaia di variabili in tutti i file che vengono sostituite dallo script.La personalizzazione di impostazioni degli indici, mappature, alias e policy ILM è incoraggiata. Pertanto, lo script è progettato per supportare molti tipi di personalizzazioni (dettagliate di seguito).
Molte personalizzazioni non saranno necessarie, ma è meglio avere l'opzione piuttosto che non averla. Si consiglia sempre di utilizzare il proprio numero di shard/repliche e la propria policy ILM, ma oltre a questo non dovresti aver bisogno di personalizzare molto altro. Tuttavia, se normalmente personalizzi molte cose nei modelli di indice, nelle pipeline di ingest e nelle pipeline Logstash in tutti i tuoi deployment, avrai comunque questa possibilità.
Consulta ogni sezione di seguito per maggiori dettagli.
Lo script ti chiederà se desideri scegliere nomi/pattern personalizzati per i tuoi data stream. Questo ti permette di scegliere la tua convenzione di denominazione degli indici. Ad esempio potresti scegliere:
logs-corelight.conn-defaultecs-corelight.conn-defaultcall_it_what_you_will.conn-defaultlogs-corelight.conn-remotesite1Successivamente aggiornerà anche tutti i modelli di indice necessari se hai scelto pipeline di ingest o pipeline Logstash.
Non è consigliato modificare i valori predefiniti, poiché i log Corelight sono ora configurati per funzionare con tutti gli altri tipi di dati ECS e per poter essere utilizzati da una vista dati Kibana come logs-*
Per ambienti multi-tenant come MSSP/CSSP o reti diverse, puoi non solo scegliere la parte relativa all'organizzazione del data stream nei prompt dello script (che è la parte default nei 3 esempi precedenti), ma se imposti data_stream.namespace in filebeat o con qualche altro metodo o hook nelle pipeline, allora le pipeline sono configurate per rispettare se quella variabile è già impostata e per non sovrascriverla. Assicurati solo che il tuo namespace sia impostato su un valore che Elasticsearch consente per un nome di indice (errore comune che a volte non è ovvio).
Puoi vedere i pattern degli indici utilizzati nel Google Sheet e il valore predefinito per ciascun log. Inoltre, elenca alcune informazioni aggiuntive come event.category, event.kind, ecc. per ogni log.
Ogni modello di indice è configurato per chiamare un component template che puoi utilizzare per sovrascrivere le impostazioni dell'indice. Pertanto non è necessario modificare i modelli di indice del repository per utilizzare le proprie impostazioni dell'indice.
Crea i seguenti component template o modificali dopo l'installazione. I nomi dei component template che puoi modificare sono:
per coprire tutti i log (divisi in 5 categorie):
corelight-ecs-component-metric_log-base-settings@customcorelight-ecs-component-parse_failures-base-settings@customcorelight-ecs-component-protocol_log-base-settings@customcorelight-ecs-component-system_log-base-settings@customcorelight-ecs-component-unknown_log-base-settings@customper coprire i singoli log oltre a quelli sopra, che comunemente necessitano di impostazioni ancora più specifiche:
corelight-ecs-component-protocol_log-conn-base-settings@customcorelight-ecs-component-protocol_log-dns-base-settings@customcorelight-ecs-component-protocol_log-files-base-settings@customcorelight-ecs-component-protocol_log-http-base-settings@customcorelight-ecs-component-protocol_log-smb-base-settings@customcorelight-ecs-component-protocol_log-smtp-base-settings@customcorelight-ecs-component-protocol_log-ssl-base-settings@customcorelight-ecs-component-protocol_log-suricata_corelight-base-settings@customcorelight-ecs-component-protocol_log-syslog-base-settings@customcorelight-ecs-component-protocol_log-various-base-settings@customcorelight-ecs-component-protocol_log-weird-base-settings@customcorelight-ecs-component-protocol_log-x509-base-settings@custom